测试准备与射频指令
概述
本文说明蓝牙 BT、BLE 和星闪 SLE 的射频测试环境、AT 指令、指令组包方式及测试注意事项。
测试准备
测试仪器及辅助器件
测试仪器及辅助器材:
- 计算机(PC)1台。
- 无线综测仪1台(需支持非信令测试,建议同时支持信令测试)。
- 信号发生器1台(需支持最高频率12.75GHz)。
- HiDiTing系列单板1块。
- SMA(M)-SMA(M)射频线缆2条,N(M)- SMA(M)射频线缆2条(需至少支持2GHz~12.75GHz的频率)。
- 双工器SMA(F) 1个。
- USB转Type-C线、USB(公对公)延长线和USB转console串口线各1条。
- 5V/2A USB电源适配器1个。
- 屏蔽房或屏蔽箱1个(屏蔽箱需支持对内部提供110V~240V /10A电源插排、SMA接头、USB接口各一个,隔离度≥80dB)以及其配套电源线1条。
- 网线2条。
测试硬件连接图
射频测试硬件连接组网图如图1所示,屏蔽箱内部硬件连线图如图2所示。


硬件连接的具体操作如下:
- 通过网线将PC机与无线综测仪和信号发生器进行连接。在PC机综测仪器和信号发生器的控制软件或控制页面上,输入无线综测仪和信号发生器的IP地址,将PC机与无线综测仪器和信号发生器连接,实现PC机对无线综测仪和信号发生器的控制。
- 将屏蔽箱与其配套电源线连接,并将被测单板放至屏蔽箱内。在屏蔽箱中,采用5V/2A USB电源适配器和USB转Type-C线,将电源插排与被测单板电源端口连接,同时采用USB延长线缆,将屏蔽箱与PC机连接。在屏蔽箱中,采用USB转console串口线,USB端与屏蔽箱USB端口连接,console端与单板的命令下发串口连接。
- 在无线综测仪的端口上采用N(M)-SMA(M)同轴线缆,信号发生器的端口采用SMA(M)-SMA(M)同轴线缆,将无线综测仪端口和信号发生器的端口连接到双工器同一端的端口上,并在另一端与屏蔽箱通过N(M)-SMA(M)同轴线缆连接。
- 在屏蔽箱中,采用SMA(M)-SMA(M)同轴线缆,将屏蔽箱内侧对应的射频端口与被测单板的天线座子连接。
- 完成以上操作后,测试环境搭建完毕。
说明:
- 本文中所提到的射频线缆类型可能和用户实际使用的存在差异,具体以实际使用仪表要求为准。
- 本文中提到的信号发生器,只有当抗干扰测试时才会用到,大部分测试只需要无线综测仪一台仪器就可完成。如果没有信号发生器,可以暂且将双工器去掉,使无线综测仪和屏蔽箱直接通过N(M)- SMA(M)射频线缆连接。
射频测试 AT 指令
射频测试相关AT指令一览表
表 1 射频测试相关AT指令一览表
指令 |
描述 |
|---|---|
AT^BTENABLE |
BT使能指令,退出时使用AT^BTDISABLE。 |
AT^BTFACCALLBACK |
注册BT命令上报回调(没有相应退出操作)。 |
AT^BTTX |
BT常发指令。 |
AT^BTRX |
BT常收指令。 |
AT^BTTRXEND |
BT常发、常收停止指令。 |
AT^BTRST |
BT软件复位指令。 |
AT^BLEENABLE |
BLE使能指令,退出时使用AT^BLEDISABLE。 |
AT^BLEFACCALLBACK |
注册BLE命令上报回调(没有相应退出操作)。 |
AT^BLETX |
BLE常发指令。 |
AT^BLERX |
BLE常收指令。 |
AT^BLETRXEND |
BLE常发、常收停止指令。 |
AT^BLERST |
BLE软件复位指令。 |
AT^SLEENABLE |
SLE使能指令(没有相应退出操作)。 |
AT^SLEFACCALLBACK |
注册SLE命令上报回调(没有相应退出操作)。 |
AT^SLETX |
SLE常发指令。 |
AT^SLERX |
SLE常收指令。 |
AT^SLETRXEND |
SLE常发、常收停止指令。 |
AT^SLERST |
SLE软件复位指令。 |
AT^BTSIGNAL |
BT进入信令模式指令。 |
AT^BTTXLO |
射频单音指令。 |
AT+XOCALI |
晶体频偏校准指令。 |
AT^BTAUTOCALI |
晶体自动频偏校准指令。 |
BT射频测试相关AT指令描述
BT测试建议流程
图 1 BT产测AT测试流程

