Tickless Idle Mode(FreeRTOS下的实现)
一前言
目前,越来越多的嵌入式产品在开发中使用RTOS作为软件平台,同时,开发中对低功耗的要求也越来越高,这篇文档会讨论一下如何在RTOS中处理微控制器的低功耗特性。
应用中使用的RTOS一般采用基于时间片轮转的抢占式任务调度机制,一般的低功耗设计思路如下:
1,当ldle任务运行时,进入低功耗模式:
2,在适当的条件下,通过中断或者外部事件唤醒MCU.
但是,从第二点可以看出,每次当OS系统定时器产生中断时,也会将MCU从低功耗模式中唤醒,而频繁的进入低功耗模式/从低功耗模式中唤醒会使得MCU无法进入深度睡眠,对低功耗设计而言也是不合理的。
在FreeRTOS中给出了一种低功耗设计模式-Tickless Idle Mode,这个方法可以让MCU更长时间的处于低功耗模式。