博客專欄

EEPW首頁(yè) > 博客 > RTOS環(huán)境下低功耗設(shè)計(jì)思路

RTOS環(huán)境下低功耗設(shè)計(jì)思路

發(fā)布人:魚鷹談單片機(jī) 時(shí)間:2021-12-19 來(lái)源:工程師 發(fā)布文章

以下文章來(lái)源于strongerHuang ,作者strongerHuang

不知道大家有沒(méi)有做過(guò)低功耗產(chǎn)品?

低功耗產(chǎn)品看似很簡(jiǎn)單,其實(shí),要做好一款低功耗產(chǎn)品,特別是做到超低功耗,難度相對(duì)更高。

今天就來(lái)講講在RTOS環(huán)境下低功耗設(shè)計(jì)的思路。

寫在前面:編程思維

嵌入式產(chǎn)品的設(shè)計(jì)具有多樣性、定制性,很多時(shí)候都要結(jié)合需求來(lái)實(shí)現(xiàn)軟硬件設(shè)計(jì)。

可能你寫的一套軟件架構(gòu),在“近似”的產(chǎn)品中軟件架構(gòu)、代碼模塊能復(fù)用,但如果跨度較大,你的軟件架構(gòu)就不一定適用了。

但是,嵌入式軟件設(shè)計(jì)有很多地方都是相通的,也許軟件架構(gòu)雖不能用了,但設(shè)計(jì)思路同樣適用。

1.png

就好比:你學(xué)會(huì)了某項(xiàng)技能,這家公司不要你了,領(lǐng)一家公司也會(huì)要你,而兩家公司的設(shè)計(jì)的產(chǎn)品不相同。

所以說(shuō),有一個(gè)良好的編程思維很重要,包括軟件架構(gòu)、編程模塊、低耦合高內(nèi)聚等。

說(shuō)回來(lái)RTOS低功耗設(shè)計(jì)思路,常見(jiàn)的有:

普通低功耗:運(yùn)行Idle任務(wù)時(shí),進(jìn)入低功耗模式。

超低功耗:在空閑狀態(tài)進(jìn)入低功耗,通過(guò)中斷或者外部事件喚醒。

普通低功耗

普通低功耗,指處理器間歇性進(jìn)入低功耗狀態(tài),但會(huì)定期喚醒,這種功耗就做不到很低。

在RTOS中,實(shí)現(xiàn)這種普通低功耗,通常是在任務(wù)處于Idle(空閑任務(wù))中實(shí)現(xiàn)其低功耗功能。

大概示意圖:

2.png

大概意思:Idle空閑任務(wù)定期進(jìn)入低功耗,但會(huì)定期喚醒,檢測(cè)是否有更高優(yōu)先級(jí)任務(wù)響應(yīng)。在處于低功耗狀態(tài)下,也可以通過(guò)外部事件或中斷歡迎處理器。

提示:

有些RTOS可以通過(guò)“HOOK鉤子函數(shù)”進(jìn)行低功耗操作。同時(shí),有些RTOS的空閑任務(wù)可能需要進(jìn)行一些配置。

超低功耗

上面那種通過(guò)定期喚醒CPU的方式,即使沒(méi)有其他事做,CPU也要醒來(lái)“看一眼”,肯定做不到超低功耗。

要想做到超低功耗,沒(méi)事時(shí)別來(lái)打擾CPU,有才把它叫醒。

大概示意圖:

3.png

這種CPU進(jìn)入“深入低功耗”的方式,和上面不一樣,這與CPU的低功耗模式有關(guān)。

比如:睡眠、停機(jī)、待機(jī)等。不同的處理器各種低功耗模式可能有差異,具體如何實(shí)現(xiàn),如何喚醒,要結(jié)合具體CPU實(shí)現(xiàn)方法完成。

4.png

最后

低功耗產(chǎn)品的設(shè)計(jì)相對(duì)更難,需要結(jié)合軟硬件解決各種“功耗異?!钡膯?wèn)題,但整體的應(yīng)用相對(duì)不復(fù)雜。

當(dāng)然,還有更多實(shí)現(xiàn)低功耗的方法:比如降頻、0功耗待機(jī)等。歡迎大家留言說(shuō)出你產(chǎn)品低功耗是如何實(shí)現(xiàn)的。

*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。



關(guān)鍵詞: 單片機(jī)

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