• 正文
    • 1. 概述
    • 2. AT指令格式
    • 3. 主要AT指令分類及功能
    • 4. 其他函數(shù)說明
    • 5. 總結(jié)
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

富芮坤FR306x_SDK AT指令功能詳細說明文檔

02/06 14:43
451
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

1. 概述

本文檔詳細描述了富芮坤FR306x_SDK 中定義的AT指令及其功能。這些指令主要用于藍牙(BLE)設(shè)備的控制和管理,涵蓋了設(shè)備連接、斷開、音頻控制、媒體控制、網(wǎng)絡(luò)配置等多個方面。

因為原廠沒有AT指令功能詳細說明文檔,說來也奇怪,有了代碼,還沒有功能說明,不是先有功能需求說明,才開發(fā)代碼嗎?

指令分類

  • 基本指令 (A系列)
  • 藍牙連接管理 (B系列)
  • 電話和語音控制 (C系列)
  • 媒體控制 (E系列)
  • 其他雜項功能 (D系列)
  • 網(wǎng)絡(luò)通信 (P系列)

2. AT指令格式

所有AT指令以 AT# 開頭,后跟具體的命令字符和參數(shù)。每個指令的具體格式如下:

AT#<Command><SubCommand>[Parameters]

<Command>:主命令字符(如A, B, C等)

<SubCommand>:子命令字符(如A, B, C等)

[Parameters]:可選參數(shù),具體取決于命令

3. 主要AT指令分類及功能

3.1 命令組 A (app_at_recv_cmd_A)

處理與底層硬件或協(xié)議相關(guān)的命令。

A:發(fā)送廠商自定義命令。

參數(shù):1個字節(jié)的地址值(16進制)

示例:AT#AA01 發(fā)送地址為0x01的廠商自定義命令。

B:發(fā)送廠商自定義命令。

參數(shù):2個字節(jié)的數(shù)據(jù)(16進制)

示例:AT#BA0102 發(fā)送數(shù)據(jù)為0x01和0x02的廠商自定義命令。

C:發(fā)送廠商自定義命令。

參數(shù):4個字節(jié)的地址值(16進制)

示例:AT#CA00000001 發(fā)送地址為0x00000001的廠商自定義命令。

D:發(fā)送廠商自定義命令。

參數(shù):8個字節(jié)的數(shù)據(jù)(16進制)

示例:AT#DA0000000100000002 發(fā)送數(shù)據(jù)為0x00000001和0x00000002的廠商自定義命令。

E:發(fā)送特定廠商命令。

參數(shù):無

示例:AT#AE 發(fā)送特定廠商命令。

G:打印 "hello world!"。

參數(shù):無

示例:AT#AG 打印 "hello world!"。

H:讀取指定地址的32位值并打印。

參數(shù):8個字節(jié)的地址值(16進制)

示例:AT#AH00000001 讀取地址為0x00000001的32位值并打印。

I:寫入指定地址的32位值。

參數(shù):8個字節(jié)的地址值和數(shù)據(jù)(16進制)

示例:AT#AI0000000100000002 寫入地址為0x00000001的32位值為0x00000002。

J:讀取外設(shè)寄存器值并打印。參數(shù):2個字節(jié)的地址值(16進制)

示例:AT#AJ01 讀取地址為0x01的外設(shè)寄存器值并打印。

K:寫入外設(shè)寄存器值。

參數(shù):2個字節(jié)的地址值和數(shù)據(jù)(16進制)

示例:AT#AK0102 寫入地址為0x01的外設(shè)寄存器值為0x02。

L:讀取指定地址的8位值并打印。

參數(shù):8個字節(jié)的地址值(16進制)

示例:AT#AL00000001 讀取地址為0x00000001的8位值并打印。

M:寫入指定地址的8位值。

參數(shù):8個字節(jié)的地址值和數(shù)據(jù)(16進制)

示例:AT#AM0000000102 寫入地址為0x00000001的8位值為0x02。

