HC-06藍牙模塊

主機:用於向從機下發指令,能夠搜索從機並主動建立連接的一方。
從機:用於接收主機下發的命令,不能主動建立連接,只能等別人連接自己。(HC-06只能工作在從機模式下。)
主從一體:能夠在主機和從機模式間切換,即可做主機也可作從機。如:HC-05既可以設置爲主機也可以設置爲從機。

引腳說明
HC-05和HC-06的硬件相同,都採用CSR (Cambridge Silicon Radio) 公司的BC417143芯片,支持藍牙2.1+EDR規範,只是芯片內部的控制程序不同。
在這裏插入圖片描述
不管是HC-05還是HC-06,對於Arduino控制程序都是一樣的,實際接線也只用到4個引腳:VCC、GND、TxD、RxD。
在這裏插入圖片描述
配置
Arduino UNO板的輸出電壓是5V。市面上很多藍牙模塊都標示工作電壓是3.3V,因此,若直接把Arduino連接到藍牙模塊,有可能發生損壞。也有一些模塊在底部區域設置了1KΩ的限流電阻,方便大家使用5V供電,選購時需要注意。通常可採用萬用表「電阻」檔,測量底板RxD引腳和藍牙模塊本身(就是焊接上去那塊板)的第2腳,如果電阻值爲接近於0,則代表沒有限流電阻。如下圖:
在這裏插入圖片描述
如沒有設置限流電阻也可以採用下面的連接方式,人爲加入限流電阻:
在這裏插入圖片描述
使用AT指令前,最好有一塊USB轉TTL的模塊,將藍牙模塊與USB轉TTL模塊連接完成(注意兩者間的RX和TX要交叉連接),即可通過串口終端使用AT指令對模塊進行相應的配置,AT指令集如下表:
在這裏插入圖片描述
特點

測試代碼
藍牙模塊與Arduino連接完成,AT指令配置完成後即可通過下面的代碼對模塊功能進行測試。

/***************************
*Name:    HC06.ino
*Created: 2019/9/28
*Author:  
****************************/
#include<softwareSerial.h>
//使用SoftwareSerial,能將Arduino的數字輸出引腳模擬成串口輸出;
SoftwareSerial BT(8, 9);  //配置接收腳爲8腳,發送腳爲9腳;
char val;//存儲變量

void setup() {
Serial.begin(9600); //設置串口;
Serial.println("BT_HC06 ready for use!");
BT.begin(9600); //設置串口波特率;
}

void loop() {
//如果串口接收到數據,則輸出到藍牙串口;
if (Serial.available()) {
val = Serial.read();
BT.print(val);
}

//如果HC06接收到數據;
if (BT.available()) {
val = BT.read();
Serial.print(val);
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章