我在 case ZDO_STATE_CHANGE:中通过判断DEV_NWK_ORPHAN这个状态来识别协调器是在线,但是当我的协调器断电之后,它并没有及时触发DEV_NWK_ORPHAN,而是当我终端设备发送几条消息给协调器后,这个DEV_NWK_ORPHAN才会被触发,所以想问:
1.终端设备不是会定时发送data request的吗?所以它应该很快的触发DEV_NWK_ORPHAN才对啊,而不是等我主动去给协调器发消息才能触发
2.有没有其他方法来及时判断协调器是否在线?(除了定时给协调器发送心跳包这个方法)
3.谢谢!!!!
Susan Yang:
点对点的话,您可以在应用层可以判断_NIB.nwkState的值。
typedef enum{NWK_INIT,NWK_JOINING_ORPHAN,NWK_DISC,NWK_JOINING,NWK_ENDDEVICE,PAN_CHNL_SELECTION,PAN_CHNL_VERIFY,PAN_STARTING,NWK_ROUTER,NWK_REJOINING} nwk_states_t;
Brightness L:
回复 Susan Yang:
嗯嗯,具体应该是怎么设置的呢?
Brightness L:
回复 Susan Yang:
具体怎么实现呢?