使用STM32f030使用freertos的tickless模式下的stop休眠出现任务无法执行
工程描述
1、开启tickless模式,模仿M3的空闲任务编写 portSUPPRESS_TICKS_AND_SLEEP函数进入休眠
2、使用RTC的al
ARMA中断每500ms唤醒一次,RTC中断服务函数只是清中断操作,无任何其他操作。
3、创建一个led翻转的指示灯任务, vTaskDelay(100);100ms执行一次灯的翻转
问题:
实测stop休眠电流在2ua左右,比sleep休眠的2ma小很多
问题
1、让MCU进入stop深度休眠:发现led任务执行一次后,在执行一次stop休眠后,即使RTC唤醒了MCU也无法执行LED任务,RTC中断程序正常执行,每500ms执行一次
2、让MCU进入sleep休眠:LED任务则正常执行,stop模式和sleep模式有区别?
不知道是什么原因,原子哥和其他人有遇到过类似的吗?能分享出一个带RTC唤醒的tickless程序参考下么。