(十二)stm32之PWD

PWR简介

PWR负责管理STM32内部的电源供电部分,可以实现可编程电压监测器和低功耗模式的功能
•可编程电压监测器(PVD)可以监控VDD电源电压,当VDD下降到PVD阀值以下或上升到PVD阀值之上时,PVD会触发中断,用于执行紧急关闭任务。
•低功耗模式包括睡眠模式(Sleep)、停机模式(Stop)和待机模式(Standby),可在系统空闲时,降低STM32的功耗,延长设备使用时间。

电源框图

在这里插入图片描述

上电复位和掉电复位

STM32内部有一个完整的上电复位(POR)和掉电复位(PDR)电路,当供电电压达到2V时系统既能正常工作。当V DD /V DDA 低于指定的限位电压V POR /V PDR 时,系统保持为复位状态,而无需外部复位电路。关于上电复位和掉电复位的细节请参考数据手册的电气特性部分。
在这里插入图片描述

可编程电压监测器

用户可以利用PVD对V DD 电压与电源控制寄存器(PWR_CR)中的PLS[2:0]位进行比较来监控电源,这几位选择监控电压的阀值。通过设置PVDE位来使能PVD。
电源控制/状态寄存器(PWR_CSR)中的PVDO标志用来表明V DD 是高于还是低于PVD的电压阀值。该事件在内部连接到外部中断的第16线,如果该中断在外部中断寄存器中是使能的,该事件就会产生中断。当V DD 下降到PVD阀值以下和(或)当V DD 上升到PVD阀值之上时,根据外部中断第16线的上升/下降边沿触发设置,就会产生PVD中断。例如,这一特性可用于用于执行紧急关闭任务。
在这里插入图片描述

低功耗模式

在系统或电源复位以后,微控制器处于运行状态。当CPU不需继续运行时,可以利用多种低功耗模式来节省功耗,例如等待某个外部事件时。用户需要根据最低电源消耗、最快速启动时间和可用的唤醒源等条件,选定一个最佳的低功耗模式。
STM32F10xxx有三种低功耗模式:
● 睡眠模式(Cortex™-M3内核停止,所有外设包括Cortex-M3核心的外设,如NVIC、系统时钟(SysTick)等仍在运行)
● 停止模式(所有的时钟都已停止)
● 待机模式(1.8V电源关闭)此外,在运行模式下,可以通过以下方式中的一种降低功耗:
● 降低系统时钟
● 关闭APB和AHB总线上未被使用的外设时钟
在这里插入图片描述

模式选择

执行WFI(Wait For Interrupt)或者WFE(Wait For Event)指令后,STM32进入低功耗模式
在这里插入图片描述

睡眠模式

•执行完WFI/WFE指令后,STM32进入睡眠模式,程序暂停运行,唤醒后程序从暂停的地方继续运行
•SLEEPONEXIT位决定STM32执行完WFI或WFE后,是立刻进入睡眠,还是等STM32从最低优先级的中断处理程序中退出时进入睡眠
•在睡眠模式下,所有的I/O引脚都保持它们在运行模式时的状态
•WFI指令进入睡眠模式,可被任意一个NVIC响应的中断唤醒
•WFE指令进入睡眠模式,可被唤醒事件唤醒

停止模式

•执行完WFI/WFE指令后,STM32进入停止模式,程序暂停运行,唤醒后程序从暂停的地方继续运行
•1.8V供电区域的所有时钟都被停止,PLL、HSI和HSE被禁止,SRAM和寄存器内容被保留下来
•在停止模式下,所有的I/O引脚都保持它们在运行模式时的状态
•当一个中断或唤醒事件导致退出停止模式时,HSI被选为系统时钟
•当电压调节器处于低功耗模式下,系统从停止模式退出时,会有一段额外的启动延时
•WFI指令进入停止模式,可被任意一个EXTI中断唤醒
•WFE指令进入停止模式,可被任意一个EXTI事件唤醒

待机模式

•执行完WFI/WFE指令后,STM32进入待机模式,唤醒后程序从头开始运行
•整个1.8V供电区域被断电,PLL、HSI和HSE也被断电,SRAM和寄存器内容丢失,只有备份的寄存器和待机电路维持供电
•在待机模式下,所有的I/O引脚变为高阻态(浮空输入)
•WKUP引脚的上升沿、RTC闹钟事件的上升沿、NRST引脚上外部复位、IWDG复位退出待机模式

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值