[Arduino]HC-06藍牙模塊使用小結

簡介

藍牙,顧名思義,藍色的牙齒,并不能用來咬人,而是一種無線數據傳輸標準。
HC-05HC-06是現在使用較多的兩種藍牙模塊。兩者之間的區別是HC-05主從一體機,既能向自己的'主子'打小報告,也可以接收下達的命令;而HC-06只能工作在從機模式下,那就只能乖乖接收上級的命令啦。
在很多情況下,我們都想當“霸道總裁”,讓下級乖乖聽話就OK了,不需要他多廢話。那就用HC-06就夠了。
下面是HC-06的模塊示意圖:

示意圖

可以看到它有4個引腳,那么它接線如下:

接線圖

在這里,我并沒有使用Arduino的0,1號口,而是使用了兩個數字口。這樣就不會占用Arduino自身的串口。

AT模式

在按照上面的接線之后,HC-06會自動進入AT模式,在這個模式下,可以通過串口對藍牙模塊進行一些諸如修改名稱、密碼的操作。
注意:AT命令一定要大寫,中間的+不可省略

指令 返回 功能
AT OK 確認連接
AT+VERSION OKlinvorV1.8 查看版本
AT+NAMExxxx OKsetname 設置藍牙名稱
AT+PINxxxx OKsetPIN 設定密碼
---- ---- ----
AT+BAUD1 OK1200 波特率設為1200
AT+BAUD2 OK2400 波特率設為2400
AT+BAUD3 OK4800 波特率設為4800
AT+BAUD4 OK9600 波特率設為9600
AT+BAUD5 OK19200 波特率設為19200
AT+BAUD6 OK38400 波特率設為38400
AT+BAUD7 OK57600 波特率設為57600
AT+BAUD8 OK115200 波特率設為115200

其中xxx替換成自己想要的。
不建議設置更高的波特率,通信會不穩定

/*
 Name:    Bluetooth.ino
 Created: 2016/7/30 13:26:47
 Author:  Fing
*/
#include <SoftwareSerial.h>
//使用軟件串口,能講數字口模擬成串口
SoftwareSerial BT(8, 9);  //新建對象,接收腳為8,發送腳為9
char val;  //存儲接收的變量

void setup() {
  Serial.begin(9600);   //與電腦的串口連接
  Serial.println("BT is ready!");
  BT.begin(9600);  //設置波特率
}

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

  //如果接收到藍牙模塊的數據,輸出到屏幕
  if (BT.available()) {
    val = BT.read();
    Serial.print(val);
  }
}

連接Arduino,寫入程序。進入串口,輸入AT,看看是不是有OK返回。
之后就可以愉快地使用HC-06模塊了。

手機連接調試藍牙

通過SPP藍牙助手可以實現連接藍牙和與藍牙之間的通信。
我用的是unWired Lite,可以在Play市場上下載到。
有些國內開發者也有相關的作品,自行搜索便可。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容