在 "Talk with Arduino using C# and Firmata" 一文中,我們提到如何利用 Firmata.NET 跟 Arduino 建立通訊。當時PC 是通過 COM 連接埠跟 Arduino通訊 (也就是用 USB cable 連接 Arduino 與 PC),這次我們將改用藍芽讓 C# 程式與 Arduino 建立通訊。底下以 HC-0x 藍芽模組為例說明:
1) 確定藍芽模組 baud rate 為 57600 bps。藍芽模組 baud rate 設定方法請參考 "Bluetooth module configuration", "Config bluetooth baud rate w/ Arduino" 或 "Arduino as an USB to TTL adapter"
2) 上傳 StandardFirmata 到 Arduino:打開 Arduino IDE,點選 File > Examples > Firmata > StandardFirmata,把程式上傳到 Arduino 板子上,切記在上傳程式的時候不要接藍芽模組,不然可能會影響上傳程序。
連接 Arduino 與藍芽模組
把 Arduino 5V 接到藍芽模組的 VCC,而 GND 接到 GND:
有兩點要注意:第一是電源千萬不可接錯,不然可能會把藍芽模組燒壞,第二是 Arduino 的 RXD 要接藍芽模組的 TXD,而 Arduino 的 TXD 要接藍芽模組的 RXD。可參考下表:
Arduino | 藍芽模組 | 備註 |
5V | VCC | 注意電源不可接錯 |
GND | GND | 注意電源不可接錯 |
RXD | TXD | |
TXD | RXD |
通電之後,藍芽模組上的 LED 會一直閃爍:
執行 C# Example
參考 "Loop back test" 一文建立電腦跟藍芽模組之間的配對,並且記住配對完成之後的藍芽連接埠號碼,本例用的是 COM21。
下載 C# 範例程式,打開 Blink 範例。選好 Serial Port (本例為 COM21),按下 Open 鈕:
順利的話,Arduino 板子上的 LED 燈就會不斷地閃爍,亮一秒,滅一秒,如此循環不已:
▲ pin 13 上的 LED (L)
如果你有興趣,可以進一步參考 "Talk with Arduino using C# and Firmata" 一文,然後試一試 AnalogRead 和 Fade 這兩個範例。
0 意見:
張貼留言