FreeRTOS 低功耗之停機模式

2022-05-14 12:30:16 字數 1863 閱讀 3230

以下**自安富萊電子: 

stm32f103 如何進入停機模式

在 freertos 系統中,讓 stm32 進入停機模式比較容易,呼叫韌體庫函式 pwr_enterstopmode

即可,不過要注意:為了進入停機模式,所有的外部中斷的請求位(掛起暫存器(exti_pr))和 rtc 的鬧鐘

標誌都必須被清除,否則停止模式的進入流程將會被跳過,程式繼續執行。

stm32f103 如何退出停機模式

由於我們是採用指令 wfi 指令進入停機模式,那麼設定任一外部中斷線 exti 為中斷模式並且在 nvic

中必須使能相應的外部中斷向量,就可以使用此中斷喚醒停機模式。

在開發板上面是將實體按鍵 k2 對應的引腳設定為中斷方式觸發。按下此按鍵會將系統從停機模式喚

醒。stm32f103 使用停機模式注意事項

使用停機模式注意以下兩個問題:

 進入停機模式前,一定要關閉滴答定時器,實際測試發現滴答定時器中斷也能喚醒停機模式。

 當乙個中斷或喚醒事件導致退出停機模式時,hsi rc 振盪器被選為系統時鐘。 這個時候使用者要根據

需要重新配置時鐘,如果使用的 hse 時鐘,那麼要重新配置並使能 hse 和 pll。

stm32fxx 如何進入停機模式

在 freertos 系統中,讓 stm32 進入停機模式比較容易,呼叫韌體庫函式 pwr_enterstopmode

即可,不過要注意:為了進入停機模式,所有 exti 線掛起位(在掛起暫存器 (exti_pr)中)、 rtc 鬧鐘

(鬧鐘 a 和鬧鐘 b)、 rtc 喚醒、 rtc 入侵和 rtc 時間戳標誌必須復位,否則停機模式的進入流程將會被

跳過,程式繼續執行。

stm32f4xx 如何退出停機模式

由於我們是採用指令 wfi 指令進入停機模式,那麼設定任一外部中斷線 exti 為中斷模式並且在 nvic

中必須使能相應的外部中斷向量,就可以使用此中斷喚醒停機模式。

在開發板上面是將實體按鍵 k2 對應的引腳設定為中斷方式觸發,按下此按鍵會將系統從停機模式喚

醒。stm32f4xx 使用停機模式注意事項

使用停機模式注意以下兩個問題:

 進入停機模式前,一定要關閉滴答定時器,實際測試發現滴答定時器中斷也能喚醒停機模式。

 當乙個中斷或喚醒事件導致退出停機模式時,hsi rc 振盪器被選為系統時鐘。 這個時候使用者要根據

需要重新配置時鐘,如果使用的 hse 時鐘,那麼要重新配置並使能 hse 和 pll。

如何有效降低停機模式下的功耗

設計低功耗主要從以下幾方面著手:

 注意 i/o 的狀態。 因為在停機狀態下,所有的 i/o 引腳都保持它們在執行模式時的狀態。

 如果此 i/o 口帶上拉,請設定為高電平輸出或者高阻態輸入。

 如果此 i/o 口帶下拉,請設定為低電平輸出或者高阻態輸入。

 注意 i/o 和外設 ic 的連線。

 測試低功耗的時候,一定不要連線偵錯程式,更不能邊除錯邊測電流。

f429

關於低功耗的停機模式說明:

(1) 停機模式是在 cortex-m4f 的深睡眠模式基礎上結合了外設的時鐘控制機制,在停機模式下

電壓調節器可執行在正常或低功耗模式。此時在 1.2v 供電區域的的所有時鐘都被停止,pll、

hsi 和 hse 的 rc 振盪器的功能被禁止,sram 和暫存器內容被保留下來。

(2) 在停機模式下,所有的 i/o 引腳都保持它們在執行模式時的狀態。

(3) 一定要關閉滴答定時器,實際測試發現滴答定時器中斷也能喚醒停機模式。

(4) 當乙個中斷或喚醒事件導致退出停機模式時, hsi rc 振盪器被選為系統時鐘。

(5) 退出低功耗的停機模式後,需要重新配置使用 hse。

FreeRTOS 低功耗之 tickless 模式

反映在 freertos 上,tickless 又是怎樣一種情況呢?我們都知道,當使用者任務都被掛起或者阻塞時,最低優先順序的空閒任務會得到執行。那麼 stm32 支援的睡眠模式,停機模式就可以放在空閒任務裡面實現。但是,為了實現低功耗最優設計,我們還不能直接把睡眠或者停機模式直接放在空閒任務裡。進...

FreeRTOS 低功耗之待機模式

stm32f103 如何進入待機模式 在 freertos 系統中,讓 stm32 進入待機模式比較容易,呼叫韌體庫函式pwr enterstandbymode 即可。stm32f103 如何退出待機模式 讓 stm32 從待機模式喚醒可以通過外部復位 nrst 引腳 iwdg 復位 wkup 引腳...

第22章 RTX 低功耗之停機模式

以下內容 自安富萊電子 stm32f103 停機模式介紹 本章節我們主要講解停機模式,停機模式是在 cortex m3 的深睡眠模式基礎上結合了外設的時鐘 控制機制,在停止模式下電壓調節器可執行在正常或低功耗模式。此時在 1.8v 供電區域的的所有時鐘都 被停止,pll hsi 和 hse rc 振...