Feasycom 的藍牙音訊模組包括一系列用於資料和音訊傳輸功能的設定檔。 開發人員在編寫和調試程式時,經常需要配置模組韌體的功能。 因此,Feasycom提供了一套特定格式的AT命令,方便開發者隨時隨地設定Profile。 本文將為使用Feasycom藍牙音訊模組的開發者介紹如何使用這些AT命令。
首先,Feasycom的AT指令格式如下:
AT+Command{=參數1{,參數2{,參數3...}}}
注意:
- 所有指令均以“AT”開頭並以“ 」
——” " 代表回車,對應“HEX”為“0x0D”
——” " 表示換行,對應“HEX”為“0x0A”
- 如果指令包含參數,參數之間以「=」分隔
- 若指令包含多個參數,參數之間以「,」分隔
- 如果命令有回應,則回應以“ 「並以」結尾」
- 模組應始終返回命令執行的結果,成功返回“OK” for failure (the figure below lists the meanings of all ERR )
錯誤代碼 | 意義
------------|--------
001| 失敗的
002| 無效的參數
003| 無效狀態
004| 命令不匹配
005| 忙碌的
006| 不支援命令
007| 設定檔未開啟
008| 沒有記憶
其他 | 保留供將來使用
以下是AT指令執行結果的兩個例子:
- 讀取模組的藍牙名稱
<< AT+版本
>> +VER=FSC-BT1036-XXXX
>> 好的
- 無來電時接聽電話
<< AT+HFPANSW
>> 錯誤003
接下來,我們列出一些常用的配置文件,如下所示:
- SPP(序列埠設定檔)
- GATTS(通用屬性設定檔 LE-週邊角色)
- GATTC(通用屬性設定檔 LE-中央角色)
- HFP-HF(免持設定檔)
- HFP-AG(免持-AG 設定檔)
- A2DP-Sink(高級音訊分配設定檔)
- A2DP-Source(進階音訊分發設定檔)
- AVRCP-控制器(音訊/視訊遠端控制器設定檔)
- AVRCP-Target(音訊/視訊遙控器設定檔)
- HID-DEVICE(人機介面設定檔)
- PBAP(電話簿存取設定檔)
- iAP2(適用於 iOS 裝置)
最後,我們在下表中列出了上述設定檔對應的 AT 命令:
命令| AT+PROFILE{=參數}
參數 | 表示為十進位位域,每一位代表
位[0] | SPP(串行埠設定檔)
位[1] | GATT 伺服器(通用屬性設定檔)
位[2] | GATT 用戶端(通用屬性設定檔)
位[3] | HFP-HF(免持設定檔免持)
位[4] | HFP-AG(免持設定檔音訊閘道)
位[5] | A2DP 接收器(進階音訊指派設定檔)
位[6] | A2DP 來源(進階音訊分發設定檔)
位[7] | AVRCP控制器(音訊/視訊遠端控制器設定檔)
位[8] | AVRCP Target(音訊/視訊遙控器設定檔)
位[9] | HID 鍵盤(人機介面設定檔)
位[10] | PBAP 伺服器(電話簿存取設定檔)
位[15] | iAP2(適用於 iOS 裝置)
回應 | +設定檔=參數
注意| 以下設定檔不能透過 AT 指令同時啟用:
- GATT 伺服器和 GATT 用戶端
- HFP 接收器和 HFP 來源
- A2DP接收器和A2DP源
- AVRCP 控制器和 AVRCP 目標
使用AT命令配置Feasycom藍牙音訊模組的Profile是在韌體程式中以二進位形式實現的。 需要將對應的BIT位置轉換為十進位數來配置參數。 以下是三個例子:
1. 讀取目前設定檔
<< AT+個人資料
>> +簡介=1195
2.僅啟用HFP Source和A2DP Source,禁用其他(即二進位中BIT[4]和BIT[6]均為1,其他BIT位置為0,轉換後的十進位和為80)
<< AT+設定檔=80
>> 好的
3.僅啟用HFP Sink和A2DP Sink,停用其他(即二進位中BIT[3]和BIT[5]均為1,其他BIT位置為0,轉換後的十進位和為40)
<< AT+設定檔=40
>> 好的
完整的AT命令可以從Feasycom提供的相應產品的通用編程手冊中取得。 以下僅提供幾個主要的藍牙音訊模組通用程式手冊下載連結:
- FSC-BT1036C (主從一體,可透過指令切換音訊主從功能)
- FSC-BT1026C (支援音訊從機功能和TWS功能)
- FSC-BT1035 (支援音訊主控功能)