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

关于使用ZDP_NwkAddrReq函数获取休眠终端的短地址

大家好,我在使用ZDP_NwkAddrReq函数通过IEEE地址获取节点短地址时遇到了问题:

需要让终端节点的-DRFD_RCVC_ALWAYS_ON=TRUE   才能成功获取到短地址。=FALSE时则不行。

想请教一下用什么办法可以用IEEE地址获取到 休眠 节点的短地址。

不管怎么样先在这里谢谢各位了!

Viki Shi:

论坛有类似问题,解答请看这边: https://www.deyisupport.com/question_answer/wireless_connectivity/zigbee/f/104/t/91221.aspx

zhibin wang:

回复 Viki Shi:

Viki Shi 你好,谢谢你在百忙之中回答我的问题。

这篇帖子我看了,原帖的发起者到最后也是遇到和我一样的疑问,按照原帖里VV说的进行操作,的确可以是在 -DRFD_RCVC_ALWAYS_ON=TRUE时获取到终端的短地址,但当 -DRFD_RCVC_ALWAYS_ON=FALSE时则没办法。

我也是着将ZDP_NwkAddrReq函数中dstAddr.addr.shortAddr=NWK_BROADCAST_SHORTADDR_DEVRXON

改为

dstAddr.addr.shortAddr = NWK_BROADCAST_SHORTADDR_DEVALL;

依旧无法实现。

zhibin wang:

回复 zhibin wang:

大家好……

请问有人知道么……

谢谢了。

VV:

回复 zhibin wang:

-DRFD_RCVC_ALWAYS_ON=FALSE的时候,你的POLL_RATE是多少,如果子设备没有向父设备进行data request的话,父设备是不会把广播数据发送给休眠的设备的。

另外父设备给子设备保存数据的最长时间是7.5s,如果超时就直接把数据丢了。

Peter Yin:

回复 VV:

关于您说的7.5s,是固定的吗?有办法修改这个timeout值吗?

zhibin wang:

回复 Peter Yin:

可以改。

在  f8wConfig.cfg 的    -DNWK_INDIRECT_MSG_TIMEOUT=

Peter Yin:

回复 zhibin wang:

您怎么确定是这个的? 默认值为7,单位应该是ms吧?

最大值是65536,怎么换算成7.5s呢?

/* Default indirect message holding timeout value: * 1-65535 (0 -> 65536) X CNT_RTG_TIMER X RTG_TIMER_INTERVAL */-DNWK_INDIRECT_MSG_TIMEOUT=7

CNT_RTG_TIMER的定义没有找到,RTG_TIMER_INTERVAL的定义为1000。

如果真的是7.5s,即使RFD_RCVC_ALWAYS_ON为false,ZE 1s查询一次,也应该能收到父节点的包啊。

jinghuan hao:

回复 zhibin wang:

怎么解决的,我也遇到这样的问题了,睡眠情况下查不到短地址,求共享方法。

赞(0)
未经允许不得转载:TI中文支持网 » 关于使用ZDP_NwkAddrReq函数获取休眠终端的短地址
分享到: 更多 (0)