首先谢谢大家抽空看一眼:
情况如下:
1. 我这里将一个CC2540设备作为主站不断执行一个时常为1s的扫描命令,另一个CC2540作为从站每2s定时发送1帧20位左右广播,还有一个IPhone4s设备作为从站。广播数据使用AES的CBC模式加密。
2. CC2540主站使用HostTestApp程序,使用BTool工具进行设置。从站使用keyfobdemo例程发送广播。
3. 当我仅使用主站CC2540去扫描从站CC2540时,基本可以搜索到从站设备的信息( Event: 060D)。
4. 当我将主站CC2540与IPhone4s连接上之后,很难搜索从站设备的信息,大概5%左右能收到吧。
尝试过以下的方式:
减少每帧广播的数据量,几乎没有影响。
去除AES加密过程,几乎没有影响。
延长主站搜索时间至10s,成功率大概50%。
增加从站发送帧数为每2s发4帧,成功率大概70%。
修改connection Interval,几乎没有影响。
延长主站搜索时间为6s,从站每秒发1帧广播,成功率略大于90%。
问题是:
暂时不清楚为什么为造成连接前后,搜索从站的情况不同,猜测为设备天线连接后为了发送固定的连接帧,影响了正常的搜索。
我希望能够在从站每2s发一帧的情况下,尽量缩短主站搜索的时间与搜索的成功率。
再次感谢大家~