各位专家,
先说背景:CC2530, 协调器+路由,无终端,开启INTER_PAN,光伏系统
再说故障:我们一150个路由的系统中出现个别节点的PANID和信道恢复至默认状态的情况,现在想实现通过串口配置路由的PANID和信道。
问题:当路由节点已入网,可实现串口配置其PANID和信道。但如果路由是刚烧完程序的未入网状态,就无法通过串口对其进行配置。
问:该如何实现上述功能?
盼回复!
Yue TANG:
未入网就无法通过串口配置?请详细说明下。
Sfei:
回复 Yue TANG:
路由烧完固件后上电,
通过抓包知道路由一直发beacon request,
通过串口配置其panid和信道一直无效,不会却换到其他信道,
此时我将协调器上电,路由入网之后就能通过串口配置其信道和panid了
Sfei:
回复 Yue TANG:
我通过串口配置的是其NIB属性里的panid和信道,
_NIB.nwkPanId = (pDat[6]<<8 | pDat[7]); if( pDat[8]>=0x0B && pDat[8]<=0x1A) _NIB.nwkLogicalChannel = pDat[8];
这样的配置是否不恰当?
Colin Ye:
回复 Sfei:
在
_NIB.nwkPanId = (pDat[6]<<8 | pDat[7]);if( pDat[8]>=0x0B && pDat[8]<=0x1A)_NIB.nwkLogicalChannel = pDat[8];
后面加上这个试试
NLME_UpdateNV(NWK_NV_NIB_ENABLE);
还不行再加
SystemResetSoft(); //软复位
试试
Sfei:
回复 Colin Ye:
你说的那两条语句我都是加了的,这只对已入网的路由才有效,
我觉得是因为没有入网,所以reset之后根本不会去读取NIB里面的参数,就是直接使用程序中默认的PANID和信道