BLE(Bluetooh Low Energy)藍(lán)牙低能耗技術(shù)是短距離、低成本、可互操作性的無(wú)線(xiàn)技術(shù),它利用許多智能手段最大限度地降低功耗。
BLE藍(lán)牙模塊是為了降低使用者的開(kāi)發(fā)門(mén)檻,模組廠(chǎng)商會(huì)將射頻部分的參數(shù)調(diào)整到最佳,同時(shí)在軟件上符合大部分用戶(hù)的需求。
當(dāng)用戶(hù)拿到BLE藍(lán)牙模組后,僅需要通過(guò)串口就可以直接應(yīng)用在自己的項(xiàng)目中,大大降低了用戶(hù)的開(kāi)發(fā)成本。這也是目前BLE藍(lán)牙模塊非常火熱的主要原因。
1:BLE藍(lán)牙模塊的使用人群
(1)MCU方案廠(chǎng)商或成品廠(chǎng)商,經(jīng)常做一些各類(lèi)消費(fèi)類(lèi)電子,工業(yè)控制類(lèi)方案。 (2)學(xué)生,用于學(xué)習(xí)應(yīng)用BLE無(wú)線(xiàn)技術(shù)。 (3)業(yè)余電子發(fā)燒友,喜歡鉆研技術(shù),制作一些小設(shè)計(jì),小發(fā)明。
今天,筆者就拿目前市面上比較火爆的 一款藍(lán)牙模塊——集賢科技的UA287Q BLE模塊,來(lái)為大家介紹下藍(lán)牙模塊的具體使用方法。
說(shuō)到UA287Q 藍(lán)牙模組,我們就先從它的規(guī)格書(shū)看起。
2:UA287Q 藍(lán)牙模組規(guī)格書(shū)介紹
從上圖看出,該模組的特色主要在于三點(diǎn):
第一點(diǎn):支持主從模式,方便用戶(hù)在應(yīng)用過(guò)程中可以脫離手機(jī),實(shí)現(xiàn)兩個(gè)設(shè)備互相通信的功能。
第二點(diǎn):支持微信協(xié)議,用戶(hù)如果想省去開(kāi)發(fā)安卓及ios的app成本,可以直接應(yīng)用微信公眾號(hào)上,實(shí)現(xiàn)用戶(hù)功能。
第三點(diǎn):AT指令操作簡(jiǎn)潔,可通過(guò)AT指令修改藍(lán)牙名稱(chēng), 串口波特率 等操作,方便用戶(hù)操作287Q模塊。
第四點(diǎn):模組廠(chǎng)商聯(lián)系方式,張生13128730596,扣扣8360,95006(免費(fèi)申請(qǐng)UA287Q藍(lán)牙模組樣)。
第五點(diǎn):對(duì)底板硬件干擾要求不高,便與設(shè)計(jì),只需要保證模塊供電電源干凈即可。
3:UA287Q 藍(lán)牙模組相關(guān)AT指令集
串口AT指令如上圖所示,基本涵蓋了所有用戶(hù)平時(shí)會(huì)用到的串口AT指令。接下來(lái)我們就一起來(lái)看下這個(gè)模塊如何用起來(lái)。
4:測(cè)試操作說(shuō)明
首先,就是給這個(gè)模塊供電,并將串口接出來(lái)到電腦上,如下圖所示:
4.1打開(kāi)測(cè)試APP“BLE-Tool”軟件搜索藍(lán)牙,如圖 APP(BLE Tool)
4.2選擇對(duì)應(yīng)UA287Q模塊名稱(chēng)、MAC地址,如圖2所示該模塊的藍(lán)牙名稱(chēng)BleSeriaPort;
4.3進(jìn)入測(cè)試界面取消“Hex”和左側(cè)勾選項(xiàng),后點(diǎn)擊“選擇要寫(xiě)的服務(wù)ID”選擇最后一個(gè)選項(xiàng)里“可寫(xiě)”如下圖3,圖4所示;
4.4 在測(cè)試界面點(diǎn)擊“選擇要通知/讀服務(wù)ID”選擇第二項(xiàng)選項(xiàng) “可寫(xiě)可通知”如下圖5和圖6所示;
4.5 透?jìng)髂J较拢瑢?xiě)入要發(fā)送的數(shù)據(jù),如下圖 在APP“BLE-Tool”上寫(xiě)數(shù)據(jù),串口助手上接收。
在串口助手上寫(xiě)數(shù)據(jù),APP“BLE-Tool”上接收數(shù)據(jù)
到此,關(guān)于287Q BLE透?jìng)髂K的透?jìng)鞴δ苎菔就戤叀=酉聛?lái)跟大家說(shuō)下如何通過(guò)AT指令修改藍(lán)牙名稱(chēng)。
5:AT指令介紹
5.1 設(shè)置藍(lán)牙名 例: “AT+setName=bleName\r\n”(如設(shè)置為SENSSUN FAT) 回復(fù): “AT+okrestart effect!\r\n” (操作成功,需發(fā)重啟命令,重啟后生效) “AT+err_code\r\n” (操作失敗, err_code具體參見(jiàn)“命令錯(cuò)誤返回參數(shù)說(shuō)明”) 5.2 讀取藍(lán)牙設(shè)備名稱(chēng) 例: “AT+getName\r\n” 回復(fù): “AT+ok=bleName\r\n” (操作成功) “AT+err_code\r\n” (操作失敗, err_code具體參見(jiàn)“命令錯(cuò)誤返回參數(shù)說(shuō)明”)
5.3 讀取藍(lán)牙MAC 地址 例: “AT+getAddr\r\n” 回復(fù): “AT+okFF:11:22:33:66:FF\r\n” (操作成功) “AT+err_code\r\n” (操作失敗, err_code具體參見(jiàn)“命令錯(cuò)誤返回參數(shù)說(shuō)明”)
5.4 設(shè)置藍(lán)牙MAC 地址 例: “AT+setAddr=112233445566\r\n” 回復(fù): “AT+okrestart effect!\r\n” (操作成功,需發(fā)重啟命令,重啟后生效) “AT+err_code\r\n” (操作失敗, err_code具體參見(jiàn)“命令錯(cuò)誤返回參數(shù)說(shuō)明”)
5.5 讀取藍(lán)牙模塊的狀態(tài)廣播/已連接/sleep: 例: “AT+getStatus\r\n” 回復(fù):“AT+ok status_code\r\n”(操作成功),status_code如下:
00 | 模塊處于空閑狀態(tài) | 01 | 模塊處于廣播狀態(tài) | 02 | 模塊處于連接狀態(tài) | 03 | 帶響應(yīng)掃描 | 04 | 不帶響應(yīng)掃描 |
“AT+err_code\r\n” (操作失敗, err_code具體參見(jiàn)“命令錯(cuò)誤返回參數(shù)說(shuō)明”)
5.6 更改藍(lán)牙連接間隔
命令說(shuō)明:立即生效,不要頻繁設(shè)置,否則可能掉線(xiàn)。
例: “AT+setConnInt 36242300 \r\n ”(參數(shù)分別為max, min, latency,timeout) 例子中,最大間隔36*1.25ms,最小間隔24*1.25ms,潛伏期 2, 連接超時(shí)300*10ms.
最小連接間隔和最大連接間隔取值范圍均為0x0006~0x0C80(7.5ms~4000ms),min<=max。
Latency:取值范圍為:0x0000~0x01F3(0~499)。
連接超時(shí):取值范圍為:0x000A~0x0C80。 連接間隔必須小于連接超時(shí)時(shí)間,即:[max*1.25 * (1+latency)] < 10 * timeout。 注意:最大間隔* latency必須要小于timeout *4
回復(fù): “AT+ok\r\n” (操作成功,不用重啟,立即生效) “AT+err_code\r\n” (操作失敗, err_code具體參見(jiàn)“命令錯(cuò)誤返回參數(shù)說(shuō)明”)
本文部分內(nèi)容為筆者網(wǎng)上搜索及查閱相關(guān)資料所得,如有紕漏,歡迎指出。
|