2021年4月28日 星期三

雙模SPP/BLE藍芽模塊JDY33

 雙模SPP/BLE藍芽模塊JDY33


藍牙4.0後分為SPP經典藍牙及BLE低功耗藍牙2種不同的通信方式,

2種通信並無完全相容,因此程式編寫上也會不同,

雖然手機4.0後藍牙2種模式都可搜尋並連結,但因通信方式不同,

所以APP程式等需要相同協議才能正常執行運作,

更詳細資料請自上行搜尋,Bluetooth

https://zh.wikipedia.org/zh-tw/%E8%97%8D%E7%89%99

此模塊支援2種藍牙協定SPP及BLE,以下僅示範SPP傳統精典藍牙操作,

傳統藍牙模塊為SPP協定用,如HC05/HC06/JDY等,

使用方式是完全相容的,可替代使用於從式Slave,無主式功能,

.6針腳位,STATE,RXD,TXD,GND,VCC,PWRC

.輸入DC3.3~6.0V/30mA,電力錯腳或過壓會燒板

.從機雙模式,SPP_3.0+BLE_4.2

.頻率範圍2.4GHz

.無遮蔽物有效距離約30公尺

.STATE狀態輸出,待機低電連線高電

.PWRC低電喚醒

.預設配對名稱JDY33,傳統模式為SPP

.預設密碼1234

.等帶連線為慢閃燈

.配對連線後待機長亮燈


注意AT模式和使用模式接腳方式是不同的,

此部份為設定模式AT指令,或跳過AT直接到一般模式使用,

Win10+UNO及安卓測試,在AT設定模式下的腳位連接

RXD接UNO的RX-P0

TXD接UNO的TX-P1

GND接UNO的GND

Vcc接UNO的5v

圖↓藍牙AT接線



接好線路後UNO與電腦連結,此時JDY33板燈為慢閃,

開啟電腦ArduinoIDE程式,打開監控視窗,

調整鮑率為9600,此為原廠預設,

選擇NL&CR顯示方式,

於輸入欄打入以下指令,注意需為大寫,

若輸入後無回覆顯示,請檢查RX及TX接線是否勞固正確,

或上傳空程式確認設定,若出現錯誤請電腦重新開機,

圖↓藍牙33雙模AT指令



AT指令需大寫

AT+RESET 重開

AT+LADDR 通信位址

AT+VERSION 查詢版本

AT+DISC 斷開藍牙連線

AT+PIN 配對密碼,預設AT+PIN1234

AT+BAUD 鮑率,AT+BAUD4預設9600

AT+NAME 配對名稱,AT+NAME預設JDY-33-SPP

AT+NAMB 配對名稱,AT+NAME預設JDY-33-BLE

AT+DEFAULT 回復原廠設定


試著修改

改SPP連線名稱為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的內建燈P13,

開啟電腦執行介面程式,上傳程式,


#include <SoftwareSerial.h> // 引用程式庫

SoftwareSerial BT(10, 11); // 接藍芽板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的P10

藍牙TXD接UNO的P11

接好硬體線路後通電,此時藍牙燈號慢閃待機,圖↓




再來手機部分,先開啟藍牙功能,

搜尋JDY33SPP配對密碼1234,

APP可自行編寫或商城有很多藍芽對Arduino用的程式,

注意該程式是SPP或BLE通信協議,

以下使用Arduino bluetooth controller,圖↓145718


下載安裝執行後,會要求選擇對應的藍牙設備,

此APP有4種功能,遊戲控制,開關,調光,字串,

選用Switch開關模式後,先點選設定,

例將開關設為X和Y,回到控制模式圖↓

點擊開關,觀察UNO的內建P13燈的亮熄,

因為部分使用和HC05/HC06/JDY等都相同,

所以就不另錄影片了,以下是JDY30/31的操作影片,

影片~



另搭配繼電器就可以控制家電或燈具了,

可試著用該APP其他控制方式搭配程式修改使用,

進階控制馬達小車等,可參考另篇藍牙小車文,

https://ee543.blogspot.com/2019/04/a1903unobc6.html



https://www.ee543.com



沒有留言:

張貼留言