停止模式是在cortex™-m3的深睡眠模式基礎上結合了外設的時鐘控制機制,在停止模式下電壓調節器可執行在正常或低功耗模式。此時在1.8v供電區域的的所有時鐘都被停止, pll、 hsi和hse rc振盪器的功能被禁止, sram和暫存器內容被保留下來。
//thumb指令不支援彙編內聯
//採用如下方法實現執行彙編指令wfi,等待下乙個外部中斷觸發
void
wfi_set
(void
)/******************進入停止模式*********************/
void
sys_stopmode
(void
)
/*系統時鐘配置*/
void
stm32_clock_init
(u8 pll)
}/********************退出停止模式***********************/
void
sys_exitstopmode
(void
)void
exti2_irqhandler
(void
)
int
main()
key=
key_scan()
;if(key==1)
if(usart1_flag)
}}
實驗示例: STM32的3種低功耗模式
睡眠模式 核心停止,外設如nvic,系統時鐘systick仍執行。停止模式 所有時鐘都已停止 1.8v核心電源工作 pll,his和hserc振盪器功能禁止 暫存器和sram內容保留。待機模式 1.8v核心電源關閉 只有備份暫存器和待機電路維持供電 暫存器和sram內容全部丟失 實現最低功耗。在待機...
STM32開發 低功耗模式詳解(1)
很多微控制器都有低功耗模式,stm32 也不例外。當 cpu 不需繼續執行時,可以利用多個低功耗模式來節省功耗。這部分不是我負責,但是也是有必要看一下的。參看 stm32f1開發指南 庫函式版本 v3.2.pdf stm32中文參考手冊 v10.pdf 在系統或電源復位以後,微控制器處於執行狀態。當...
STM32低功耗設計
具體要點為 1 所有io管腳,如果高阻狀態埠是高電平,就設成上拉輸入,如果高阻狀態是低電平,設成下拉輸入,如果高阻是中間狀態,設成模擬輸入。這個很多人都提到過,必須的。作為輸出口就免了,待機你想輸出個什麼東西,一定要輸,硬體上加上下拉就可以了 2 兩個晶振輸入腳要remap成普通io!使用內部晶振。...