IO Expander - 使用I/O Expander模組擴展I/O
材料準備
- Ameba x 1
- SparkFun SX1509 I/O Expander x 1
- LED x 1
範例說明
本範例使用SX1509 I/O Expander模組來擴展I/O,能將之擴展至16組I/O ports, 我們需要以下library:
https://github.com/sparkfun/SparkFun_SX1509_Arduino_Library/archive/master.zip
https://github.com/sparkfun/SparkFun_SX1509_Arduino_Library/archive/master.zip
安裝library的方式請參考Arduino官方網站的教學文章將zip檔的library加入Ameba:
https://www.arduino.cc/en/Guide/Libraries#toc4
接著打開範例 “File” -> “Examples” -> “SX1509 IO Expander” -> “breathe”
RTL8195接線如下圖:
RTL8710接線如下圖:
程式碼說明
此範例讓LED的燈光明暗效果,仿效人類的呼吸行為。
首先設定SX1509的pin 15為本範例LED的output port, 因此LED的正極請接SX1509的pin 15
const byte SX1509_LED_PIN = 15;
使用內部的2MHz 振盪器,並且設定LED clock為500kHz (2MHz / (2^(3-1))
io.clock(INTERNAL_CLOCK_2MHZ, 3);
讓LED變成呼吸的燈(全暗、全亮、漸亮、漸暗)不斷循環,參數設定:
全暗持續時間:1000ms
全亮持續時間:500ms
漸亮持續時間:500ms
漸暗持續時間:250ms
io.breathe(SX1509_LED_PIN, 1000, 500, 500, 250);
Realtek IoT/Wi-Fi MCU Solutions . All Rights Reserved. 使用條款