芯片:CC2530
协议栈:z-stack3.0.2
问题:
case ZDO_STATE_CHANGE:zclGenericApp_NwkState = (devStates_t)(MSGpkt->hdr.status);// now on the networkif ( zclGenericApp_NwkState == DEV_ROUTER ){osal_stop_timerEx( zclGenericApp_TaskID, LED_BLINK_EVT );}
我在这个分支里面想要关掉一个定时器,结果失败了,但是当我用按键触发去关掉定时器的时候,结果又是成功的。我启用调试,发现在以上代码中
能进入if语句,但osal_stop_timerEx这个函数返回的值是INVALID_EVENT_ID=0x06。LED_BLINK_EVT 的值是0x0008。求解,谢谢。
Viki Shi:
仅凭这个,判断不出来啊。你用osal_get_timeoutEx能读取到信息吗
YiKai Chen:
关掉一个定时器,结果失败了是什麼意思?
user6069081:
回复 YiKai Chen:
就是没有停止LED_BLINK_EVT这个事件
YiKai Chen:
回复 user6069081:
查一下是不是其他地方又有启动LED_BLINK_EVT
user6069081:
回复 YiKai Chen:
请问NLME_LeaveReq这句原语会离网之后重启系统吗?
YiKai Chen:
回复 user6069081:
NLME_LeaveReq本身不會重启系統、但是一般系統程序可能在調用NLME_LeaveReq後会重启系統
user6069081:
回复 YiKai Chen:
1.请问我调用了NLME_LeaveReq之后为何系统重启了?
2.重启之后NV的值请问是多少?
YiKai Chen:
回复 user6069081:
1. 設個斷點在ZDO_LeaveInd和ZDApp_LeaveReset里去調是看看是不是NLME_LeaveReq之后被觸發了,所以系统重启
2. 不清楚你的問題是問什麼