说明: “ATBTENABLE”与“ATBTFACCALLBACK”在上电之后只需要执行一次,若想重复执行该指令,需要复位系统。常用的复位方式为重新上下电。
BT使能指令
格式 |
AT^BTENABLE |
|---|---|
响应 |
|
示例 |
AT^BTENABLE 回复: OK |
注意 |
在进行BT所有指令前,必须先执行BT使能指令,使能BT相关业务接口。 本使能指令是测试BT指令的前置条件之一,退出BT测试业务时使用AT^BTDISABLE。 上电后使能一次即可。 |
BT注册回调
格式 |
AT^BTFACCALLBACK |
|---|---|
响应 |
|
示例 |
AT^BTFACCALLBACK 回复: OK |
注意 |
BT测试前先注册上报回调,否则业务指令没有上报状态打印。 本指令是测试BT指令的前置条件,没有相应退出操作。 上电后发一次即可。 |
常发指令
格式 |
AT^BTTX=<payload_len>,<addr>,<freq>,<module_type>,<code_type>,<payload_type>,<pwr>,<chnnl> |
|---|---|
响应 |
ERROR原因:指令不支持或格式错误。 |
参数说明 |
|
示例 |
如配置定频信道0:AT^BTTX=12,112233445566,0,0,4,0,5,1 如开启跳频发送:AT^BTTX=12,112233445566,128,0,4,0,5,1 |
注意 |
地址参数为十六进制字符串,其余参数均为十进制,中间“,”不可省略。 参数需要根据蓝牙协议规定进行配置,否则会出现错误。 |
常收指令
格式 |
AT^BTRX=<payload_len>,<addr>,<freq>,<module_type>,<code_type>,<chnnl> |
|---|---|
响应 |
ERROR原因:指令不支持或格式错误。 |
参数说明 |
|
示例 |
AT^BTRX=12,112233445566,0,0,4,1 |
注意 |
地址参数为十六进制字符串,其余参数均为十进制,中间“,”不可省略。 参数需要根据蓝牙协议规定进行配置,否则会出现错误。 |
常发常收停止指令
格式 |
AT^BTTRXEND |
|---|---|
响应 |
ERROR原因:格式错误。 |
示例 |
AT^BTTRXEND 回复: OK status:0x0,num_packet:0x3e8,rssi:-127 说明:如仪表发1000包后发结束指令,测试RX的收报数为1000包(0x3E8),测试RX的接收能量rssi为-127dBm。 如果发TX后执行结束指令,则num_packet指代发射包数,rssi指代发射档位。 |
注意 |
此指令在执行BT RF TX、RX后需要停止时执行。 rssi和num_packet在RX结束后关注。
为避免丢包,停止RX指令发送前要保证仪表已经完成发包。 |
BT复位指令
格式 |
AT^BTRST |
|---|---|
响应 |
ERROR原因:格式错误。 |
示例 |
AT^BTRST |
注意 |
BT软件复位指令,在进行BT RF测试前先发BT复位指令恢复软件状态。 只复位BT TX与RX状态,不代表复位整个系统。 |
BLE射频测试相关AT指令描述
BLE测试建议流程
图 1 BLE产测AT测试流程

