STM32F103C8停機低功耗設定

2021-10-04 23:35:15 字數 1018 閱讀 8479

根據專案需要選擇的是停機模式

進入停止模式之後,任何外部中斷都可以喚醒低功耗,但是需要重新配置時鐘,不然系統將以預設時鐘(沒有經過倍頻)執行。

1.進入低功耗

rcc_apb1periphclockcmd(rcc_apb1periph_pwr, enable);

pwr_enterstopmode (pwr_regulator_on,pwr_stopentry_wfi);

2.降低低功耗,需要配置沒有使用的gpio,改變它的預設配置狀態。演示狀態是關閉所有io外設,具體情況,可以自行配置

gpio_inittypedef gpio_initstructure;

rcc_ahb1periphclockcmd(rcc_ahb1periph_gpioa|rcc_ahb1periph_gpiob|rcc_ahb1periph_gpioc|rcc_ahb1pe riph_gpiod|rcc_ahb1periph_gpioh, enable);//

gpio_initstructure.gpio_pin = gpio_pin_all;

gpio_initstructure.gpio_speed = gpio_speed_50mhz;

gpio_initstructure.gpio_mode = gpio_mode_an;

gpio_init(gpioa, &gpio_initstructure);

gpio_init(gpiob, &gpio_initstructure);

gpio_init(gpioc, &gpio_initstructure);

gpio_init(gpiod, &gpio_initstructure);

3.檢查有沒有配置adc等其他的外設,一定要關閉adc等其他的外設時鐘。

4.如何進行喚醒操作?

在中斷處理函式中,進行下系統初始化就可以了。

systeminit();

如果不進行系統初始化,則以預設時鐘進行執行。

5.經過測試mcu消耗170ua。(應該還能降低到20ua,但是還是沒找出**耗電)

精準定時呼吸燈 STM32F103C8

入門stm32的第一貼 之前一直停留在51的水平,最近因為課題需要,硬著頭皮開始了stm32,主要是完成了以下學習目標 1.完成了基於庫函式的stm32軟體框架的組建 2.掌握了非中斷型的精準微秒級和毫秒級的延遲函式的使用。主函式 title 呼吸燈 author 小呼呼哈哈哈 include le...

STM32F103C8直流電機學習

電機如下 通常電機需要正反轉會需要乙個電機驅動板,電機接到電機介面。電機驅動板如下 電機狀態表如下 不同的電機驅動板可能會有略微不同,有的in1,in2之外可能還會有ena輸入訊號去pwm脈衝訊號來調速度,這個電機驅動板就沒有,就通過直接給in1,in2引腳pwm訊號,比如左輪正轉,in1輸入pwm...

stm32f103c8串列埠USART1傳送多一位元組

用uart寫了一段bootloader 遇到了乙個很奇怪的現象。如下 簡單介紹一下就是先統一配置mcu的io埠,然後配置串列埠引數,然後迴圈傳送 0 和 r 16進製制是0x30 0x0d int main void void io init void void uart init uint32 t...