本文要告訴您如何讀取 mbed 開發板 (本範例使用 Delta NQ620) 的數位腳位狀態,並藉此控制 LED 亮滅。
| 作者/攝影 | 曾吉弘 |
| 時間 | 3~4小時 |
| 成本 |
|
| 難度 | * * * * * |
| 材料表 |
|
本文將介紹如何讀取 mbed 的數位腳位狀態,您可使用 Grove starter kit 中的按鈕模組,直接將按鈕模組接上Base shield 擴充板,再疊上 NQ620 開發板即可。
當然這一包套件包價格不便宜,如果不用套件包,您可以用常見的按鈕元件搭配 10k ohm 電阻(解決按鈕的彈跳問題),下圖以 Arduino 開發板來示意:
實際用到的元件,把按鈕模組接到 Base shield 的 UART 接頭就好
▼ Seeed Studio base shield ▼
NQ620的腳位示意:
程式碼相當簡單,使用 DigitalIn 把按鈕所連接的腳位設定為輸入之後。在主程式中,每 0.2 秒檢查一次按鈕是否被按下 (button.read() ) ,並以此控制 LED 亮滅。在此 0.2 秒是一個頻率參數,時間太短可能LED會亂閃,太長則可能操作起來鈍鈍的。您可以調整一下來找到適合的參數
[pastacode lang=”java” manual=”%23include%20%22mbed.h%22%20%20%2F%2F%E5%8C%AF%E5%85%A5%E6%89%80%E9%9C%80%E5%87%BD%E5%BC%8F%E5%BA%AB%0A%20%0ADigitalOut%20led(LED4)%3B%20%20%20%20%2F%2F%20%E5%AE%A3%E5%91%8ALED4%E4%B9%8B%E6%95%B8%E4%BD%8D%E8%85%B3%E4%BD%8D%E7%82%BA%E8%BC%B8%E5%87%BA%0ADigitalIn%20button(P13)%3B%20%2F%2F%20%E5%AE%A3%E5%91%8AP13%E4%B9%8B%E6%95%B8%E4%BD%8D%E8%85%B3%E4%BD%8D%E7%82%BA%E8%BC%B8%E5%85%A5%0A%20%0Aint%20main()%0A%7B%0A%20%20%20%20while(1)%20%7B%0A%20%20%20%20%20%20%20%20led.write(button.read())%3B%20%20%20%20%2F*%20read%20the%20state%20of%20input%20%20pin%20P1_14%20and%20write%20it%20to%20output%20port%20pin%20LED1*%2F%0A%20%20%20%20%20%20%20%20wait(0.2)%3B%20%20%20%20%2F%2F%E7%AD%89%E5%80%99%E4%B8%80%E6%AE%B5%E6%99%82%E9%96%93%E9%81%BF%E5%85%8D%E8%AE%80%E5%8F%96%E9%81%8E%E5%BF%AB%0A%20%20%20%20%7D%0A%7D” message=”” highlight=”” provider=”manual”/]
相關文章:











