打印
[电源]

在CC2430上使终端设备依据特定的PAN ID入网二

[复制链接]
1450|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
teet|  楼主 | 2011-10-9 13:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
解决方法和实际代码

对刚才提及的代码段,增加终端对返回的网络信息描述结构的查询。



在ZDApp.c中修改ZDApp_event_loop()函数,在调用ZDO_StartDevice(…)之前,亦即在终端设备扫描网络和请求入网前增加一段代码。当终端和协调器PAN ID不同,并且是再继续模式时,重新搜索是否有与PAN ID相同的协调器,而不请求人网。



这样就使得终端有协调器可挑选了。

关于如何修改PAN ID,给出代码如下(该代码为协调器和终端通用的。_NIB是和网络相关的全局结构体):



另外非协调器设备在初始化时,应该增加如下的代码(gu16RecBuffLen为自定义的16位整型数):



通过对扫描网络结果处理函数的分析,研究扫描网络和请求人网前的程序段。在程序段中增加一个对终端是否检索到特定PAN ID的协调器的逻辑变量。最后在程序中增加未检索到特定PAN ID的协调器时不请求入网的代码,以达到终端选择协调器入网的目的。经实验,在现场有数个不同PAN ID的协调器的情况下,终端设备只加入特定的协调器.

相关帖子

沙发
3B1105| | 2011-10-9 23:30 | 只看该作者
发错版了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

828

帖子

1

粉丝