U:內(nèi)存轉(zhuǎn)儲。

參數(shù):8個字節(jié)的起始地址和2個字節(jié)的長度(16進制)

示例:AT#AU0000000108 從地址0x00000001開始轉(zhuǎn)儲8個字節(jié)。

V:擦除閃存。

參數(shù):8個字節(jié)的起始地址和8個字節(jié)的長度(16進制)

示例:AT#AV0000000100000008 從地址0x00000001開始擦除8個字節(jié)。

Y:打印內(nèi)存使用情況。

參數(shù):2個字節(jié)的類型(16進制)

示例:AT#AY01 打印類型為0x01的內(nèi)存使用情況。

3.2 藍牙連接管理命令組 B (app_at_recv_cmd_B)

處理藍牙設(shè)備的基本操作,如連接、斷開、掃描等。

A:創(chuàng)建音頻鏈接。

參數(shù):無

示例:AT#BA00 創(chuàng)建音頻鏈接。

B:停止廣播。

參數(shù):1個字節(jié)的狀態(tài)(16進制)

示例:AT#BB01 停止廣播。

C:開始掃描。

參數(shù):無

示例:AT#BC 開始掃描。

D:停止掃描。

參數(shù):無

示例:AT#BD 停止掃描。

E:連接到指定設(shè)備。

參數(shù):12個字節(jié)的MAC地址和1個字節(jié)的地址類型(16進制)

示例:AT#BE0123456789ab_01 連接到MAC地址為01:23:45:67:89:ab且地址類型為0x01的設(shè)備。

F:斷開連接。

參數(shù):無

示例:AT#BF 斷開連接。

H:發(fā)起查詢。

參數(shù):無

示例:AT#BH 發(fā)起查詢。

I:取消查詢。

參數(shù):無

示例:AT#BI 取消查詢。

J:創(chuàng)建服務(wù)鏈接。

參數(shù):12個字節(jié)的MAC地址(16進制)

示例:AT#BJ0123456789ab 創(chuàng)建服務(wù)鏈接。

K:創(chuàng)建編解碼器連接。

參數(shù):1個字節(jié)的類型(16進制)

示例:AT#BK01 創(chuàng)建編解碼器連接。

L:刪除Flash數(shù)據(jù)庫中的鏈接密鑰。

參數(shù):無

示例:AT#BL 刪除Flash數(shù)據(jù)庫中的鏈接密鑰。

N:連接到指定設(shè)備(HF+A2DP_SINK)。

參數(shù):12個字節(jié)的MAC地址(16進制)

示例:AT#BN0123456789ab 連接到MAC地址為01:23:45:67:89:ab的設(shè)備(HF+A2DP_SINK)。

O:連接到指定設(shè)備(HFG+A2DP_SOURCE)。

參數(shù):12個字節(jié)的MAC地址(16進制)

示例:AT#BO0123456789ab 連接到MAC地址為01:23:45:67:89:ab的設(shè)備(HFG+A2DP_SOURCE)。

P:斷開連接(不保存連接信息)。

參數(shù):12個字節(jié)的MAC地址(16進制)

示例:AT#BP0123456789ab 斷開連接(不保存連接信息)。

Q:斷開連接(保存連接信息)。

參數(shù):12個字節(jié)的MAC地址(16進制)

示例:AT#BQ0123456789ab 斷開連接(保存連接信息)。

R:連接到最后一個已連接設(shè)備。

參數(shù):無

示例:AT#BR 連接到最后一個已連接設(shè)備。

S:進入配對模式。

參數(shù):無

示例:AT#BS 進入配對模式。

T:退出配對模式。

參數(shù):無

示例:AT#BT 退出配對模式。

U:斷開配對并連接到指定設(shè)備。

參數(shù):12個字節(jié)的MAC地址(16進制)

示例:AT#BU0123456789ab 斷開配對并連接到MAC地址為01:23:45:67:89:ab的設(shè)備。

