Arduino HC05 與 HC05 / HC06 通訊實作(含AT MODE設定教學 - s1234567的創作 - 巴哈姆特

創作內容

25 GP

Arduino HC05 與 HC05 / HC06 通訊實作(含AT MODE設定教學

作者:貓貓風 ฅ●ω●ฅ│2018-03-01 11:56:13│巴幣:50│人氣:14275
.





















關於藍芽模組的介紹此篇有詳述說明    Bluetooth Module

此篇主要為實作 兩個藍芽模組間的通訊

首先需要有兩個藍芽模組,其中一個一定要為 HC05 (MASTER)

被動端(passive) 則可為 HC05 或 HC06 (Slave)

HC05一買到預設為 Slave,因此需要進入 AT Mode來更改模式

HC05在硬體上有兩種型態,進入 AT MODE 的方式有些微差異

一種為藍芽模組正面無按鍵;但背面的腳位有 KEY WAKEUP






此種類型的HC05進入AT MODE的方式為

將  KEY WAKEUP  腳位接到高電位 5 V 或 3.3 V

接上之後再將藍芽模組送電,如果此時藍芽模組LED的閃爍頻率為慢速閃爍

大約每兩秒閃一次,則表示成功進入 AT MODE



如果HC05為帶按鍵的



此種HC05進入AT MODE 更簡單

在藍芽上電前先按住該按鈕,然後再按住按鈕的情況下送電

送電後放開該按鈕,則進入AT MODE, LED燈會為慢閃模式


HC06通電後未被連線時的MODE即為AT MODE  不需做任何外部觸發

HC06 只能為SLAVE  因此如果SLAVE端是 HC06,不用做任何設定


在進入 AT MODE 後開始對 HC05進行設定,目的是要將該模組設為MASTER

主動連線至配對SLAVE端的藍芽模組

接著將下列程式碼上傳至ARDUINO端

(NOTICE: 藍芽baud一定要為38400才可以將指定傳輸至HC05


  1. #include  <SoftwareSerial.h>  
  2. SoftwareSerial BTSerial(10, 11); // RX | TX  
  3. int i = 0;  
  4. void setup()  
  5. {  
  6.   Serial.begin(9600);  
  7.   Serial.println("Enter AT commands:");  
  8.   BTSerial.begin(38400);  // HC-05 default speed in AT command more  
  9. }  
  10. void loop()  
  11. {  
  12.   // Keep reading from HC-05 and send to Arduino Serial Monitor  
  13. if (BTSerial.available())  
  14.   {  
  15.     Serial.write(BTSerial.read());  
  16.   }  
  17.   // Keep reading from Arduino Serial Monitor and send to HC-05  
  18.   if (Serial.available())  
  19.   {  
  20.     BTSerial.write(Serial.read());  
  21.   }  
  22. }  

之後開始以序列傳輸測試是否以正確進入AT MODE 並下修改指令

首先開啟序列視窗



將下方顯示改成如下圖,因為HC05的回應都會加上換行字元

如果不改則會顯示不出回應內容




接著輸入指令 AT   如果 HC05回應 OK  則表示已經進入 AT MODE




然後依序輸入下列AT COMMAND

需要指定MAC做連線

AT+CMODE=0   

設定模組為MASTER

AT+ROLE=1

綁定SLAVE MAC (以逗號做區隔)

AT+BIND=2011,5,112236     

以上指令送出後 HC05回應 OK 即設定成功

完成上述步驟即將MASTER設定完畢

不過此時一定會有一個疑問  SLAVE的 MAC如何知道

其實很簡單,如果是 HC05 一樣進入 AT MODE  

然後輸入指令 AT+ADDR?  ,則 HC05會回應 MAC

如果SLAVE是 HC06,則要比較麻煩一點

因為HC06的AT COMMAND並沒有可以直接取得 MAC的

所以要藉由其他外部裝置,手機或筆電都可以

將手機/筆電 開啟藍芽後連線至HC06,然後 MAC就會出現在手機端

以下為取得的格式範例

可能為 20:15:86:01:24

這邊呈現出是以冒號區隔,但是在綁定時MAC的區隔為逗號

此部分要特別注意         


SLAVE端將下列程式上傳至ARDUINO進行傳輸測試


  1. #include  <SoftwareSerial.h>  
  2. SoftwareSerial BTSerial(10, 11); // RX | TX  
  3. int i = 0;  
  4. void setup()  
  5. {  
  6.   Serial.begin(9600);  
  7.   BTSerial.begin(9600);  // HC-05 default speed in AT command more  
  8. }  
  9. void loop()  
  10. {  
  11.   
  12.    BTSerial.println(i++);  
  13.    delay(1000);  
  14. }  



MASTER端將下列程式碼上傳後測試接收


  1. #include  <SoftwareSerial.h>  
  2. SoftwareSerial BTSerial(10, 11); // RX | TX  
  3. int i = 0;  
  4. void setup()  
  5. {  
  6.   Serial.begin(9600);  
  7.   BTSerial.begin(9600);  // HC-05 default speed in AT command more  
  8. }  
  9. void loop()  
  10. {  
  11.      if (BTSerial.available()) {  
  12.      
  13.        char rev = BTSerial.read();  
  14.       Serial.print( rev );  
  15.     }  
  16. }  


測試結果

MASTER端每秒收到從 SLAVE端傳來的資料





引用網址:https://home.gamer.com.tw/TrackBack.php?sn=3905171
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:涼涼風|arduino

留言共 8 篇留言

LOVe高橋李依
實用啊啊啊啊啊啊
剛好這個學期就是要學這個
連同motor
感謝你!!

03-01 12:30

貓貓風 ฅ●ω●ฅ
不客氣唷03-01 13:17
紅心•A•胡迪
太深奧ㄌ

03-01 12:31

貓貓風 ฅ●ω●ฅ
這其實算簡單的了OAO03-01 13:20
莫莉安
表示看不懂(@_@;)

03-01 12:39

貓貓風 ฅ●ω●ฅ
因為英文註解嗎 OAO?03-01 13:20
珀伽索斯(Ama)
讓我找個時間來好好研究一下@@

03-01 13:24

貓貓風 ฅ●ω●ฅ
好喔03-01 13:29
嚮鄉紅

03-01 13:59

貓貓風 ฅ●ω●ฅ
恩OAO!?03-01 14:00
小刀
棒棒~

03-02 18:40

貓貓風 ฅ●ω●ฅ
3Q03-05 15:15
煙嵐
帥,之前玩過7697

04-23 23:41

貓貓風 ฅ●ω●ฅ
[e19]04-24 00:51
貓貓風 ฅ●ω●ฅ
[e30]04-24 00:51
盾齒魚
感謝說明,但我想請教一下,有按鈕的HC-05已經進入AT模式,但不知怎麼用的,序列戶能輸入但無法顯示AT回應,請問腳位有特殊接法嗎?

05-24 08:43

貓貓風 ฅ●ω●ฅ
AT模式下要用 BAUD 38400才可進行通訊05-24 09:36
我要留言提醒:您尚未登入,請先登入再留言

25喜歡★s1234567 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:雄心壯志 - 異轉木希 ... 後一篇:闇影詩章【Shadowv...

追蹤私訊切換新版閱覽

作品資料夾

d88931122所有巴友
歡迎諸君來參觀老僧小屋,內含Steam與Google Play遊戲、Line貼圖、3D角色模組看更多我要大聲說10小時前


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】