微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 协调器HOLD_AUTO_START

协调器HOLD_AUTO_START

时间:10-02 整理:3721RD 点击:

      你好!我在做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 );

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top