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。

相关推荐
殷忆枫15 分钟前
基于STM32的独居老人语音/一键双模紧急呼救系统设计与实现
stm32·嵌入式硬件·xcode
暖焰核心17 分钟前
USART 概念篇——从高低电平到数据帧
stm32
袁章根27 分钟前
基于瑞昱RTL8367S交换机电路设计(一)
网络·嵌入式硬件·硬件架构·硬件工程
深圳市恒锐丰科技杨生1 小时前
EG44273 20V 低压单通道低侧栅极驱动芯片|屹晶 EGmicro
嵌入式硬件·硬件工程
搁浅小泽1 小时前
通用二极管选型设计规范
单片机·嵌入式硬件·设计规范
HRTOS2 小时前
HRTOS 4.0 将长期维护:为什么版本号不再频繁变化
经验分享·git·单片机·51单片机
深圳老胡2 小时前
STM32 在 VSCode 下 -O0 与 -Os 编译条件的区别
笔记·stm32·单片机·代码规范
智感子7 小时前
测控链路:从传感器到上位机
人工智能·嵌入式硬件·fpga开发
新晨单片机设计8 小时前
S021A-基于STM32单片机自动追光系统(步进电机)【Proteus仿真+Keil程序+原理图】
stm32·单片机·proteus·自动追光系统
恒锐丰科技林技术员11 小时前
EG2129 带过流保护全桥驱动芯片解析
经验分享·嵌入式硬件·硬件工程