osal_run_system是循环执行,一旦没有了task events 就会进入休眠:osal_pwrmgr_powerconserve();,但是很快又离开休眠模式,osal_pwrmgr_powerconserve();中有段这个代码:
next = osal_next_timeout();
OSAL_SET_CPU_INTO_SLEEP( next );
现在的问题是,osal_pwrmgr_powerconserve();是在OSAL主循环中的,看到的现象就是当人工没有任何操作后,遥控器(开发板)不断地进入休眠并离开休眠,频率很高(开发板的led灯闪烁)。那么问题来了:
1. 假设,感觉是某些系统的事件不断被触发去做事情,导致不断离开休眠又进入休眠。而这个事情我又找不到在哪,如果假设成立怎么解决?
2. 现在想要让它稳定的进入休眠模式(不可以高频被触发激活),即通过一个自定的定时来让它进入休眠。怎么做?
3. 关于2的问题我的理解: 可不可以把主循环中的osal_pwrmgr_powerconserve();移到zll_sampleremote.c或者zll_initiator.c中,自定义一个event,定个时触发休眠模式。这么做可以吗?
