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

CC2530清除NV信息后,不能通过串口修改PANID和信道的问题

清除NV区代码如下:

if(zgWriteStartupOptions( ZG_STARTUP_SET, ZCD_STARTOPT_DEFAULT_NETWORK_STATE )==ZSUCCESS){

HalUARTWrite(0,"clear NV success",16);
}

执行完上述代码,再执行修改PANID和信道代码失效。

修改PANID代码如下:

mypanid=(uart_rdata[1]<<8) + uart_rdata[2];
osal_memcpy(&_NIB.nwkPanId,&mypanid,sizeof(uint16));
NLME_UpdateNV(0x01);
osal_nv_write(ZCD_NV_PANID, 0, osal_nv_item_len( ZCD_NV_PANID ), &zgConfigPANID);
osal_start_timerEx( SampleApp_TaskID,SAMPLEAPP_RESET_EVT,1000 );

修改信道代码如下:

mychannel=uart_rdata[1];
if(mychannel<0x0B||mychannel>0x1A){
HalUARTWrite(0,"wrong channel",13);
}
else{
_NIB.nwkLogicalChannel = mychannel;
NLME_UpdateNV(0x01);
osal_start_timerEx( SampleApp_TaskID,
SAMPLEAPP_RESET_EVT,
1000 );
}

YiKai Chen:

你這樣修改,重新組網後就會被覆蓋了吧

Viki Shi:

清除NV再次组网后,这些信息会被覆盖

YIFEI YUAN:

清除NV后PANID和信道会变成0xFEFF和00,现在是设置协调器相同的PANID和信道才会组上网。

YIFEI YUAN:

回复 Viki Shi:

清除NV后没有指定PANID和信道就组不上网了

YIFEI YUAN:

可以加入指定PANID和信道的网络吗?

Viki Shi:

回复 YIFEI YUAN:

可以,你是终端节点清除NV后,想加入指定网络结果加不进?此网络开启permit join没有啊?

YIFEI YUAN:

回复 Viki Shi:

对呀,加不进,只是打开permit join也加不进。因为现在不知道有什么问题终端运行几天后会脱网,重启后也不会重新加回去,目前只有重新烧写hex,然后通过串口再次配置终端PANID和信道,协调器打开permit join,才会加回去。

YiKai Chen:

回复 YIFEI YUAN:

你Z-Stack 版本是?

YIFEI YUAN:

回复 YiKai Chen:

2.5.1a

YiKai Chen:

回复 YIFEI YUAN:

2.5.1a很舊了,建議你更新協議棧版本

赞(0)
未经允许不得转载:TI中文支持网 » CC2530清除NV信息后,不能通过串口修改PANID和信道的问题
分享到: 更多 (0)