V:斷開當(dāng)前連接。

參數(shù):無

示例:AT#BV 斷開當(dāng)前連接。

X:連接到指定設(shè)備(自定義配置文件)。

參數(shù):12個字節(jié)的MAC地址和1個字節(jié)的配置文件(16進制)

示例:AT#BX0123456789ab01 連接到MAC地址為01:23:45:67:89:ab的設(shè)備(自定義配置文件)。

Y:斷開音頻鏈接。

參數(shù):無

示例:AT#BY 斷開音頻鏈接。

Z:設(shè)置主角色。

參數(shù):無

示例:AT#BZ 設(shè)置主角色。

3.3 電話和語音控制命令組 C (app_at_recv_cmd_C)

處理藍牙電話相關(guān)的命令。

A:接聽電話。

參數(shù):無

示例:AT#CA 接聽電話。

B:掛斷電話。

參數(shù):無

示例:AT#CB 掛斷電話。

C:重撥。參數(shù):無

示例:AT#CC 重撥。

D:撥打電話。

參數(shù):最多15個字節(jié)的電話號碼(ASCII)

示例:AT#CD1234567890 撥打號碼為1234567890的電話。

E:列出當(dāng)前通話。

參數(shù):無

示例:AT#CE 列出當(dāng)前通話。

F:切換SCO連接。

參數(shù):無

示例:AT#CF 切換SCO連接。

G:發(fā)送DTMF音。

參數(shù):1個字節(jié)的DTMF音(ASCII)

示例:AT#CG1 發(fā)送DTMF音為'1'。

H:報告揚聲器音量。

參數(shù):1個字節(jié)的音量值(16進制)

示例:AT#CH0a 報告揚聲器音量為0x0a。

I:發(fā)送HF命令。

參數(shù):無

示例:AT#CI 發(fā)送HF命令。

J:啟用/禁用語音識別

參數(shù):1個字節(jié)的狀態(tài)(16進制)

示例:AT#CJ01 啟用語音識別。

K:檢查語音識別狀態(tài)。

參數(shù):無

示例:AT#CK 檢查語音識別狀態(tài)。

Z:發(fā)送時鐘命令。

參數(shù):無

示例:AT#CZ 發(fā)送時鐘命令。

3.4 其他雜項命令組 D (app_at_recv_cmd_D)

處理其他設(shè)備操作。

A:擦除閃存。

參數(shù):8個字節(jié)的起始地址和4個字節(jié)的長度(16進制)

示例:AT#DA0000000100000004 從地址0x00000001開始擦除4個字節(jié)。

B:枚舉記錄。

參數(shù):無

示例:AT#DB 枚舉記錄。

C:刪除記錄。

參數(shù):12個字節(jié)的MAC地址(16進制)

示例:AT#DC0123456789ab 刪除MAC地址為01:23:45:67:89:ab的記錄。

D:發(fā)送HCI命令。

參數(shù):無

示例:AT#DD 發(fā)送HCI命令。

3.5 藍牙多媒體命令組 E (app_at_recv_cmd_E)

處理藍牙媒體控制命令。

A:播放。

參數(shù):無

示例:AT#EA 播放。

B:暫停。

參數(shù):無

示例:AT#EB 暫停。

C:下一曲。

參數(shù):無

示例:AT#EC 下一曲。

D:上一曲。

參數(shù):無

示例:AT#ED 上一曲。

E:設(shè)置音量。

參數(shù):1個字節(jié)的音量值(16進制)

示例:AT#EE0a 設(shè)置音量為0x0a。

F:獲取媒體信息。

參數(shù):無

示例:AT#E

F 獲取媒體信息。G:獲取播放狀態(tài)。

參數(shù):無

示例:AT#EG 獲取播放狀態(tài)。

K:啟動A2DP流。

參數(shù):無

示例:AT#EK 啟動A2DP流。

L:暫停A2DP流。

參數(shù):無

示例:AT#EL 暫停A2DP流。

