一 Direct Test Mode
直接测试模式。
DTM应用程序启用蓝牙规范5.0 vol 6, part F 中描述的DTM测试功能。
DTM的目的是在物理层上测试射频的运行情况,例如:
- Transmission power and receiver sensitivity(传输功率和接收器灵敏度)
- Frequency offset and drift(频率偏移和漂移)
- Modulation characteristics(调制特性)
- Packet error rate(误码率)
- Intermodulation performance(互调性能)
二 Setp
设置。
测试程序在文档“蓝牙低功耗RF PHY测试规范”中定义,文档编号RF-PHY.TS / 5.0.0。一致性测试是通过专用测试设备(例如Anritsu MT8852或类似产品)以nRF5和DTM应用作为被测设备(DUT)进行的。
nRF5 DTM应用程序包括两个部分:
- DTM-直接测试模式库,用于管理nRF射频,并控制标准DTM程序。 该库的源代码可以在以下文件夹中找到:\components\ble\ble_dtm。
- 提供外部接口的应用程序。您可以在以下文件夹中找到示例的源代码和项目文件:\examples\dtm\direct_test_mode
DTM应用程序包含用于2线UART接口的驱动程序,可将BLE DTM规范指定的两个八位字节的命令和事件映射到DTM-直接测试模式库。
该实现是独立的,不需要BLE协议栈即可运行。MPU以标准方式初始化(文件arm_startup_nrf52.s和system_nrf52.c)。DTM库函数dtm_init配置所有中断,计时器和射频。
main.c可以用其他接口实现方式代替,例如HCI接口,USB或Upper Tester所需的其他接口。
Lower Tester 的接口使用nRF5的天线连接器。虽然原则上可以使用天线,但一致性测试应涵盖读取DUT所传送的传输功率。因此,DUT和Lower Tester之间的同轴电缆连接用于所有一致性测试。
三 BLE DTM module interface
BLE DTM模块接口。
DTM -直接测试模式功能dtm_cmd实现了BLE标准定义的四个命令:
- TEST SETUP (called RESET in Bluetooth 4.0)
- RECEIVER_TEST
- TRANSMITTER_TEST
- TEST_END
在dtm_cmd接口中,每个参数(cmd,freq,length,payload)都是字长。请注意,当前支持的参数值仅限于为BLE定义的参数值。(HCI允许与BR / EDR一起使用的更大值范围)
使用dtm_event_get函数轮询以下DTM事件:
- PACKET_REPORTING_EVENT
- TEST_STATUS_EVENT [SUCCESS|FAIL]
四 Supported PHYs
支持的PHY
DTM应用程序支持DTM中指定的所有四个PHY,但并非所有设备都支持所有PHY。
五 Vendor Specific packet payload
供应商特定的数据包有效负载。
BLE 2线UART DTM接口标准为供应商特定的数据包有效负载保留数据包类型(有效负载参数)二进制值’11’。DTM到串行适配层将其映射到dtm_cmd接口中的值0xFFF…FFF。此映射的原理是允许以后扩展到HCI接口和DTM PDU布局中指定的4位数据包类型字段。
供应商特定的负载(参数4)解释如下,如果参数1(命令)设置为发射机测试(二进制‘10’),参数4(负载)设置为供应商特定(二进制‘11’在2wire物理接口,所有位设置为1在dtmlib接口):
- 如果参数3(长度)设置为0(符号CARRIER_TEST),则在参数2 (freq)所指示的信道上打开一个未调制载波。在发出TEST_END或RESET命令之前,它一直处于打开状态。
- nRFgo studio使用参数3(长度)等于1(符号CARRIER_TEST_STUDIO)表示未调制载波在信道上打开。在发出TEST_END或RESET命令之前,它一直处于打开状态。
- 如果参数3(长度)设置为2(符号SET_TX_POWER),则参数2(频率)将以dBm为单位设置发射功率。产品规格中指定了有效的TX功率,范围为-40至+4。 复位值为0 dBm。只有6个最低有效位将适合长度字段,因此DTM模块将计算两个最高有效位(这是可能的,因为所有有效TX功率的6个最低有效位都是唯一的)。仅当没有运行发射机测试或接收机测试时,才可以修改TX功率。
- 如果参数3(长度)设置为3(符号SELECT_TIMER),则参数2(频率)选择DTM-直接测试模式库用于变送器测试时序的计时器。有效的计时器标识符为0、1和2。配置要使用的计时器可以将库集成到更大的测试环境中,在该环境中其他模块可能正在占用默认计时器(计时器0)。
- 保留参数2(频率)和4(长度)的所有其他值。
六 The DTM to Serial adaptation layer
DTM到串行适配层。
main.c是UART接口的实现,如蓝牙规范 Vol 6, Part F, 3中所指定。GPIO引脚的默认选择是RX的引脚8和TX的引脚6。这些默认值在 examples \ bsp \ board.h中定义,可以通过编辑符号RX_PIN_NUMBER和TX_PIN_NUMBER的值进行更改。
七 Running DTM tests
运行DTM测试。
合格测试是使用经过认证的测试仪进行的。设置取决于实际的测试仪,并且必须在测试仪文档中找到有关测试操作的详细信息。应用笔记nAN34描述了使用DTM设置生产测试的两种选择:Anritsu MT8852B蓝牙测试仪,nRF8001开发套件或nRF51822开发套件以及一台计算机作为测试仪。
BLE DTM UART接口标准指定:
- 8个数据位
- 无校验
- 1个停止位
- 没有硬件流控
- 从9600到1000000的波特率中选择一种,DUT必须支持其中一种(可以通过试验参数来运行其他比波特率。)
DTM UART驱动程序的默认比特率是19200 bps,大多数认证的测试仪都支持。