1. 程式人生 > >藍芽(BT04A、HC-05) 使用經驗

藍芽(BT04A、HC-05) 使用經驗

一、主要參考材料   《藍芽串列埠AT指令集》

        除錯工具     串列埠助手

二、主從概念的理解

  一般藍芽常選用主從一體式,例如HC-05是大家經常選用的模組,當然還有隻作為從機的如HC-06,我也用到過DX-BT04-A 藍芽2.0模組,相比HC05、HC06等藍芽4.0,BT04的不相容IOS系統(藍芽2.0與藍芽4.0,SPP協議與BLE低功耗之間的區別與本文對藍芽模組的基本使用操作無關)。

       藍芽通訊需要一個作為主機,一個作為從機進行通訊,但是當兩裝置配對成功後,可將藍芽作為普通的串列埠,相互之間收發資料。我也遇到過下面的情況,當我使用BT04-A的AT指令將它設為主機時,返回OK表示設定成功,但是再次查詢AT主從狀態,返回的狀態依舊是從機,後來詢問賣家才知道BT04-A只能作為從機使用,挺坑的。所以我無法使用兩個BT04-A進行通訊。因此我只能將HC-05作為主機,BT04-A作為從機相互之間進行通訊。

      

三、引腳的連線

        設定AT指令最好與電腦連線,用串列埠除錯助手進行AT設定,因此需要額外的USB轉TTL模組。

        藍芽與USB轉串列埠模組連線方式,RXD-TX TXD-RX VCC-VCC GND-GND

         

四、AT指令的設定

具體的AT指令需要查詢你使用的那款藍芽的AT手冊,一般僅需要設定藍芽的波特率、主從狀態即可正常使用。

在設定AT時需注意:

1、如何進入藍芽的AT模式:有些模組如BT04-A一上電便自動進入AT模式,如HC-05需要先按住模組左上角的按鈕,然後上電,讓某一引腳經歷高電平臺變為低電平的過程,即可進入AT指令設定模式。同時注意在實際HC05的購買中,有些商家會直接將一些HC-05作為從機銷售,所以有些HC05模組沒有焊接按鈕,因此我們可以自己焊接按鈕,或使用導電的物品(杜邦線、鑷子),讓那個引腳置高。對於HC05來說,模組指示燈快閃表示藍芽未連線,慢閃表示進入AT模式,雙閃表示藍芽已連線並開啟埠。

2、開啟串列埠助手,選擇正確的埠號。

3、設定AT需要在該模組規定的固定初始波特率下設定(HC05為38400),而有些藍芽模組需要在你上次設定的波特率下進行AT指令的傳送。

4、有些模組在傳送AT指令時,需要在自己寫在傳送區的AT指令過後加回車"\r\n",同時注意區分大小寫。

5、具體有哪些AT指令以及它們的意義需要參考該模組的《AT指令集》

五、HC05指示燈模式

模組自帶了一個狀態指示燈STA,該燈有3種狀態,分別為:

1、在模組上電的同時(也可以是之前),將 KEY 設定為高電平(接 VCC),此時 STA慢閃(1秒亮1次),模組進入AT狀態,且此時波特率固定為38400.

2、在模組上電的時候,將KEY懸空或接GND,此時STA快閃(1秒2次),表示模組進入可配對狀態。如果此時將KEY在拉高,模組也會進入AT狀態,但是STA依舊保持快閃。

3、模組連線成功,此時STA雙閃(1秒2下,2秒1次)

 

六、常用的HC-05AT指令

AT+NAME=Bluetooth-Slave  藍芽名稱為Bluetooth-Slave
AT+ROLE=0                   藍芽模式為從模式
AT+CMODE=0                 藍芽連線模式為任意地址連線模式
AT+PSWD=1234               藍芽配對密碼為1234
AT+UART=9600,0,0        藍芽通訊串列埠波特率為9600,停止位1位,無校驗位
AT+RMAAD                    清空配對列表

