先通过协调器修改终端panid,再通过串口修改协调器panid
uint8 RstFlag = 0;
void Send_PANID()
{
uint16 panid;
uint8 channel;
panid = (CMD_ID[9] << 8) + CMD_ID[10];
_NIB.nwkPanId = panid;
NLME_UpdateNV(0x01);
zgConfigPANID = panid;
osal_nv_write(ZCD_NV_PANID, 0, osal_nv_item_len( ZCD_NV_PANID ), &zgConfigPANID);
// 未验证
// channel = CMD_ID[10];
// _NIB.nwkLogicalChannel= channel;
// NLME_UpdateNV(0x01);//更新到nv
// zb_WriteConfiguration(ZCD_NV_CHANLIST,4,&_NIB.nwkLogicalChannel);
RstFlag = 2;
}
uint16 SampleApp_ProcessEvent( uint8 task_id, uint16 events )
{
static uint8 RST_Num;
`````````````
if((ZIG_STA_End.RstFlag == 1) || (ZIG_STA_End.RstFlag == 2)) //准备复位
{
DATA_PIN = !DATA_PIN; //状态灯快闪提示
if(RST_Num++ > 10)
{
RST_Num = 0;
if(RstFlag == 1)
{
zgWriteStartupOptions(ZG_STARTUP_SET, ZCD_STARTOPT_DEFAULT_NETWORK_STATE);//复位网络状态
}
else if(RstFlag == 2)
zb_SystemReset();
RstFlag = 0;
SystemReset();//系统复位
}
}
、、、、、、、、、、、、、、、、、、
}