STM32應用 第7節 低功耗設計

2021-09-02 20:10:58 字數 770 閱讀 8812

隨著電池供電的應用場景越來越對,非常有必要深入理解和應用stm32的低功耗設計。

程式執行過程中,呼叫__wfi();命令,即可進入睡眠模式。

wfi可以通過任意中斷喚醒,這裡採用按鍵中斷喚醒。

//pa15

void exti15_10_irqhandler(void)

exti_clearitpendingbit(exti_line15); //清除line15線路掛起位

}

喚醒後,程式從wfi下一行開始執行。

while(1)

程式僅僅用了兩個硬體管腳:

進入睡眠模式呼叫wfi,而進入停止模式則呼叫函式。

pwr_enterstopmode(pwr_regulator_lowpower,pwr_stopentry_wfi);
這個函式在stm32f10x_pwr.c中定義。在進入停止模式時,需要先設定一些內部暫存器,以確保功耗最低。

離開停止模式時,預設時鐘為hsi內部時鐘,因此需要重新配置時鐘。

停止模式下,恢復時,也是從下一行**開始執行。

STM32低功耗設計

具體要點為 1 所有io管腳,如果高阻狀態埠是高電平,就設成上拉輸入,如果高阻狀態是低電平,設成下拉輸入,如果高阻是中間狀態,設成模擬輸入。這個很多人都提到過,必須的。作為輸出口就免了,待機你想輸出個什麼東西,一定要輸,硬體上加上下拉就可以了 2 兩個晶振輸入腳要remap成普通io!使用內部晶振。...

STM32低功耗模式 停止模式

停止模式是在cortex m3的深睡眠模式基礎上結合了外設的時鐘控制機制,在停止模式下電壓調節器可執行在正常或低功耗模式。此時在1.8v供電區域的的所有時鐘都被停止,pll hsi和hse rc振盪器的功能被禁止,sram和暫存器內容被保留下來。thumb指令不支援彙編內聯 採用如下方法實現執行彙編...

再調stm32產品低功耗

最近入職了乙個公司,沒想到又是接到調低功耗的任務!拿到公司的板子,第乙個事情是熟悉公司的硬體電路圖,把板子上的晶元捋清楚,查查它們的靜態工作電流,大概率會找到偷功耗的小偷,同時把這些資訊整理成乙個文件,表面工作尤其重要 功耗沒調下來,文件先輸出,顯得你工作做事有邏輯!第二個事情 做最小系統板,開始吹...