This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

清除NV_RESTOER保存的数据

请问:

1、NV_RESTOER保存的数据有数据库NIB、设备关联表、绑定表、路由表等数据,终端设备只有清除这些信息才能重新连接网络,请问有单独清除这些表的接口吗??

2、终端设备清除NV_RESTOER保存表后重新连接网络,怎么让短地址不发生变化??

3、zigbee节点入网时,用户层可以指定一个短地址给他,不自动分配吗??

  • 问题1:

    可以使用:zgWriteStartupOptions( ZG_STARTUP_SET, ZCD_STARTOPT_DEFAULT_NETWORK_STATE );

    因为再启动后的初始化过程中,在uint8 ZDOInitDevice( uint16 startDelay )中,如果定义了NV_RESTORE,首先会从NV中读取启动条件,就是下边这一条:networkStateNV = ZDApp_ReadNetworkRestoreState();

    uint8 ZDApp_ReadNetworkRestoreState( void )
    {
    uint8 networkStateNV = ZDO_INITDEV_RESTORED_NETWORK_STATE;

    // Look for the New Network State option.
    if ( zgReadStartupOptions() & ZCD_STARTOPT_DEFAULT_NETWORK_STATE )
    {
    networkStateNV = ZDO_INITDEV_NEW_NETWORK_STATE;
    }

    return ( networkStateNV );
    }

    看它的原函数中,由于我们在NV中设置了ZCD_STARTOPT_DEFAULT_NETWORK_STATE ,因此会按一个新的网络来初始设备。

    需要注意的是,调用zgWriteStartupOptions后,需要执行以下复位指令。

    问题2:应该不行

    问题3:没这么用过

  • 数据库NIB、设备关联表、绑定表、路由表这些数据单独清除,有接口吗??,不要全部清除