CC2530接受信息问题
时间:10-02
整理:3721RD
点击:
协议栈:ZSTACK 2.5.0
睡眠设备 POLL_RATE:1000ms
测试时发现:10个睡眠设备在接收协调器(父节点)的广播包时,有一个设备没能接收到。协调器清除NV后重新发送广播包,所有设备都能接收到。
问题:1.为什么会出现测试的情况?
2.CC2530协调器在POLL_RATE 为1S情况,大概能挂在多少个?
3.协调器(父节点)缓存给子节点的信息在那个参数能找到?
睡眠设备 POLL_RATE:1000ms
测试时发现:10个睡眠设备在接收协调器(父节点)的广播包时,有一个设备没能接收到。协调器清除NV后重新发送广播包,所有设备都能接收到。
问题:1.为什么会出现测试的情况?
2.CC2530协调器在POLL_RATE 为1S情况,大概能挂在多少个?
3.协调器(父节点)缓存给子节点的信息在那个参数能找到?
1,由于节点开启了休眠功能,那么节点发送Data request以后Rx打开的时间比不休眠的时候肯定要短,所以你的10个节点同时data request请求数据的时候,由于碰撞重发,有可能那时候节点已经进入休眠了。
我原本也以为是通信的原因。但是后来我把别的睡眠设备全断电后,发现有问题的睡眠设备也还是收不到广播包。协调器的超时时间也是设置了7s。所以我怀疑是不是协议栈中有某个数组用于暂存了给睡眠设备的信息。但是这个数组大小受到限制,比如只支持9个睡眠设备的的暂存信息。第10个设备就无法收到。这也是我问第三个问题的原因。协议栈中是否有这样的一个数组。