完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-7 09:49 编辑
在zstack中,读取父设备的网络短地址很方便,可以用现成的函数extern uint16 NLME_GetCoordShortAddr( void );,或者直接拷贝osal_memcpy(pValue, &_NIB.nwkCoordAddress, sizeof(uint16)); 但是目前我想要读取设备下的子设备的短地址该怎么读呢? 比如有一个协调器,下面连了两个路由,我要如何才能在协调器程序里边读到连接在上面的两个路由的短地址? |
|
相关推荐
3个回答
|
|
如果你知道长地址的话,你可以通过下面函数来做。
afStatus_t ZDP_NwkAddrReq( uint8 *IEEEAddress, byte ReqType, byte StartIndex, byte SecurityEnable ) 如果是子节点的话,入网的时候直接有保存的 在Association list里面读取就可以了, /* * Search the Device list using extended Address. */ extern associated_devices_t *AssocGetWithExt( byte *extAddr ); 信息都保存在AssociatedDevList[x]数组中。 |
|
|
|
wenlonghbo 发表于 2018-6-6 05:08 谢谢VV的回答。如你所述,我现在直接读取的 AssociatedDevList[]. shortAddr 的值。目前遇到的问题就是关联表中的地址有可能是曾经在网络中的节点,而现在已经掉网了。而我是需要滤除这些节点的。目前采用的方法是每次读取这个关联表的时候,顺便读取AssociatedDevList[].age的值,如果这个值大于某个设定的值,我就认为是已经掉网了。请问大家,这样做是否可行?或者还有更好的办法? |
|
|
|
chm6 发表于 2018-6-6 05:23 可以的 |
|
|
|
只有小组成员才能发言,加入小组>>
TMS320F28377D:新做了以377d为芯片的板子,上电后芯片复位引脚出现方波请问如何解决?
1910 浏览 0 评论
TPS55340通电后输入端保险丝烧断,芯片输入和GND之间短路
3667 浏览 4 评论
5041 浏览 0 评论
请问如何用DM368对RGB格式的图片数据进行编码生成JPEG格式图片?
1740 浏览 1 评论
9426 浏览 8 评论
CC3100BOOST使用CC3200lunchXL进行烧录
683浏览 2评论
730浏览 1评论
TMS320F28034: 利用C2prog通过SCI给TMS320F28034烧录程序,出现错误提示:Bootloading... failed (invalid echo)!
702浏览 1评论
求DLPC350 Programmer’s Guide User's Guide 中文版说明书
1210浏览 1评论
1794浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-5-12 18:53 , Processed in 0.681748 second(s), Total 81, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号