Step 1 : upload demo code to Arduino board
Arduino demo code
=================
int counter =0;
void setup() {
Serial.begin(9600);
delay(50);
}
void loop() {
counter++;
Serial.print("Arduino counter: ");
Serial.println(counter);
delay(500); // wait half a sec
}
================
* 注意 上傳程式時 , Buletooth 模組先不接 , 否則 Tx Rx pin 可能會衝突
Step 2 : 上傳完成 ,再將藍牙模組接上 ; 重新接上 Arduino board usb cable , 讓arduino 與藍牙模組重新啟動 , 此時藍牙模組燈號會快閃
Step3 : 在 ubuntu 中利用藍牙管理工具 , 將Arduino 藍牙模組完成配對 , 並記下 mac address , 此時藍牙只完成配對 , 尚無法連結 , 此時藍牙模組燈號會慢閃 .
* 注意: 若在windows環境下, 此時不可開啟 Arduino IDE , 否則會導致 RX TX 衝突 , 藍牙失去效用 . 若失效則 Arduino usb cable 需 replus 來重啟 . Linux 下好像無此問題.
Step4 : 在 ubnutu 上建立藍牙連結並綁到 rfcomm0 device name , 指令如下
jm@hardy:~$ sudo hcitool scan // 掃瞄藍牙裝置硬體編號 , 也可由上步驟查詢
Scanning ...
00:02:C7:7D:F5:17 BlueGPS 7DF517
jm@hardy:~$ sudo rfcomm bind /dev/rfcomm0 00:02:C7:7D:F5:17 1 // bind device port
jm@hardy:~$ ls -l /dev/rfcomm0
crw-rw---- 1 root dialout 216, 0 2008-12-14 23:15 /dev/rfcomm0
完成連線後 , 此時藍牙模組燈號會恆亮 .
Step5 : 開啟 puttyssh client 或 MiniCom , connection type : serial , serial line /dev/rfcomm0 , 確認連線 .
Step6 : 終端機視窗會開始顯示 Arduino程式 透過藍牙連接 , 所傳送過來的 counter 訊息 .
=============================================================
補充也可以由步驟四開始 , 改為:
Step4 : 直接將藍牙裝置綁定在 /dev/rfcomm0 device name , 並完成連線 . 藍牙模組燈號會顯示恆亮 .
jm@hardy:~$ sudo
rfcomm connect /dev/rfcomm0 00:13:03:20:04:20
Connected /dev/rfcomm0 to 00:13:03:20:04:20 on channel 1
Press CTRL-C for hangup
Step5 : 執行 Arduino IDE , tools -> Serial Port 選擇 rfcomm0 .
Step6 : 開啟 Serial Monitor
Step7 : Serial Monitor 開始顯示 Arduino 程式所傳送出來的 counter 訊息
*Windows下 Arduino IDE Serial monior 選藍牙的 com port 會有問題 , Linux 則不會 .
補充 , 也可上載下面程式 ======================================================
int iLedPin = 13;
void setup(){
// define the PIN as OUTPUT
pinMode(iLedPin ,OUTPUT);
// using baud rate 9600 to listen.
Serial.begin(9600);
}
void loop(){
while (Serial.available()){
char cCmd = Serial.read();
if (cCmd =='o'){
digitalWrite(iLedPin,HIGH);
}else if (cCmd == 'c'){
digitalWrite(iLedPin,LOW);
}
}
}
================================
再用putty ssh client 連線到藍牙 serial port
輸入 'o' 可開啟 led13 , 輸入 'c' 則關閉.