TI中文支持网
TI专业的中文技术问题搜集分享网站

CC2650 要发送超过20字节数据的注意事项

build_config.opt里面的配置应该选哪一项?

/* BLE v4.2 Features */
/* -DBLE_V42_FEATURES=SECURE_CONNS_CFG+PRIVACY_1_2_CFG+EXT_DATA_LEN_CFG */
/* -DBLE_V42_FEATURES=SECURE_CONNS_CFG+PRIVACY_1_2_CFG */
/* -DBLE_V42_FEATURES=PRIVACY_1_2_CFG+EXT_DATA_LEN_CFG */
/* -DBLE_V42_FEATURES=SECURE_CONNS_CFG+EXT_DATA_LEN_CFG */
/* -DBLE_V42_FEATURES=SECURE_CONNS_CFG */
/* -DBLE_V42_FEATURES=PRIVACY_1_2_CFG */
/* -DBLE_V42_FEATURES=EXT_DATA_LEN_CFG */

目前选择的是:

 -DBLE_V42_FEATURES=SECURE_CONNS_CFG 

即是把这一行的注释去掉

Viki Shi:

EXT_DATA_LEN_CFG 的功能需要加上

user1388075:

回复 Viki Shi:

-DBLE_V42_FEATURES=SECURE_CONNS_CFG+EXT_DATA_LEN_CFG

这样?

Viki Shi:

CC26X0上使用DLE的具体操作请参考如下文档的Data Length Update Procedure一节

SWRU393_CC2640_BLE_Software_Developer's_Guide.pdf

Viki Shi:

回复 user1388075:

可以,要使用DLE,EXT_DATA_LEN_CFG必须有,其他功能你看着选

user1388075:

回复 Viki Shi:

然后:
ble_user_config.h 里面:
// Maximum size in bytes of the BLE HCI PDU. Valid range: 27 to 255
// The maximum ATT_MTU is MAX_PDU_SIZE – 4.
#ifndef MAX_PDU_SIZE
#if defined(BLE_V42_FEATURES) && (BLE_V42_FEATURES & SECURE_CONNS_CFG)#define MAX_PDU_SIZE69
#else#define MAX_PDU_SIZE27
#endif //(BLE_V42_FEATURES & SECURE_CONNS_CFG)
#endif

然后,在初始化里面添加:
#define APP_SUGGESTED_PDU_SIZE 69//251 //default is 27 octets(TX)#define APP_SUGGESTED_TX_TIME 2120 //default is 328us(TX)
// This API is documented in hci.h// See BLE5-Stack User's Guide for information on using this command:// software-dl.ti.com/…/data-length-extensions.htmlHCI_LE_WriteSuggestedDefaultDataLenCmd(APP_SUGGESTED_PDU_SIZE, APP_SUGGESTED_TX_TIME);

user1388075:

回复 Viki Shi:

if (HeartRate_MeasNotify(gapConnHandle, &heartRateMeas) != SUCCESS){GATT_bm_free((gattMsg_t *)&heartRateMeas, ATT_HANDLE_VALUE_NOTI);}else{}

一直处于发送失败的状态。数据出不来

user1388075:

回复 Viki Shi:

我就是照着这个章节操作的,但是达不到预期的效果。

Viki Shi:

回复 user1388075:

稍等我测一下

Viki Shi:

回复 Viki Shi:

实测可正常更新data length:

user1388075:

回复 Viki Shi:

你这个data lenth是怎么更新的? MTU update?

赞(0)
未经允许不得转载:TI中文支持网 » CC2650 要发送超过20字节数据的注意事项
分享到: 更多 (0)