因為開始有同學想做遙控車,而也有的老師在詢問如何使藍芽變得方便?所以這邊就打一下囉。
首先,我個人在簡單的遙控車活動上其實喜歡使用HC-05這個藍芽模組,因為它可以做到主從控制,主從控制的意思就是說,他可以當斗M或是斗S,端看你怎麼設定的意思。而主從控制的好處就是
- 我不用使用手機來遙控
- 主控端可以用另一個Arduino寫任何我需要的程式
- 主控端的遙控器設計可以依照我的需求來設計
以上是我喜歡的點,那下面我們就開始說明囉。
首先先檢查一下你的HC-05上面是哪種版本?
- STATE, RX, TX, GND, 5V, EN
- STATE, RX, TX, GND, 5V, KEY
這兩種版本只差在最後一個是不同的,但在進入AT mode的方式完全不同,所以要先檢查清楚。
/* AUTHOR: Hazim Bitar (techbitar) DATE: Aug 29, 2013 LICENSE: Public domain (use at your own risk) CONTACT: techbitar at gmail dot com (techbitar.com) */ #include <Wire.h> #include <SoftwareSerial.h> SoftwareSerial BTSerial(10, 11); // RX | TX void setup() { pinMode(9, OUTPUT); // this pin will pull the HC-05 pin 34 (key pin) HIGH to switch module to AT mode digitalWrite(9, HIGH); Serial.begin(9600); Serial.println("Enter AT commands:"); BTSerial.begin(38400); // HC-05 default speed in AT command more } void loop() { // Keep reading from HC-05 and send to Arduino Serial Monitor if (BTSerial.available()) Serial.write(BTSerial.read()); // Keep reading from Arduino Serial Monitor and send to HC-05 if (Serial.available()) BTSerial.write(Serial.read()); }
先將上面程式燒進Arduino板,然後將電路透過杜邦線接上。然後我們就可以來進行ATmode的調整了。
進入ATmode
這邊分成兩種操作,但總之先把杜邦線接上
1.有KEY的HC-05 HC-05 Rx > Arduino Pin 11 HC-05 Tx > Arduino Pin 10 HC-05 Vcc > Arduino 5V HC-05 GND > Arduino GND HC-05 KEY > Arduino Pin 9 (注意:這邊是HC-05有KEY的才要接,沒有KEY的不用接)
2. 沒有KEY但有EN的HC-05 HC-05 Rx > Arduino Pin 11 HC-05 Tx > Arduino Pin 10 HC-05 Vcc > Arduino 5V HC-05 GND > Arduino GND
然後依照以下的步驟:
- 先把Arduino和電腦的連接線拔除,然後將 Vcc > 5V 拔除。
- 將Arduino接上電腦,然後打開Serial 介面,稍等兩秒會跳出「Enter AT command:」
這邊有很重要需要注意的,如果是寫EN的HC-05,請壓住板子上的輕觸開關。 - 跳出「Enter AT commands:」後接上Vcc > 5V的杜邦線,然後會發現板子上的LED從快速閃爍變成兩秒閃一次。(這邊如果上面寫EN的板子請同時放開輕觸開關)
- 這時在Serial上面輸入:AT 然後按Enter,畫面應該會出現:OK。這樣就恭喜你進入ATmode了。
這邊其實可以看一下上面寫的東西來檢查我們的接線,Rx和Tx分別接在Pin 10和Pin 11
ATmode操作
進入AT後就可以來做一些調整了
一般來說我們常用的有修改名字、密碼、主從、裝置位置、鮑 這些設定,那針對我們今天要用到的,就只有修改主從、裝置位置兩者。
首先先拿出兩支HC-05,先來將一支設定成「主」吧。
主
在AT mode下輸入 AT+ROLE? 然後按下Enter會出現 +ROLE:0 ,這代表他目前的腳色是「從」的腳色,如果要改成「主」的腳色就輸入 AT+ROLE=1 即可。
然後再輸入: AT+ADDR? 按下Enter會出現 +ADDR:98d3:32:3152dd ,這串代表的是這支藍芽的位置。但在這邊我們需要的是從的數值,所以大家可以拿出另一支藍芽然後尋找要設定為「從﹞的藍芽的位置。
當找到從的藍芽位置後,我們在回到「主」的藍芽,輸入AT+BIND=從的位置,舉例來說,如果今天從得出來的位置是「98d3:32:314e44」,則我們就輸入「AT+BIND=98d3,32,314e44」然後按下Enter就可以完成囉!(這邊請注意,冒號要改成逗號)
下面就是我自己在操作東西時的實例,自己做藍芽控制時一定會同時把遙控器做好,比較方便展示,也不用擔心活動時跟別人相撞。
Reblogged this on 生活科技教育交流網站.
讚讚
[…] [Arduino實用] HC-05 AT mode主從配對 […]
讚讚
[…] [Arduino實用] HC-05 AT mode主從配對 […]
讚讚
[…] https://livingtech.education/2018/06/03/arduino%E5%AF%A6%E7%94%A8-hc-05-at-mode%E4%B8%BB%E5%BE%9E%E9… […]
讚讚
[…] https://livingtech.education/2018/06/03/arduino%E5%AF%A6%E7%94%A8-hc-05-at-mode%E4%B8%BB%E5%BE%9E%E9… […]
讚讚
[…] [Arduino實用] HC-05 AT mode主從配對https://livingtech.education/2018/06/03/arduino%E5%AF%A6%E7%94%A8-hc-05-at-mode%E4%B8%BB%E5%BE%9E%E9… […]
讚讚
[…] [Arduino實用] HC-05 AT mode主從配對 […]
讚讚
[…] https://livingtech.education/2018/06/03/arduino%E5%AF%A6%E7%94%A8-hc-05-at-mode%E4%B8%BB%E5%BE%9E%E9… […]
讚讚