微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 关于多级父子节点,退网问题(leaving a network)

关于多级父子节点,退网问题(leaving a network)

时间:10-02 整理:3721RD 点击:

情景:父节点退网时,同时也让一级子节点退网;一级子节点退网时,也让二级子节点退网。

当父节点退网时,执行以下函数:

leaveReq.removeChildren = true;

..........................

NLME_LeaveReq( &leaveReq );

..................................

按我的理解,他会广播数据包,通知其子节点退网。

问题是:子节点收到该数据包后,相应的处理函数在哪里?因为我们是做照明,希望灯泡退网时(即恢复出厂设置)能够闪烁提示。

不知道TI是不是把这段代码封装了,不对外开放。

我自己找了一下,可能是这个API:void ZDO_LeaveInd( NLME_LeaveInd_t* ind )(等待debug确认)

问题是:即便一级子节点收到数据包,进入这个函数:void ZDO_LeaveInd( NLME_LeaveInd_t* ind )。

在这个函数内部只复位了本地设备,并没有执行NLME_LeaveReq( &leaveReq ),继续通知二级子节点。

如果是空中发出来的leave request,接收端的处理一定是ZDO_LeaveInd

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top