Blueterm 是一個 terminal App,可以用來顯示通過 bluetooth serial port 連線傳送的資料。這篇教學將教你如何使用 Blueterm 讓 Arduino 與 Android 建立藍芽通訊。
所需材料
- Android 裝置 x 1
- Arduino x 1
- bluetooth module x 1
Step 1: 安裝 Blueterm
到 Google Play 下載並安裝 Blueterm 到 Android 裝置上。
Step 2: 安裝 Arduino IDE 並上傳測試程式
如果你電腦上還沒有 Arduino IDE,請先到 http://arduino.cc/en/Main/Software 下載軟體,下載後解壓縮即可。
接著將底下的 Arduino Sketch 上傳到 Arduino 板子上:
這支程式所用的 baud rate 預設是 57600 bps,如果你的藍芽模組不是 57600 bps,記得先做適當的調整:
Step 3: 連接藍芽模組
我用的是廣州匯承信息科技的 HC-0x 系列藍芽模組,下圖是 HC-0x 藍芽模組的外觀:
這個藍芽模組連接方法很簡單,只要照下表把 Arduino 和藍芽模組連接起來就好:
Arduino | 藍芽模組 | 備註 |
5V | VCC | 注意電源不可接錯 |
GND | GND | 注意電源不可接錯 |
RXD | TXD | |
TXD | RXD |
連接的時候有兩點要注意:第一是電源千萬不可接錯,不然藍芽模組可能會壞掉,第二是 Arduino 的 RXD 要接藍芽模組的 TXD,而 Arduino 的 TXD 要接藍芽模組的 RXD。
通電之後,藍芽模組上的 LED 會一直閃爍:
Step 4: 測試連線
打開 Android 上的 Blueterm App,然後跟著後面的步驟做:
按 Menu 鍵打開選單(如下圖左),為了方便,你可能會想要打開 Local echo,請按 Prefeneces,然後啟用 Local echo(如下圖右),你也可以把 Font size 調大一些,這樣眼睛會比較舒服:
回到選單,選擇 Connect device,如下圖左所示,點擊 Scan for devices 掃瞄藍芽裝置,然後選擇 Arduino 的藍芽裝置(如下圖右):
如下圖所示,如果是第一次跟藍芽裝置連線,Android 會出現「藍牙配對要求」的畫面,此時必須輸入配對密碼(一般為 0000 或 1234)才能與此藍芽裝置連線:
建立連線後 (此時藍芽裝置上的 LED 會停止閃爍),接著你就可以在 terminal 上輸入資料測試通訊:
如果一切順利,當你在 terminal 輸入 1 時,Arduino 板子上的 LED 就會打開,而且 Android 會收到 "Arduino Led On" 的訊息,當你輸入 0 時,Arduino 板子上的 LED 就會關掉,而且 Android 會收到 "Arduino Led Off" 的訊息。
▲ Arduino 板子上的 LED
我要如何設定說!!!
回覆刪除手機輸入abc 讓led點亮
hi chen,
回覆刪除這篇的方法是輸入 1 打開 LED,輸入 0 就關掉 LED,請問你有否照著試過,可以成功嗎?
今天照著上面的方法實作了一下,我發現我的arduino uno的TX會閃爍,輸入1或是0手機沒有辦法接收到arduino led on 或是arduino led off的訊息..請問我的問題是出在哪裡呢~"~
回覆刪除Arduino UNO 的 TX 會閃爍,代表 Arduino 有在對外傳送資料,有可能是在傳送 " Arduino Led On" 或 " Arduino Led Off" 的訊息。手機端沒有看到資料,很可能是 "Arduino Serial Port" 跟 "藍芽模組" 它們兩個的 baud rate 沒有匹配好的關係。建議你確認一下藍芽的 baud rate 是 57600。如果你用的也是 HC-0x 的藍芽模組,可以參考這篇來設定 baud rate:
回覆刪除http://coopermaa2nd.blogspot.tw/2012/07/config-bluetooth-baud-rate-w-arduino.html
http://coopermaa2nd.blogspot.tw/2012/07/arduino-as-usb-to-ttl-adapter.html
不好意思,我照您的方式更改了藍芽的鮑率,一樣是是在程式上面輸入1、0 TX會閃爍(表示又送出資料),但是手機端依然沒有接收
回覆刪除我另外執行了之前最入門的實驗
http://coopermaa2nd.blogspot.tw/2012/06/amarino-android-arduino.html
執行程式後發現我的Arduino onboard LED 也沒有隔三秒閃爍一次....請問這樣的問題是出在手機上面嗎?!還是Arduino 需要另外的設定而我忽略掉了呢...
你有其它 Android 裝置嗎? 建議換一台 Android 裝置交叉測試一下
回覆刪除