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

CC2540连接后,扫描其他从站问题

首先谢谢大家抽空看一眼:

情况如下:

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发一帧的情况下,尽量缩短主站搜索的时间与搜索的成功率。

再次感谢大家~

George Peter:

暂时不清楚为什么为造成连接前后,搜索从站的情况不同,猜测为设备天线连接后为了发送固定的连接帧,影响了正常的搜索。首先肯定和天线无关了。你这样的意思是从站和IPhone4s所接收的帧的大小(格式)并不一样咯?建议使用Struct的包,有可能从站在没有收到正常包后处理过程中跑飞了?特别是你从站周期间是在做什么?睡眠吗?

Gavin Xu:

回复 George Peter:

从站周期内的确是运行在睡眠状态的,但是我使用sniffer查看时,每一帧都是可以被监测到的。

我从站和主站也不需要连接,仅仅需要搜索到设备以及处理广播数据。

关于我猜测的天线问题我是这样理解的:

因为数据发送和接收信息都是使用同一根天线,那么当主站和IPhone连接上之后,因为主从站会持续发送保持连接的帧(connection events),当然这个发送的帧的间隔可以设置。那么在天线持续工作的情况下,又需要去搜索其他设备,特别是从站每2s仅发送一帧的情况下,是否会造成信号的冲突?虽然广播和数据走的不同的通道。

不是太清楚你说Struct指的是什么?我发送广播的时候是修改一个advertData[]这个数组,然后更新广播信息并发送广播。

Gavin Xu:

回复 George Peter:

我的主站不进入睡眠模式,会一直执行一个扫描广播的命令。

从站是发完广播命令就进入睡眠模式。

我原来的机制仅仅是从站发广播,主站去扫描广播信息而已。

而你说的另一个网络架构相当于在2个设备之间加入了一定的反馈机制,有点类似于主站使用Active Scanning模式。

我想你的ED端应该是我这里的从站(抱歉我对专业术语的了解程度不是很好),你说ED端醒来先发送数据给AP端,这个应该是通过广播发送的,我担心的就是这个广播数据主站在连接后貌似接收不到。

因为我想要从站的功耗做的尽量小,最好能够使用纽扣电池运行6个月以上,不过我会具体尝试一下你的方法,谢谢。

George Peter:

回复 Gavin Xu:

是的,如果你要考虑省电,当然尽量让ED待在PM0模式下的时间尽量短吧?我给你的那个方案你可以考虑下,或者你看看你的情况还能不能优化。

赞(0)
未经允许不得转载:TI中文支持网 » CC2540连接后,扫描其他从站问题
分享到: 更多 (0)