學習目標
- 同步讀取 read_button()
- 區分 0、1 與 None
- 持續印出按鈕狀態
輸入感測CHAPTERS
在 MangoThonny Shell 中持續看到 Pressed/Released;沒有有效讀值時顯示 No button value available。
保留程式與觀察紀錄,說明你修改了哪個部分,以及結果如何改變。
PROJECT PREVIEW

TRY IT
from mangobox import Mango
import time
m = Mango(mode="hardware")
try:
for sample in range(30):
value = m.read_button()
if value is None:
print("No button value available")
elif value == 1:
print("Pressed")
else:
print("Released")
time.sleep(0.2)
finally:
m.close()
在 MangoThonny Shell 中持續看到 Pressed/Released;沒有有效讀值時顯示 No button value available。
下載本課 Python 範例 →執行前請核對所需設備與頁面下方的執行環境。程式只在桌面工具執行,這個網頁不執行 Python 或連接硬體。
ENVIRONMENT & VERSIONS
本課以 MangoX2 教學套件為基準。MangoLite 需另核對模組、Enable 與 LED 數量,本課尚未宣稱直接相容。
先用 Device Manager 確認模組啟用、GPIO 與連線;MangoX2 的 OLED、RGB 和按鈕屬套件模組,不能只看裸板名稱判定已備妥。Host UART 與原生 Pico USB 的用途不同。
已核對官方文件與 Host 原始碼;本課尚未完成實機驗證
Host read_button() 送出讀取命令並等待回覆,逾時可能回傳已知值或 None;None 不應當成放開。同步讀值不需 start_button 或 run_forever。
對照來源:Host Button reference read_button();student_api_parity.py
官方來源:MangoBox-Platform 公開 API 契約(2026-09-06)與 MangoThonny Host 原始碼 983cc296。本站範例為課程改寫,非逐字複製老師教材。
m.read_button()讀取按鈕目前狀態m.close()停止 Runtime 或背景資源並關閉 Mango 物件