BLE吞吐量测试
介绍
本章分别测试了TI CC2640R2F LuanchPad和LECONIOT CC2640R2F Evaluation Board开发板吞吐量。我们提供了两个例程供大家参考测试,分别是ble5_throughput_peripheral
和ble5_throughput_central
。本文最后提供了测试程序下载链接。
该工程中进行了一些修改以方便进行吞吐量测试:
- 改变项目MTU大小
- 通过消息计数器发送通知
- 增加Throughput配置文件
- 增加按键菜单
硬件环境
使用USB连接CC2640R2F Evaluation Board。确保跳线帽正确连接,如下图所示
参数修改
基本思想是不断发送GATT通知,尽可能减少开销,尽可能减少停机时间。以下参数在增加吞吐量时必须加以考虑。
ATT_MTU大小
有关最大传输单元(ATT_MTU)的说明,请参见LE Data Length Extension和 Logical Link Control and Adaptation Layer Protocol (L2CAP)。
这里定义6个Tx缓冲区,每个缓冲区251字节。用户应用程序应该根据自身堆栈情况进行分配。如果没有足够的堆栈,可以通过减少MAX_NUM_PDU
,这样可能导致吞吐量的损失。实际使用中的最坏情况是MAX_NUM_PDU
和MAX_PDU_SIZE
的乘积。设计人员应该根据设备的可用内存来平衡这些参数。