zigbee Z-Stack 3.0.1 利用广播的方式修改信道

TI的zigbee协议栈的默认信道是11,如何快速修改为15信道呢?

方法就是给0xFFFF发送广播,来进行修改。

调用MTsys.c里面提供的MT_ZdoMgmtNwkUpdateRequest函数,给出合理的参数,ZNP上会自动发送广播给所有节点之后,然后再修改自己的信道。最后所有节点都完成了信道的修改。

MgmtNwkUpdateReqFormat_t req;
req.DstAddr=0xFFFF;
req.DstAddrMode=AddrBroadcast;
req.ChannelMask[0]=BREAK_UINT32(newChanList,0);
req.ChannelMask[1]=BREAK_UINT32(newChanList,1);
req.ChannelMask[2]=BREAK_UINT32(newChanList,2);
req.ChannelMask[3]=BREAK_UINT32(newChanList,3);
req.ScanDuration=0xFE;      //Request is to change Channel
req.ScanCount=0;                //don't care
req.NwkManagerAddr=0;       //don't care
zdoMgmtNwkUpdateReq(&req);

zigbee Z-Stack 3.0.1 利用广播的方式修改信道_第1张图片

你可能感兴趣的:(嵌入式软件)