CC2640R2F蓝牙调试——更改MTU PDU大小

调试CC2640R2F,以TI官方simple_peripheral例程为基础,更改PDU大小。

采用例程调试,手机端发送和通过Notify接收的数据最大为20字节。导致这种现象的原因可参考着两篇文章:

http://leconiot.com/download/cc2640r2f/ble_stack_app/stack/le_data_length_extension/le_data_length_extension.html

https://blog.csdn.net/chengdong1314/article/details/62038429

数据长度扩展(LE Data Length Extension)功能允许LE控制器在连接状态下发送具有高达251字节的PDU。

更改程序: 

1、调整建议PDU的值。

 #define APP_SUGGESTED_PDU_SIZE 251 //default is 27 octets(TX)
 #define APP_SUGGESTED_TX_TIME 2120 //default is 328us(TX)

2、 调整MAX_PDU_SIZE的值,值可以自定义,但必须大于等于APP_SUGGESTED_PDU_SIZE的值。

// Maximum size in bytes of the BLE HCI PDU. Valid range: 27 to 255
// The maximum ATT_MTU is MAX_PDU_SIZE - 4.
#define MAX_PDU_SIZE                 251//69

3、初始化中调用参数设置函数。

HCI_LE_WriteSuggestedDefaultDataLenCmd(APP_SUGGESTED_PDU_SIZE, APP_SUGGESTED_TX_TIME);

之后将发送和接收的缓存区更改为自定义大小即可正常使用。

你可能感兴趣的:(学习)