1、通用低功耗模式
如果使用通用低功耗模式的話每個(gè)滴答定時(shí)器中斷都會(huì)將處理器從低功耗模式中喚醒,以(1)為例,再 T2 時(shí)刻處理器從低功耗模式中喚醒,但是接下來(lái)由于沒(méi)有就緒的其他任務(wù)所以處理器又再一次進(jìn)入低功耗模式。T2、T3 和 T4 這三個(gè)時(shí)刻都一樣,反復(fù)的進(jìn)入低功耗、退出低功耗,最理想的情況應(yīng)該是從 T1 時(shí)刻就進(jìn)入低功耗,然后在 T5 時(shí)刻退出。
在(2)中空閑任務(wù)只工作了兩個(gè)時(shí)鐘節(jié)拍,但是也執(zhí)行了低功耗模式的進(jìn)入和退出,顯然這個(gè)意義不大,因?yàn)檫M(jìn)出低功耗也是需要時(shí)間的。
(3)中空閑任務(wù)在 T12 時(shí)刻被某個(gè)外部中斷喚醒,中斷的具體處理過(guò)程在任務(wù) 2(使用信號(hào)量實(shí)現(xiàn)中斷與任務(wù)之間的同步)。
2、低功耗 Tickless 模式
在(1)中的 T1 時(shí)刻處理器進(jìn)入低功耗模式,在 T5 時(shí)刻退出低功耗模式。相比通用低功耗模式少了 3 次進(jìn)出低功耗模式的操作。
在(2)中由于空閑任務(wù)只運(yùn)行了兩個(gè)時(shí)鐘節(jié)拍,所以就沒(méi)必要進(jìn)入低功耗模式。說(shuō)明在Tickless 模式中只有空閑任務(wù)要運(yùn)行時(shí)間的超過(guò)某個(gè)最小閾值的時(shí)候才會(huì)進(jìn)入低功耗模式,此閾值通過(guò) configEXPECTED_IDLE_TIME_BEFORE_SLEEP 來(lái)設(shè)置。
(3)中的情況和通用低功耗模式一樣。
可以看出相對(duì)與通用低功耗模式,FreeRTOS 自帶的 Tickless 模式更加合理有效,所以如果有低功耗設(shè)計(jì)需求的話大家盡量使用 FreeRTOS 再帶的 Tickless 模式。當(dāng)然了,如果對(duì)于功耗要求不嚴(yán)格的話通用低功耗模式也可以使用。
-
嵌入式
+關(guān)注
關(guān)注
5149文章
19659瀏覽量
317349 -
低功耗
+關(guān)注
關(guān)注
11文章
2804瀏覽量
104913 -
FreeRTOS
+關(guān)注
關(guān)注
12文章
493瀏覽量
64299
發(fā)布評(píng)論請(qǐng)先 登錄
【安富萊】【RTX操作系統(tǒng)教程】第24章 RTX低功耗之tickless模式less模式
第30章 FreeRTOS低功耗之睡眠模式
第32章 FreeRTOS低功耗之待機(jī)模式
第33章 FreeRTOS低功耗之tickless模式
第24章 RTX低功耗之tickless模式
RTOS低功耗設(shè)計(jì)原理及實(shí)現(xiàn)_TicklessMode(FreeRTOS的實(shí)現(xiàn))
適用于μC/OS-II的低功耗模式
如何在STM32上使用FreeRTOS的Tickless
4.低功耗設(shè)計(jì)-stm32低功耗模式

STM32與FreeRTOS實(shí)現(xiàn)低功耗

STM32L4 運(yùn)行FreeRTOS之STOP2低功耗模式

在STM32上使用FreeRTOS的Tickless(停止模式)

freeRTOS中空閑任務(wù)的作用

評(píng)論