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

CC2640F2F 能够发送超过20个字节的数据, 60个字节发送正常,当发送长度设置成100, 或者更大的时候,手机端连上后就收不到数据了

我是在simplelink_cc2640r2_sdk_ble_example_pack_1_40_00_50  这个sdk的这个目录下的

C:\ti\simplelink_cc2640r2_sdk_ble_example_pack_1_40_00_50\examples\rtos\CC2640R2_LAUNCHXL\ble5apps\heart_rate

heart_rate例程上调试的。

修改PDU代码如下:

uint16_t cxnHandle; //Request max supported size
uint16_t requestedPDUSize = 251;
uint16_t requestedTxTime = 2120;

GAPRole_GetParameter(GAPROLE_CONNHANDLE, &cxnHandle); //This API is documented in hci.h

HCI_LE_SetDataLenCmd(cxnHandle, requestedPDUSize, requestedTxTime);

BLE5.0 发送大于20字节数据, 除了设定pdu的长度外,还有哪些其他要注意的么?

现在困惑的是,既然能够发送大于20字节的,为啥达到80字节这个长度就不行了呢?

user1388075:

80100 200240都试过,不行。 30 40 60 个字节都是可以正常收到数据没有问题的

Kevin Qiu1:

回复 user1388075:

看一下MTU的大小设置,dev.ti.com/…/index.html

user1388075:

回复 Kevin Qiu1:

uint16_t cxnHandle; //Request max supported size
uint16_t requestedPDUSize = 251;
uint16_t requestedTxTime = 2120;

GAPRole_GetParameter(GAPROLE_CONNHANDLE, &cxnHandle); //This API is documented in hci.h

HCI_LE_SetDataLenCmd(cxnHandle, requestedPDUSize, requestedTxTime);

上面这个不是的么?

你给的那个链接好长,能列出具体相关的代码么

user1388075:

回复 Kevin Qiu1:

#define GATT_MAX_MTU0xFFFF //!< Maximum MTU size
在工程里面搜到了这个,不知道是不是?

但是这里为啥是0XFFFF

Kevin Qiu1:

回复 user1388075:

在 the stack章节里面的Logical Link Control and Adaptation Layer Protocol (L2CAP)中

user1388075:

回复 Kevin Qiu1:

就不能直接贴点代码么

Kevin Qiu1:

回复 user1388075:

看下这里的方法:blog.csdn.net/…/76814107

赞(0)
未经允许不得转载:TI中文支持网 » CC2640F2F 能够发送超过20个字节的数据, 60个字节发送正常,当发送长度设置成100, 或者更大的时候,手机端连上后就收不到数据了
分享到: 更多 (0)