經過本文,能夠了解到如下內容:git
想要使用 Arduino 的藍牙模塊,首先要對藍牙模塊進行基本參數設置。基本參數設置主要包含:藍牙名稱、模式以及匹配密碼等。設置藍牙模塊可使用 USB-TTL 鏈接電腦使用串口調試軟件進入 AT 模式進行設置,也可使用 Arduino 鏈接藍牙模塊進行設置,本文主要介紹後一種方法。web
在鏈接藍牙的時候,要注意線的鏈接是否正確,檢查清楚再進行通電,除此以外,還要主要不要讓針腳短路,我在首次使用藍牙模塊的時候,由於沒注意接線,致使一個藍牙模塊損壞了,只能發信息不能收信息,因此爲了不沒必要要的損失,這裏要注意。oop
進入 AT 模式設置藍牙的接線以下:
Arduino 5V - VCC
Arduino GND - GND
Arduino Pin10 - TXD
Arduino Pin11 - RXD
在通電前檢查接線是否正確鏈接
測試
接下來,咱們須要爲使用 Arduino 設置藍牙模塊 AT 模式編寫程序,這個程序是讓咱們能夠經過 Arduino IDE 提供的串口監視器
來設置藍牙模塊。詳細的 Arduino 代碼以下ui
#include <SoftwareSerial.h> // Pin10爲RX,接HC05的TXD // Pin11爲TX,接HC05的RXD SoftwareSerial BT(10, 11); char val; void setup() { Serial.begin(38400); Serial.println("BT is ready!"); // HC-05默認,38400 BT.begin(38400); } void loop() { if (Serial.available()) { val = Serial.read(); BT.print(val); } if (BT.available()) { val = BT.read(); Serial.print(val); } }
首先,將 Arduino 斷電,而後按着藍牙模塊上的黑色按鈕,再讓 Arduino 通電,若是藍牙模塊指示燈按2秒的頻率閃爍,代表藍牙模塊已經正確進入 AT 模式。
打開 Arduino IDE 的串口監視器,選擇正確的端口,將輸出格式設置爲 Both: NL & CR
,波特率設置爲 38400
,能夠看到串口監視器中顯示 BT is ready!
的信息。
而後,輸入 AT
,若是一切正常,串口顯示器會顯示 OK
。
接下來,咱們便可對藍牙模塊進行設置,經常使用 AT 命令以下:google
AT+ORGL # 恢復出廠模式 AT+NAME=<Name> # 設置藍牙名稱 AT+ROLE=0 # 設置藍牙爲從模式 AT+CMODE=1 # 設置藍牙爲任意設備鏈接模式 AT+PSWD=<Pwd> # 設置藍牙匹配密碼
正常狀況下,命令發送後,會返回 OK
,若是沒有返回任何信息,請檢查接線是否正確,藍牙模塊是否已經進入 AT 模式,若是上述兩點都沒有問題,多是藍牙模塊的問題,能夠找藍牙模塊供應商諮詢。
設置完畢後,斷開電源,再次通電,這是,藍牙模塊指示燈會快速閃爍,這代表藍牙已經進入正常工做模式。url
咱們完成了對藍牙模塊的設置後,咱們將作一個能夠經過手機藍牙鏈接,控制 Arduino 開關 LED 燈的小實驗。spa
這裏的電路設計比較簡單,主要是兩部分:設計
這裏有兩點須要注意,Arduino 上的 TXD 應與 HC05 模塊上的 RXD 端鏈接,Arduino 上的 RXD 應與 HC05 模塊上的 TXD 鏈接。
在下面的圖例中,個人 LED 是直接鏈接在 Arduino Pin13 上,而實際電路鏈接中,因根據鏈接的 Led 燈的設計考慮是否須要串聯電阻。調試
Arduino 程序代碼以下:
void setup() { // 設置波特率爲 38400 Serial.begin(38400); pinMode(13, OUTPUT); } void loop() { while(Serial.available()) { char c=Serial.read(); if(c=='1') { Serial.println("BT is ready!"); // 返回到手機調試程序上 Serial.write("Serial--13--high"); digitalWrite(13, HIGH); } if(c=='2') { Serial.write("Serial--13--low"); digitalWrite(13, LOW); } } }
在 Android 端上進行調試,須要下載藍牙串口調試 APP,能夠根據喜愛在各大應用商場搜索下載。
下載安裝完成 APP 後,咱們先打開手機的藍牙設置,搜索並匹配好咱們的藍牙模塊。而後打開 藍牙串口調試APP
,讓 APP 鏈接上藍牙模塊,而後咱們能夠在 APP 中輸入 1
,接下來能夠看到 LED 等亮了,而且能在 APP 中看到 Serial--13--high
的返回(有些 APP 返回值可能不是返回在同一行)。咱們再在 APP 中輸入 2,能夠看到 LED 熄滅, APP 中返回 Serial--13--low
。
在這篇文章中,咱們瞭解了在 Arduino 中使用 HC05 藍牙模塊的兩個主要步驟,首先是進入 AT模式
對藍牙模塊進行設置,這裏要注意接線的正確性,設置完成後,就能夠將藍牙模塊的 TX
與 Arduino RX
鏈接,RX
與 Arduino TX
鏈接,再經過 Arduino 程序中的 Serial
來實現數據的傳輸與讀取。最後,在經過 Android 上的藍牙串口調試APP,來測試咱們的試驗是否成功。