七、補充:AT指令:設定/查詢—連線模式 

指令 響應 引數
AT+CMODE=<Param> OK Param:
0——指定藍芽地址連線模式
(指定藍芽地址由繫結指令設定)
1——任意藍芽地址連線模式
(不受繫結指令設定地址的約束)
2——迴環角色(Slave-Loop)
預設連線模式: 0
AT+ CMODE? + CMODE:<Param>
OK

如果設定指定藍芽繫結模式,會導致:只能與通過AT指令繫結的藍芽模組進行通訊,無法與新的裝置建立連線,所以要設定為任意藍芽地址連線模式。
 

相關推薦

BT04AHC-05) 使用經驗

一、主要參考材料   《藍芽串列埠AT指令集》         除錯工具     串列埠助手 二、主從概念的理解   一般藍芽常選用主從一體式,例如HC-05是大家經常選用的模組,當然還有隻作為從機的如HC-06,我也用到過DX-BT04-A 藍芽2.0模組,相比HC

二)搜尋配對連線

1.搜尋從上一節我們可以知道,藍芽狀態發生了改變,併發生了回撥。咱們就從回撥開始。DevicePickerFragment.java 用於藍芽設定介面的藍芽配置和管理 @Override public void onBluetoothStateChanged(int

IOS GameKitCore Bluetooth)

one col logs nali param pla star close equal GameKit的藍牙開發註意 ● 只能用於iOS設備之間的連接 ● 只能用於同一個應用程序之間的連接 ● 最好別利用藍牙發送比較大的數據 iOS中藍牙的

Android學習——Bluetooth)

藍芽(Bluetooth) 藍芽(Bluetooth)是一種短距離的無線通訊技術標準。 藍芽協議 藍芽協議分為4層,即核心替代層、電纜替代協議層、電話控制協議層和採納的其他的協議層。這4種最重要的是核心協議層。藍芽協議包括基帶、鏈路管理、邏輯鏈路控制和適應協議四部分。其中鏈路

一分鐘讀懂低功耗BLE)連線資料包

一分鐘讀懂低功耗藍芽(BLE)連線資料包1.概述   BLE 連線過程中有三個重要的資料包:SCAN_REQ, SCAN_RSP 和 CONNECT_REQ。   SCAN_REQ: 掃描請求,由主裝置(MASTER DEVICE)向從裝置(SLAVE DEV

一分鐘讀懂低功耗BLE)廣播資料包

一分鐘讀懂低功耗藍芽(BLE)廣播資料包 低功耗藍芽 =》 BLE (Bluetooth Low Energy) 1. 怎樣抓取BLE廣播資料包    * 硬體:一個BLE裝置(具有廣播功能);          一臺H

TI低功耗BLE)介紹

轉載自:http://www.cnblogs.com/cainiaoaixuexi/archive/2013/11/08/3414433.html 本文件翻譯和修改自參考資料:CC2540Bluetooth Low Energy Software Developer’s Guide (Rev.

低功耗BLE)和ZigBee在物聯網應用中的區別

 隨著低功耗、廣域網(LPWAN)市場的擴大,物聯網(IoT)應用的低功耗協議有了更多的選擇。在本文中,我們將藍芽和藍芽低能耗(BLE)與ZigBee進行比較,這樣您就可以更好地瞭解在連線裝置上使用哪種無線協議。  簡單來說,藍芽是近場通訊,ZigBee是區域網,更深入的區別繼續看下文。

Android開發之經典2.0)開發全記錄

前言部分 最近因為需要開始藍芽相關開發,所以在網上搜索了很多內容,並且結合自己的開發過程做了一個總結,先儲備上,也許可能幫到正在做藍芽開發的同學。 藍芽很早就是android裝置上基本通訊功能了,只是以前的沒有那麼多藍芽裝置,現在藍芽裝置種類繁多,所以經常會有人遇到藍芽相關的開發