M:啟動雙A2DP流。

參數(shù):無

示例:AT#EM 啟動雙A2DP流。

3.6 網(wǎng)絡(luò)通信命令組 P (app_at_recv_cmd_P)

處理網(wǎng)絡(luò)相關(guān)命令(僅在BTDM_STACK_ENABLE_PAN啟用時有效)。

A:打開PAN連接。

格式:AT#PA

功能:打開與最后一個已連接的藍牙設(shè)備的PAN連接。

示例:AT#PA

B:創(chuàng)建UDP客戶端并連接。

格式:AT#PB<IP地址>_<端口號>

功能:創(chuàng)建一個UDP客戶端并連接到指定的IP地址和端口號。

示例:AT#PB192_168_001_100_8080

C:發(fā)送UDP數(shù)據(jù)。

格式:AT#PC

功能:通過已連接的UDP客戶端發(fā)送數(shù)據(jù)。

示例:AT#PC

D:創(chuàng)建TCP客戶端并連接。

格式:AT#PD<IP地址1>_<IP地址2>_<IP地址3>_<IP地址4>_<端口號>

功能:創(chuàng)建一個TCP客戶端并連接到指定的IP地址和端口號。

示例:AT#PD192_168_000_071_02333

E:測試DNS解析。

格式:AT#PE

功能:測試DNS解析功能,嘗試解析預(yù)定義的主機名。

示例:AT#PE

F:發(fā)送TCP數(shù)據(jù)。

格式:AT#PF<標(biāo)志位>

功能:通過已連接的TCP客戶端發(fā)送數(shù)據(jù),并指定發(fā)送標(biāo)志。

示例:AT#PF1

G:關(guān)閉TCP連接。

格式:AT#PG

功能:關(guān)閉已連接的TCP客戶端。

示例:AT#PG

4. 其他函數(shù)說明

app_at_cmd_recv_handler:根據(jù)接收到的命令調(diào)用相應(yīng)的處理函數(shù)。

功能:根據(jù)接收到的命令字符,調(diào)用相應(yīng)的命令處理函數(shù)。

參數(shù):

data:接收到的數(shù)據(jù)緩沖區(qū)。

length:數(shù)據(jù)長度。

app_at_recv_c:處理接收到的單個字符,構(gòu)建完整的AT指令。

功能:逐字符接收數(shù)據(jù),構(gòu)建完整的AT指令,并在指令完成后調(diào)用事件處理函數(shù)。

參數(shù):

c:接收到的字符。

app_at_rx_done:UART接收完成回調(diào)函數(shù)。

功能:在UART接收完成后調(diào)用,處理接收到的字符,并繼續(xù)接收下一個字符。

參數(shù):

handle:UART句柄。

app_at_init:初始化AT指令處理模塊。

功能:初始化AT指令處理模塊,啟動UART接收中斷。

參數(shù):

handle:UART句柄。

5. 總結(jié)

上述AT指令提供了對藍牙設(shè)備的全面控制,包括連接管理、音頻控制、媒體控制、網(wǎng)絡(luò)配置等功能。通過這些指令,用戶可以方便地進行設(shè)備調(diào)試和功能測試。每個命令都有詳細的格式和功能描述,便于開發(fā)者理解和使用。此外,其他輔助函數(shù)確保了AT指令處理模塊的正常運行,使得整個系統(tǒng)更加健壯和可靠。

希望這份文檔能夠幫助您更好地理解和使用富芮坤FR306x_SDK的AT指令。

富芮坤

富芮坤

上海富芮坤微電子有限公司成立于2014年,是一家致力于射頻集成電路芯片的設(shè)計、研發(fā)及產(chǎn)品銷售的高新技術(shù)企業(yè)。

上海富芮坤微電子有限公司成立于2014年,是一家致力于射頻集成電路芯片的設(shè)計、研發(fā)及產(chǎn)品銷售的高新技術(shù)企業(yè)。收起

查看更多

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