cc2541怎样扫描才能捕捉到所有的广播包?

2019-07-18 15:17发布

cc2541怎样扫描才能捕捉到所有的广播包?

我有个应用场景,需要所有的cc2541节点(>100个)同时收到某个特定广播(时间误差<50ms)我这样测试:
1.一个cc2541作为广播者,每20ms广播一次,算上10ms内的随机延时,广播周期在20~30ms
2.2个cc2541作为观察者,测试了每16、20、40ms扫描一次(扫描结束后立即重启扫描),TGAP_GEN_DISC_SCAN_INT和TGAP_GEN_DISC_SCAN_WIND都设为扫描周期。
结果是,观察者收到广播的时间很不固定,有时甚至超过100ms才能收到一次。
如下图所示,每收到一次,令IO翻转一次,可见收到的时间误差很大,有很多包遗漏:
[url=http://www.deyisupport.com/cfs-file.ashx/__key/communityserver-discussions-components-files/103/5684.QQ_2A62FE56_20150519154217.jpg][/url]
但是,使用pkt sniffer捕捉,却是能收到所有的包的,时间间隔是正常的20~30ms。
请问,怎样扫描才能捕捉到所有的广播包?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册 x
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
2条回答
北冥有熊
2019-07-18 17:57
sniffer和观察者不一样的,sniffer仅仅是接收帧,然后发送到PC上,不用做太多处理

观察者估计需要做一些额外数据处理的工作

一周热门 更多>