8STM32(stdl)低功耗模式

一、PWR简介

PWR负责stm32内部的电源供电,可以检测电压和执行低功耗模式。

低功耗模式:睡眠模式、停机模式、待机模式(standby),可以降低单片机功耗。需要考虑关闭那些硬件,关闭越多越省电。

二、stm32电源框图

Vdda负责模拟电路供电,Vbat负责后备供电,Vdd负责数字部分供电。

​三、三种低功耗模式的工作简介

降低功耗的方式:1.关闭时钟,程序暂停,数据在寄存器中保存不丢失2.关闭电源,数据丢失。

(一)睡眠

WFI进入后,可以由任一个中断唤醒,唤醒后从中断开始执行;WFE进入后,可以由唤醒事件唤醒,唤醒后从睡眠的地方继续执行。

(二)停机

停机模式进入选择的WFI还是WFE和唤醒选取的外部中断有关。

(三)待机

只有少量指定的唤醒条件。

(四)寄存器与电路功能的对应

其他寄存器的配置必须在WFI、WFE之前。

需要再中断函数中实现睡眠功能,需要考虑配置:sp=0,st=1。

(五)整体介绍

1.睡眠模式:执行WFI或者WFE后,STM32进入睡眠模式,程序暂停,唤醒后从暂停的地方运行。SLEEPONEXIT决定是立即睡眠还是处理完中断后再睡眠。唤醒方式:

2.停止模式:执行WFI或者WFE后,STM32进入睡眠模式,程序暂停,唤醒后从暂停的地方运行。SRAM和寄存器供电被保留来储存数据,其他供电禁止。中断唤醒WFI,事件唤醒WFE。

此时IO引脚保持暂停前的运行状态。

唤醒后默认使用HSI(内部高速时钟),需要软件重新设置主频。

如果停止模式开启电压调节器(低功耗模式),唤醒时有一段启动延时。

3.待机模式:执行WFI或者WFE后,STM32进入睡眠模式,程序暂停,唤醒后从头开始运行。只有备份寄存器和待机电路维持供电。

此时IO引脚保持高阻态(浮空输入)。{输出既不高电平也不低电平叫高阻态,输入既不上拉也不下拉称为浮空,二者的配置是相同的。}

四、WPR的使用

对于STM32标准库,并没有集成设置SEVEONPEND、SLEEPDEEP、SLEEPONEXIT的函数,只能通过直接配置寄存器来实现。如果不进行配置,那么这几位就是默认的0。

相关推荐
LuDvei5 小时前
STM32串行通信DMA的使用
stm32·单片机·嵌入式硬件
似是燕归来5 小时前
嵌入式工程师进阶指南:适配器编程设计模式一
c语言·stm32·适配器模式·嵌入式开发
2401_854151556 小时前
STM32 I2C 通信 HAL 库踩坑记录
stm32·单片机·嵌入式硬件
蒙塔基的钢蛋儿9 小时前
记一次 STM32H723 硬件 Bug 排查:写个 ETH 寄存器,SDRAM 数据飞了
stm32·嵌入式硬件·bug
熊猫_豆豆9 小时前
STM32F103R6 PROTEUS9.0 FREERTOS实现双任务流水灯
stm32·单片机·嵌入式硬件
csg110710 小时前
电路板抗干扰:电容、电感和弧线布线的应用
单片机·嵌入式硬件·物联网·自动化
piaoyiren10 小时前
普中A6 静态数码管显示 数字
单片机·嵌入式·普中a6
Olivia0514051410 小时前
共模电感在DC-DC变换器中的自谐振频率(SRF)对EMI滤波性能的影响
单片机·嵌入式硬件
Yunhoa11 小时前
51单片机(1)
单片机·嵌入式硬件·51单片机
dozenyaoyida13 小时前
LSTM 自编码器原理详解:从三门结构到 STM32 端侧异常检测落地
人工智能·stm32·lstm