协调器每30ms向终端节点发送一帧数据,当终端节点接收到80帧数据后,就不能成功接收数据。需要间隔很长时间才能恢复接收。
通过SmartRF Packet Sniffer抓包测试,发现协调器是能够正常发送数据的,而且所有的数据都被SmartRF Packet Sniffer接收到。没有出现发送80帧数据,就失败的情况。
我修改过,_NIB.BroadcastDeliceryTime、_NIB.PassiveAckTimeout、_NIB.MaxBroadcastRetries和-DMAX_BCAST四个参数,现在参数值是7,1,0和40。也就是说,现在是700ms能发送40个数据包,发送失败不会重发。
经过试验,我把-DMAX_BCAST改成30后,失败频率变为60帧数据失败一次。所以我判断失败次数和-DMAX_BCAST有关系。
多谢阅读我的问题,期待问题的解答。