微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2541 notify 1个间隔4个packet

CC2541 notify 1个间隔4个packet

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

hello,

  各位工程师,
现在遇到一个问题,如下:

设置:>>   因为需要很多数据传输,特别设置了30ms的连接间隔,1个间隔4个包,每个包20个字节;

现象:>>   但是在实际传输过程中,发现实际每个间隔平均只成功发送了3个包,如果每个包发送的数据为2个字节,则每次发送都ok。

疑惑:>>   请问这种现象是什么原因导致的?如何解决?


谢谢!

用的什么版本的协议栈?

下面的例子实验过,可以一个间隔发4个。你也可以通过函数的返回值,判断是什么原因造成的?

http://processors.wiki.ti.com/index.php/SerialBLEbridge_V_1.4.1

里面也提到了一些注意事项,比如

  • Prevent the CPU from halting during RF activity.  This is absolutely necessary so and is accomplished via HCI_EXT_HaltDuringRfCmd(HCI_EXT_HALT_DURING_RF_DISABLE);

TY,

谢谢你的回复,

1.  我用的是 1.4.2的最新的协议栈。

2.  我测试用例已经添加了 HCI_EXT_HaltDuringRfCmd(HCI_EXT_HALT_DURING_RF_DISABLE);

3. 1个包的字节数比较少时,是可以每次都是4个包,但是都是20字节时,平均下来就只有3个包了。

4. 我测试发现 添加  HCI_EXT_OverlappedProcessingCmd(HCI_EXT_ENABLE_OVERLAPPED_PROCESSING); 就可以每次4个包且每个包都是20字节。

备注:

测试环境 1. cc2541开发板

      2. TI 1.4.2协议栈

      3. 苹果5s lightblue

      4. 连接间隔 30ms

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

网站地图

Top