协议栈1.2.2a,协调器收到串口数据然后广播到终端,终端串口数据输出数据;目前问题现象在于通过串口给协调器发送数据广播,大概率会丢包,整个包就消失了,而且广播的包也是要隔一秒左右才收到,抓包数据见附件,最后才是的丢包前的最后一帧抓包数据。。麻烦大神帮忙分析一下。20200615ng.7z
Viki Shi:
看抓包数据没什么问题啊,都有acknowledgement
user6336125:
回复 Viki Shi:
你可以看看11:10:47.729988这条协调器向广播地址发送数据之后就没有广播到终端的那个数据帧了,往上一点都是两条数据帧,一条协调器到广播地址另一条广播地址到终端地址的,问题很奇怪;反过来终端发给协调器就基本上没有这个问题。
编译定义:
NV_INIT
MAKE_CRC_SHDW
xMT_TASK
xMT_SYS_FUNC
xMT_UTIL_FUNC
xMT_ZDO_FUNC
xNV_RESTORE
NWK_AUTO_POLL
HAL_UART=TRUE
SERIAL_APP_PORT=0
ZTOOL_P1
xPOWER_SAVING
YiKai Chen:
回复 user6336125:
终端會進入休眠,在休眠的時候是收不到广播的
user6336125:
回复 YiKai Chen:
终端没有设置休眠,POWER_SAVING是注释掉的,现在就是协调器给终端发数据大概率丢失一帧数据
user6336125:
回复 YiKai Chen:
感谢大神,问题解决了!!!还有一个小问题,终端给协调器广播数据,自身如何避免收到自身数据呢?
user6336125:
回复 Viki Shi:
明白,谢谢
YiKai Chen:
回复 user6336125:
加上sequence number去濾除就好
user6336125:
回复 YiKai Chen:
明白,谢谢