说明: “ATBLEENABLE”与“ATBLEFACCALLBACK”在上电之后只需要执行一次,若想重复执行该指令,需要复位系统。常用的复位方式为重新上下电。
BLE使能指令
格式 |
AT^BLEENABLE |
|---|---|
响应 |
|
示例 |
AT^BLEENABLE 回复: OK |
注意 |
在进行BLE所有指令前,必须先执行BLE使能指令,使能BLE相关业务接口。 本使能指令是测试BLE指令的前置条件之一,退出BLE测试业务时使用AT^BLEDISABLE。 上电后使能一次即可。 |
BLE注册回调
格式 |
AT^BLEFACCALLBACK |
|---|---|
响应 |
|
示例 |
AT^BLEFACCALLBACK 回复: OK |
注意 |
BLE测试前先注册上报回调,否则业务指令没有上报状态打印。 本指令是测试BLE指令的前置条件,没有相应退出操作。 上电后发一次即可。 |
常发指令
格式 |
AT^BLETX=<freq>,<payload_len>,<payload_type>,<phy> |
|---|---|
响应 |
ERROR原因:指令不支持或格式错误。 |
参数说明 |
|
示例 |
AT^BLETX=0,255,0,1 |
注意 |
参数均为十进制,中间“,”不可省略。 参数需要根据BLE协议规定进行配置,否则会出现错误。 |
常收指令
- 测试 BLE 常收功能时,务必将仪表波形文件中的蓝牙地址设置为 NAP=1122、UAP=33、LAP=332211。如果不按照此设置,测试将无法正确查询到收包数。
- 使能 BLE 常收功能后,如果需要发送其他命令,请先参照“常发常收停止指令”小节,关闭 BLE 常收功能。
格式 |
AT^BLERX=<freq>,<phy>,<modulation_index> |
|---|---|
响应 |
ERROR原因:指令不支持或格式错误。 |
参数说明 |
|
示例 |
AT^BLERX=0,1,0 |
注意 |
参数为十进制,中间“,”不可省略。 参数需要根据BLE协议规定进行配置,否则会出现错误。 |
常发常收停止指令
格式 |
AT^BLETRXEND |
|---|---|
响应 |
ERROR原因:格式错误。 |
示例 |
AT^BLETRXEND 回复: OK status:0x0,num_packets:0x3e8 说明:如仪表发1000包后发结束指令,测试RX的收报数为1000包(0x3E8)。 如果发TX后执行结束指令,则num_packets指代发射包数。 |
注意 |
此指令在执行BLE RF TX、RX后需要停止时执行。 num_packets在RX结束后关注。
为避免丢包,停止RX指令发送前要保证仪表已经完成发包。 |
BLE复位指令
格式 |
AT^BLERST |
|---|---|
响应 |
ERROR原因:格式错误。 |
示例 |
AT^BLERST |
注意 |
BLE软件复位指令,在进行BLE RF测试前先发BLE复位指令恢复软件状态。 只复位BLE TX与RX状态,不代表复位整个系统。 |
SLE射频测试相关AT指令描述
SLE测试建议流程
图 1 SLE产测AT测试流程

