一、簡介
HC-05是一款藍牙串口模塊,與典型的串口模塊相似,可通過UART通信發送和接收數據。
它可以很方便地與其他設備進行藍牙通信,例如智能手機,平板電腦等,實現無線控制。
HC-05是最常見的藍牙設備之一,其簡單的介面和低成本讓它成為電子愛好者和工程師的首選。
二、基本連接
連接HC-05需要三個要素:電源,地面和數據。
– 電源: HC-05工作範圍是在3.3V-5V,數據手冊中建議的工作電壓是3.6V-6V,為了確保最佳性能,我們選擇為HC-05控制用3.3V的電源。
– 地面: 頁面下方顯示的黑色矩形區域是HC-05的接地引腳,需要被連接到電路板上的GND。
– 數據: HC-05有四個引腳可供使用:VCC,GND,RXD和TXD。這裡我們只關注RXD和TXD。RXD輸入信號,TXD輸出信號。
如果您使用的是基於Arduino的電路板,請將RXD引腳接到板的數字引腳0,TXD引腳連接到數字引腳1。
void setup() { Serial.begin(9600); // 設定串口傳輸速度 pinMode(13, OUTPUT); // 將13號引腳設為輸出 } void loop() { if (Serial.available()) { char input = Serial.read(); // 讀取輸入的字元 if(input == 'on') { digitalWrite(13, HIGH); // 在收到 'on'時, 點亮板的LED燈 } else if(input == 'off') { digitalWrite(13, LOW); // 在收到 'off'時, 關閉板的LED燈 } } }
三、AT 指令
AT命令是通過串列通信與HC-05進行通信的命令集。您可以發送不同的AT命令來更改HC-05的配置。
在AT模式下,HC-05隻能使用UART傳輸,並被配置為數據速率為38400的串口。
您可以使用串列終端程序(例如推薦使用的RealTerm)通過USB連接匹配的 Arduino,從而直接翻譯命令並將其發送到藍牙模塊。
下面是幾個常用的AT命令:
– AT – 用於測試HC-05是否處於連接狀態。如果連接成功,HC-05將響應「OK」。
– AT+NAME – 設置HC-05藍牙設備的名稱。例如:AT+NAMEbluetooth,這將把設備名稱設置為「bluetooth」。
– AT+ROLE – 配置連接角色,0為主機,1為從機。例如:AT+ROLE1,這將把HC-05設置為從機。
– AT+UART – 用於設置UART數據速率、停止位和奇偶校驗,例如:AT+UART=9600,0,0,設置數據速率為9600。
下面是一個AT模式下的示例代碼:
void setup() {
Serial.begin(38400);
// HC-05默認使用38400的波特率
Serial.println(“AT”);
// 發送AT命令
}
void loop() {
// 等待從HC-05返迴響應的數據
while (Serial.available()) {
Serial.write(Serial.read());
// 將讀取到的數據傳輸出去
}
}
四、與模塊通信
Arduino可以通過HC-05輕鬆實現與其他設備的通信。以下示例展示了如何使用HC-05將Arduino與Android設備配對,並在兩者之間進行通信:
#include SoftwareSerial bluetooth(2, 3); // RX, TX // 如果您使用的是基於Arduino的電路板,將RXD引腳接到板的數字引腳2,TXD引腳連接到數字引腳3。 void setup() { Serial.begin(9600); bluetooth.begin(9600); } void loop() { if (bluetooth.available()) { //檢查藍牙模塊是否可讀取 Serial.write(bluetooth.read()); // 從藍牙讀取數據 } if (Serial.available()) { // 檢查串口是否可讀取 bluetooth.write(Serial.read()); // 向藍牙發送數據 } }
五、總結
HC-05是一種經濟實惠的藍牙模塊,用於電子愛好者和工程師的無線控制,簡單易用。僅需三個接線連接,您就可以開始使用HC-05進行通信。
在這篇文章中,我們介紹了HC-05的基本連接,AT命令和Arduino與其他設備通信的示例。希望這篇文章能夠為您提供幫助。
原創文章,作者:XZMWA,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/372588.html