协调器HOLD_AUTO_START
你好!我在做ZigBee协调器里面加入HOLD_AUTO_START后,能够达到控制协调器不自动组网的功能,但是在使用串口发送指令调用ZDOInitDevice(0),希望控制协调器建立网络,但是发现没有作用,这是怎么回事啊?
还有我在网上看到按键控制建网的程序如下:
logicalType = ZG_DEVICETYPE_ENDDEVICE;
zb_WriteConfiguration(ZCD_NV_LOGICAL_TYPE, sizeof(uint8), &logicalType);
zb_ReadConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
startOptions = ZCD_STARTOPT_AUTO_START;
zb_WriteConfiguration( ZCD_NV_STARTUP_OPTION, sizeof(uint8), &startOptions );
zb_SystemReset();但是该部分函数在我的sample工程里面编译失败,不能使用!
然后我将函数改为
logicalType = ZG_DEVICETYPE_COORDINATOR;
osal_nv_write( ZCD_NV_LOGICAL_TYPE, 0, sizeof(uint8), &logicalType );
osal_nv_read(ZCD_NV_STARTUP_OPTION,0,sizeof(uint8), &startOptions);
startOptions = ZCD_STARTOPT_AUTO_START;
osal_nv_write( ZCD_STARTOPT_AUTO_START, 0, sizeof(uint8), &startOptions );
SystemReset();编译通过,但是还是不能控制协调器建网!
这个控制协调器建立网络的问题困扰我一天了,请求各位大神解答,谢谢了!
你好,请问你用的协议栈版本,用的哪个例程编译的Coordinator程序。
在调用ZDOInitDevice( uint16 startDelay )函数以后,打断点是否可以到ZDApp_NetworkInit( extendedDelay );
再打断点是否可以到void ZDO_StartDevice( byte logicalType, devStartModes_t startMode, byte beaconOrder, byte superframeOrder )这个函数里面。
然后是否有调用
NLME_NetworkFormationRequest( zgConfigPANID, zgApsUseExtendedPANID, zgDefaultChannelList,
zgDefaultStartingScanDuration, beaconOrder,
superframeOrder, false );