说明: “ATSLEENABLE”与“ATSLEFACCALLBACK”在上电之后只需要执行一次,若想重复执行该指令,需要复位系统。常用的复位方式为重新上下电。“AT^SLERST”复位命令只复位SLE下的TRX状态,不能当做复位系统。
SLE使能指令
格式 |
AT^SLEENABLE |
|---|---|
响应 |
enter saf_at_common_registerOK
|
示例 |
AT^SLEENABLE 回复: OK |
注意 |
在进行SLE所有指令前,必须先执行SLE使能指令。 本使能指令是测试SLE指令的前置条件之一,没有相应退出操作。 上电后发一次即可。 |
SLE注册回调
格式 |
AT^SLEFACCALLBACK |
|---|---|
响应 |
[AT] sle factory register cbks.
|
示例 |
AT^SLEFACCALLBACK |
注意 |
SLE测试前先注册回调。 本指令是测试SLE指令的前置条件之一,没有相应退出操作。 上电后发一次即可。 |
常发指令
格式 |
AT^SLETX=<freq>,<pwr>,<payload_len>,<payload_type>,<phy>,<format>,<TX_rate>,<pilot>,<polar>,<interval> |
|---|---|
响应 |
ERROR原因:指令不支持或格式错误。 |
参数说明 |
|
示例 |
AT^SLETX=0,5,255,0,1,2,2,0,0,50 如改为跳频,则配置为:AT^SLETX=256,5,255,0,1,2,2,0,0,50 |
注意 |
参数均为十进制,中间“,”不可省略。 参数需要根据星闪协议规定进行配置,否则会出现错误。 |
常收指令
格式 |
AT^SLERX=<freq>,<phy>,<format>,<pilot>,<interval> |
|---|---|
响应 |
ERROR原因:指令不支持或格式错误。 |
参数说明 |
|
示例 |
AT^SLERX=0,0,0,0,50 |
注意 |
参数为十进制,中间“,”不可省略。 参数需要根据星闪协议规定进行配置。否则会出现错误。 |
常发常收停止指令
格式 |
AT^SLETRXEND |
|---|---|
响应 |
ERROR原因:格式错误。 |
示例 |
AT^SLETRXEND 回复: OK status:0x0,num_packet:0x3e8,rssi:-127 说明:如仪表发1000包后发结束指令,测试RX的收报数为1000包(0x3E8),测试RX的接收能量rssi为-127dBm 如果发TX后执行结束指令,则收包数为0,rssi为0。 |
注意 |
此指令在执行SLE RF TX、RX后需要停止时执行。 rssi和num_packet在RX结束后关注。
为避免丢包,停止RX指令发送前要保证仪表已经完成发包。 |
SLE复位指令
格式 |
AT^SLERST |
|---|---|
响应 |
ERROR原因:格式错误。 |
示例 |
AT^SLERST |
注意 |
软件复位指令。只复位SLE TX与RX状态,不代表复位整个系统。 |
BT进入信令模式指令
格式 |
AT^BTSIGNAL=<enable> |
|---|---|
响应 |
|
参数说明 |
<enable>:开关 0:退出BT信令模式 1:进入BT信令模式 其他值无效 |
示例 |
|
注意 |
发进入信令模式指令前需要先发BT业务使能信号。 |
射频单音
格式 |
AT^BTTXLO=<freq>,<mode> |
|---|---|
响应 |
|
参数说明 |
|
示例 |
|
注意 |
|
XO 32M校准 执行CTRIM校准指令
格式 |
AT+XOCALI=<increase>,<step_num> |
|---|---|
响应 |
xo_ctrim_reg_val:0x0
|
参数说明 |
|
示例 |
以初始电容码字为0x6为例:
|
注意 |
步进参数的有效范围为[0,255],超出范围时命令解析失败。合法步进执行加减后若越界,寄存器值分别饱和到255或0。校准时无特殊环境约束。 步进和电容变化非严格线性变化,需要上位机程序使用二分法调整步进,通常常温频偏门限为±24kHz。 |
XO 32M校准 自动校准指令
格式 |
AT^BTAUTOCALI=<opera>[,<param2>[,<param3>]] |
|---|---|
响应 |
|
参数说明 |
|
示例 |
参考图1,自动校准整体流程如下:
|
注意 |
|

自动校准基于两板的信号连接,板间可以通过射频线进行连接,也可以使用天线通过空口进行连接。使用射频线连接可以有效避免干扰,提高信号接收质量,同时减少校准误差,实际进行频偏校准时建议优先使用射频线。采用空口连接时,应尽量选择较好的天线,或在信号屏蔽环境中进行校准,避免其他蓝牙/星闪信号干扰,减少校准失败的可能性。
AT指令status状态对应表
状态码 |
状态含义 |
|---|---|
0x00 |
成功 |
0x01 |
未知命令 |
0x03 |
硬件问题 |
0x06 |
内存受限 |
0x07 |
连接超时 |
0x0B |
指令不允许 |
0X0C |
地址不合法 |
0X0D |
指令超时 |
0X0F |
无效的指令参数 |
0X1F |
包太长出错 |
0X20 |
未定义错误 |