簡單的通訊連線)

藍芽是什麼(Bluetooth): 一種短距離無線通訊技術  愛立信公司建立 如今由藍芽技術聯盟(Bluetooth Special Interest Group,簡稱SIG)管理。 現在用的都是低功耗藍芽 Android 4.3(API Level 18)開始引入B

[BLE]低功耗之GAPGATT

轉載自: https://blog.csdn.net/qq_21842557/article/details/50771077 一、開篇     本篇主要介紹一下關於BLE開發過程中必須瞭解的兩個協議:GAP(通用訪問協議)、GATT(通用屬性協議

低功耗5)

在這系列中的前幾篇文章裡,我們探索了低耗藍芽感測器並學習瞭如何建立連線。剩下的問題就是如何從感測器中獲得一些確切的資料,但這並不是像看起來那樣直接。在這篇文章裡,我們繼續探討GATT特徵並學習它是如何在主機和感測器之間進行資料交換的。 在前一篇文章裡,我們瞭解了感測

Android移動開發-BlueTooth)裝置檢測連線的實現

無論是WIFI還是4G網路,建立網路連線後都是訪問網際網路資源,並不能直接訪問區域網資源。比如兩個人在一起,A要把手機上的視訊傳給B,通常情況是開啟手機QQ,通過QQ傳送檔案給對方。不過上傳視訊很耗流量,如果現場沒有可用的WIFI,手機的資料流量又不足,那

[]低功耗之 GAPGATT

低功耗藍芽之 GAP、GATT 低功耗藍芽之 GAP、GATT 基礎介紹 BLE GAP GAP 協議 GAP 裝置角色 GAP 廣播資料 GAP 廣播流程

低功耗 BLE)開發各種坑

這段時間在做低功耗藍芽 (BLE) 應用的開發(並不涉及藍芽協議棧)。總體感覺 Android BLE 還是不太穩定,開發起來也是各種痛苦。這裡記錄一些雜項和開發中遇到的問題及其解決方法,避免大家踩坑。本文說的問題有些沒有得到官方文件的驗證,不過也有一些論壇帖子的支援,也可以

[]之 SPPHFP

藍芽之 SPP、HFP 藍芽之 SPP、HFP SPP HFP 藍芽之 SPP、HFP SPP 藍芽串列埠是基於 SPP 協議(Serial Port Profile),能在藍芽裝置之間建立串列埠進行資料傳輸

[]之 A2DPAVRCP

藍芽之 A2DP、AVRCP 藍芽之 A2DP、AVRCP A2DP AVRCP 藍芽之 A2DP、AVRCP A2DP A2DP全名是Advenced Audio Distribution Profile

用C#在windows上操控電腦自帶入道指南)

前言 如題,如果你也想用C#在windows上操控電腦自帶藍芽,但是,不知從何下手,那就該看看這篇文章——這篇文章將帶領你入道。也正是這樣,這篇文章的主要內容是介紹操控藍芽所需的支援庫,以及從哪裡下載最新版的支援庫,並教你如何自學與藍芽開發相關的更多知識等。本文涵蓋了經典藍芽(藍芽2

無線串列埠模組 HC-06從機-----AT指令以及其他測試報告

一 環境:          1、普中科技HC6800-EM3 v2.2 微控制器開發實驗儀(晶片STC90C516RD+)           2、無線藍芽串列埠透傳模組 HC-06從機      

Anroid BLE手機分別作為中心裝置和外圍裝置)

        藍芽是一種短距的無線通訊技術,可實現固定裝置、移動裝置之間的資料交換。一般將藍芽3.0之前的BR/EDR藍芽稱為傳統藍芽,而將藍芽4.0規範下的LE藍芽稱為低功耗藍芽。BLE藍芽模組主要應用領域    1、移動擴充套件裝置    2、汽車電子裝置    3、健