Arduino + HC-05 簡單紀錄
幾個重點:
1.進入AT-command mode:
(1) hc-05上的KEY腳位(或是EN腳位)先接高電位
Vcc在接高電位即可進入AT command mode
(2) 一般模式:hc-05上的LED快速閃爍
AT command mode: hc-05上的LED緩慢閃爍,約兩秒暗一次
(3) 用softwareSerial跟hc-05的rx、tx溝通的時候,softwareSerial的baud rate要設成38400
也就是SoftwareSerial BT; BT.begin(38400);
(4) AT command mode的通訊協定的結尾字元是\r\n (CR&NL)
所以Arduino IDE在即時監視視窗的結尾字元要選正確才看的到回傳資料
(5) 實用指令
AT >>> 若通訊OK則會回傳OK
AT+NAME=Burwei >>> 把hc-05的藍芽名稱改為Burwei(其他裝置搜尋時會看到的名字)
AT+PSWD=1119 >>> 把其他裝置要跟hc-05配對時,要使用到的密碼改成1119
(預設是0000或1234)
AT+UART? >>> 查看hc-05在藍芽通訊時所用的baud rate為何
2.一般模式,與其他裝置傳輸訊息
(1) baud rate要改成9600
也就是SoftwareSerial BT; BT.begin(9600);
(2) 注意另一端接收所需的結尾字元(我常常用readline,所以要放\n在最後不要忘了)
(3) 收的時候有兩招都能work
(i) 用char包起來,也就是char ch = BT.read(); Serial.print(ch);
(ii) 直接讀甚麼就寫甚麼,也就是Serial.write(BT.read());
P.S. write跟read好像是直接處理stream的樣子,print則是有打包在調用write
留言
張貼留言