微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > 两个cc2541通信,主机使用GATT_WriteLongCharValue发送3个数据包,从机只接收到一个

两个cc2541通信,主机使用GATT_WriteLongCharValue发送3个数据包,从机只接收到一个

时间:10-02 整理:3721RD 点击:

使用2个CC2541通信,

主机使用GATT_WriteLongCharValue分包发送252字节数据,3个数据包(90+90+72)。通过SmartRF Packet Sniffer看发送成功。

从机simpleProfileChangeCB中使用SimpleProfile_GetParameter获取value值,只捕获到一个数据包。

是否还需要其他设置,麻烦帮忙看下。

谢谢!

测试几次?都是这个结果吗?

测试了好多次,都是一样的结果。是不是代码中有的控制开关没打开?


后来我对偏移量offset做修改,发送数据包时,offset+已发数据包的大小。从机仍然只是接收到了一个数据包。
simpleProfileChangeCB和SimpleProfile_GetParameter只调用了一次, 打印value的大小,只打印了一次,90。

从机使用低功耗没有?收到的是哪个包?还有蓝牙通信间隔时间是多少?

通常都是每包20个字节,建议使用notify

您好,

1.从机使用的是低功耗。

2.收到的是应该是前两个包中的一个吧,我光打印了value的长度,是90。没有打印内容,我等下打印下看看。

3.蓝牙的通信间隔没有改过。应该是原声的(100ms ~ 1s)

4.我这边是Client端发送大数据给Server端

使用的GATT_WriteLongCharValue发送最大包90个字节,

发现在simpleProfileChangeCB中串口打印value的长度,只有72个。如果不打印数值变量,长度范围是正确的。。。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top