HC-05藍芽模組設定
最近入手的這一批藍芽模組是屬於HC-05,設定方式指令和設定HC-06不相同,相較之下複雜的多,嘗試多次後終於成功,就把這三十多片都設定完成。
這一批的預設藍芽裝置名稱是「HC-05」,預設baudrate是「38400」
我沒有買「USB轉TTL」的轉接器,而是將藍芽模組用杜邦線連上Arduino UNO,利用Arduino IDE上傳程式到Arduino UNO板子上,打開Arduino IDE的終端機下指令設定
一、首先將程式上傳到Arduino上
程式如下:
/*
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 <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進入AT狀態
(網路上找到的HC-05的接腳名稱和我的不一樣,大多有一個叫KEY的接腳,我的找不到,而是有一個叫WAKEUP的接腳,位置好像也不大相同,查了很久,原來要有一個pin腳是連接焊上藍芽晶片的pin34,而WAKEUP就是連接焊上晶片的pin34,所以和網路上找到的KEY腳是一樣的)
這一批的預設藍芽裝置名稱是「HC-05」,預設baudrate是「38400」
我沒有買「USB轉TTL」的轉接器,而是將藍芽模組用杜邦線連上Arduino UNO,利用Arduino IDE上傳程式到Arduino UNO板子上,打開Arduino IDE的終端機下指令設定
一、首先將程式上傳到Arduino上
程式如下:
/*
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
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進入AT狀態
(網路上找到的HC-05的接腳名稱和我的不一樣,大多有一個叫KEY的接腳,我的找不到,而是有一個叫WAKEUP的接腳,位置好像也不大相同,查了很久,原來要有一個pin腳是連接焊上藍芽晶片的pin34,而WAKEUP就是連接焊上晶片的pin34,所以和網路上找到的KEY腳是一樣的)
◎接下來步驟如下:
- 先斷開Arduino和USB的連接(讓Arduino此時是斷電)
- 將各針腳正確用杜邦線接上Arduino,只有將連接5V的pin腳先拔掉
- HC-05 STATE → 不用接
- HC-05 RXD → Arduino pin 11
- HC-05 TXD → Arduino pin 10
- HC-05 GND → Arduino GND
- HC-05 VCC → Arduino 5V
- HC-05 WAKEUP → Arduino pin 9
- 將Arduino和USB線連接上(此時Arduino是通電的,但因5V的pin腳是拔除的,所以藍芽模組上的led燈是不亮的)
- 在通電的狀況上,最後將連接5V的pin腳接上Arduino(此時藍芽模組上的led燈會慢速閃爍(約兩秒一次),表示藍芽模組已進入AT模式,可以下指令設定了。
三、下指令設定
- 打開Arduino IDE的終端機,內容會看到「Enter AT Commands:」,記得終端機下方要選擇「Both NL & CR」「9600 baud」,不然下指令後都看不到反應。
- 先打入「AT」,送出後如果回應「OK」,就是正常。
- 改裝置名稱:「AT+NAME:xxxxx」,xxxxx是自訂的名稱,送出後,正常就會回應「OK」。
- 將速率換成的115200:「AT+UART:115200,0,0」送出後,正常就會回應「OK」。
- 查詢裝置名稱:「AT+NAME?」,正常就會回應「+UART:xxxxxx」。
- 查詢速率:「AT+UART?」,送出後,正常就會回應「+UART:115200,0,0」。
◎藍芽模組的LED燈號:
- 連續的快閃:藍芽等待配對中
- 連續的快閃2下後停1下:藍芽已配對成功,運作中
- 連續慢速閃爍(約兩秒一次):藍芽已進入AT模式,準備設定