【STM32】PWR电源控制

1 PWR简介

PWR(Power Control)电源控制

PWR负责管理STM32内部的电源供电部分,可以实现可编程电压监测器和低功耗模式的功能

可编程电压监测器(PVD)可以监控VDD电源电压,当VDD下降到PVD阀值以下或上升到PVD阀值之上时,PVD会触发中断,用于执行紧急关闭任务

低功耗模式包括睡眠模式 (Sleep)、停机模式 (Stop)和待机模式(Standby),可在系统空闲时,降低STM32的功耗,延长设备使用时间

1.1 电源框图

图分为三部分。最上面是模拟部分供电,VDDA(VDD Analog);中间是数字部分供电(VDD供电区域和1.8V供电区域);后备供电VBAT。

模拟部分供电主要包括AD转换器、温度传感器、复位模块、PLL锁相环。正极是VDDA,负极是VSSA。其中AD转换器还有两根参考的供电脚。

中间是数字部分供电由两部分组成。左边是VDD供电区域,其中包括IO电路、待机电路唤醒逻辑和独立看门狗;右边是通过电压调节器降压到1.8V,包括CPU核心、存储器和内置数字外设。使用低电压运行的目的是降低功耗。电压调节器是给1.8V供电。

后备供电区域包括LSE 32k晶体振荡器、后备寄存器、RCC BDCR寄存器(备份域控制寄存器)和RTC。

低电压检测器,控制开关,VDD有电时,由VDD供电;VDD没电时,由VBAT供电。

1.2 上电复位和掉电复位

1.3 可编程电压监测器

1.4 低功耗模式

睡眠模式:只把CPU时钟关了,对其他电路没有操作。关闭电源比关闭时钟更省电。

PDDS=0停机模式;PDDS=1待机模型

1.5 模式选择

执行WFI(Wait For Interrupt)或者WFE(Wait For Event)指令后,STM32进入低功耗模式

1.5.1 睡眠模式

执行完WFI/WFE指令后,STM32进入睡眠模式,程序暂停运行,唤醒后程序从暂停的地方继续运行

SLEEPONEXIT位决定STM32执行完WFI或WFE后,是立刻进入睡眠,还是等STM32从最低优先级的中断处理程序中退出时进入睡眠

在睡眠模式下,所有的I/O引脚都保持它们在运行模式时的状态

WFI指令进入睡眠模式,可被任意一个NVIC响应的中断唤醒

WFE指令进入睡眠模式,可被唤醒事件唤醒

1.5.2 停止模式

执行完WFI/WFE指令后,STM32进入停止模式,程序暂停运行,唤醒后程序从暂停的地方继续运行

1.8V供电区域的所有时钟都被停止,PLL、HSI和HSE被禁止,SRAM和寄存器内容被保留下来

在停止模式下,所有的I/O引脚都保持它们在运行模式时的状态

当一个中断或唤醒事件导致退出停止模式时,HSI被选为系统时钟

当电压调节器处于低功耗模式下,系统从停止模式退出时,会有一段额外的启动延时

WFI指令进入停止模式,可被任意一个EXTI中断唤醒

WFE指令进入停止模式,可被任意一个EXTI事件唤醒

1.5.3 待机模式

执行完WFI/WFE指令后,STM32进入待机模式,唤醒后程序从头开始运行

整个1.8V供电区域被断电,PLL、HSI和HSE也被断电,SRAM和寄存器内容丢失,只有备份的寄存器和待机电路维持供电

在待机模式下,所有的I/O引脚变为高阻态(浮空输入)

WKUP引脚的上升沿、RTC闹钟事件的上升沿、NRST引脚上外部复位、IWDG复位退出待机模式

数据手册

参考手册

相关推荐
一月千帆39 分钟前
基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)
stm32·单片机·嵌入式硬件
passer__jw7672 小时前
【51单片机】4. 模块化编程与LCD1602Debug
单片机·51单片机
千年糊涂2 小时前
STM32使用水位传感器
stm32·单片机·嵌入式硬件
吃货界的硬件攻城狮2 小时前
【BUG】记STM32F030多通道ADC DMA读取乱序问题
stm32·嵌入式硬件·bug
三三十二3 小时前
STM32简易示波器/逻辑分析仪设计指南
stm32·单片机·嵌入式硬件
Mapleay3 小时前
STM32 _main 里做了什么
stm32·单片机·嵌入式硬件
平凡灵感码头3 小时前
走进离线语音:安信可 VC‑01 智能模块全面拆解与 MCU 实战
单片机·嵌入式硬件
田甲3 小时前
【STM32】G030单片机开启超过8个ADC通道的方法
stm32·单片机·嵌入式硬件
切糕师学AI4 小时前
节拍定时器是什么?
单片机·嵌入式硬件
切糕师学AI4 小时前
影子栈指针是什么?
嵌入式硬件·计算机体系结构