藍芽模塊6針JDY
Arduino加Android=雙A,要安卓控制UNO,藍牙模塊雙A必備,
手機平板透過藍芽通訊和Arduino連結,作無線控制,
此篇JDY和常見的HC05和HC06是相同的使用方式,可替代使用,
JDY模塊為從式Slave,無主式功能
圖↓藍芽模塊JDY
可先來了解AT指令,或跳過AT直接到一般模式使用,
以下為Win7+Arduino1.6.6+UNO及安卓測試
注意AT模式和使用模式接腳方式是不同的,
在AT設定模式下的腳位連接
RXD接UNO的RX-P0
TXD接UNO的TX-P1
GND接UNO的GND
Vcc接UNO的5v
圖↓藍芽AT接線
接好線路後UNO與電腦連結,此時JDY板燈為慢閃,
開啟電腦IDE程式,打開監控視窗,
調整鮑率為9600,此為原廠預設,
選擇NL&CR顯示方式,
於輸入欄打入以下指令,注意需為大寫,
若輸入後無回覆顯示,請檢查RX及TX接線是否勞固正確,
或上傳空程式確認設定,若出現錯誤請電腦重新開機,
圖↓藍芽AT指令
AT指令需大寫
AT+RESET 重開
AT+LADDR 通信位址
AT+VERSION 查詢版本
AT+DISC 斷開藍牙連線
AT+PIN 配對密碼,預設1234
AT+BAUD 鮑率,預設9600
AT+NAME 配對名稱,預設JDY-?
AT+DEFAULT 回復原廠設定
試著修改
改名稱為ABC,則輸入AT+NAMEABC
查詢名稱輸入AT+NAME
改密碼為8899,則輸入AT+PIN8899
查詢密碼輸入AT+PIN
改鮑率為38400,則輸入AT+BAUD6
編號 鮑率
BAUD1 1200
BAUD2 2400
BAUD3 4800
BAUD4 9600出廠預設
BAUD5 19200
BAUD6 38400
BAUD7 57600
BAUD8 115200
注意修改鮑率後的視窗不需調整,
uno斷電重啟後,則需使用新的鮑率,
試完AT指令後,可調回原廠設定,
準備以下的一般使用,注意接線不一樣,
--------一般使用模式------------
由於藍牙會一直發訊號給uno,
所以上傳程式經常會有失敗的情形,
建議先移除接線,上傳程式再接線,
以下程式透過手機藍牙控制UNO的內建燈P13,
開啟電腦執行介面程式,上傳程式,
圖↓
#include <SoftwareSerial.h> // 引用程式庫
SoftwareSerial BT(0, 1); // 0,1接藍牙TX,RX
char tx; // 接收字元
void setup() {
Serial.begin(9600); //電腦鮑率
BT.begin(9600); // 藍芽鮑率
pinMode( 13 , OUTPUT); //被控燈號
}
void loop() {
if (BT.available()) {
tx = BT.read();
Serial.print(tx); //收到藍牙資料顯示在監控視窗
if ((tx) == ('X') ) //收到X亮燈,Y熄燈
digitalWrite( 13 , HIGH );
if ((tx) == ('Y') )
digitalWrite( 13 , LOW );
}
}
上傳後記得先斷電,再接各腳位線路,
AT模式和一般模式的RX/TX腳位不同,
藍牙RXD接UNO的P1TX
藍牙TXD接UNO的P0RX
接好硬體線路後通電,此時藍牙燈號慢閃待機,
圖↓藍牙一般接線
再來手機部分,先開啟藍牙功能,
搜尋JDY開頭點擊配對輸入密碼1234,
APP可自行編寫或商城有很多藍芽對Arduino用的程式,
以下使用Arduino bluetooth controller,
圖↓
下載安裝執行後,會要求選擇對應的藍牙設備,
此APP有4種功能,遊戲控制,開關,調光,字串,
選用Switch開關模式後,先點選設定,
例將開關設為X和Y,回到控制模式
圖↓
點擊開關,觀察UNO的內建P13燈的亮熄,
影片~
另搭配繼電器就可以控制家電或燈具了,
可試著用該APP其他控制方式搭配程式修改使用,
進階控制馬達小車等,可參考另篇藍牙小車文,
https://ee543.blogspot.com/2019/04/a1903unobc6.html
https://www.ee543.com