STM32 低功耗学习

STM32 电源系统结构介绍

电源系统:VDDA供电区域、VDD供电区域、1.8V供电区域、后备供电区域。

器件的工作电压(VDD)2.0~3.6V

  1. 为了提高转换精度,给模拟外设独立供电。
  2. 电压调节器为1.8V供电区域供电,且1.8V供电区域是电源系统中最主要的部分。
  3. 两种供电方式:VBAT和VDD。主要电源被切断,该区域还能工作。

低功耗

降低集成电路的能量消耗。
STM32具有运行、睡眠、停止和待机四种工作模式。

上电后默认是在运行模式,当内核不需要继续运行时,可以选择后面三种低功耗模式。

睡眠模式

  • 优点:对系统影响小。
  • 缺点:节能效果最差。

停止模式

  • 优点:节能效果好,程序不会复位。
  • 缺点:恢复时间较长。

待机模式

  • 优点:节能效果最好。
  • 缺点:程序会复位,少数条件唤醒。

三种模式的功耗

WFI命令和WFE命令

内核指令,使用函数的格式__WFI()和WFE()来调用。

低功耗相关HAL库驱动介绍

低功耗模式的使用步骤

  1. 初始化WKUP为中断触发源
  2. 外设低功耗处理:设置MCU外围外设进入低功耗,可选。
  3. 进入睡眠模式:HAL_PWR_EnterSLEEPMode
  4. 等待WKUP外部中断唤醒。
  1. 初始化WKUP为中断触发源
  2. 外设低功耗处理:设置MCU外围外设进入低功耗,可选。
  3. 进入停止模式:HAL_PWR_EnterSTOPMode
  4. 等待WKUP外部中断唤醒
  5. 重新设置时钟,重新选择滴答时钟源,失能systick中断。


待机模式下,所有I/O引脚处于高阻态,除了复位引脚、被使能的唤醒引脚等;待机模式下,不能下载程序,必须退出待机模式才能下载。

  1. 初始化WKUP为中断触发源
  2. 外设低功耗处理:设置MCU外围外设进入低功耗,可选。
  3. 使能电源时钟:__HAL_RCC_PWR_CLK_ENBALE
  4. 使能WKUP的唤醒功能:HAL_PWR_EnableWakeUpPin
  5. 清除唤醒标记WUF:__HAL_PWR_CLEAR_FLAG
  6. 进入待机模式:HAL_PWR_EnterSTANDBYMode
相关推荐
飞向星河18 分钟前
SV学习笔记——数组、队列
笔记·学习·c#
柒月玖.18 分钟前
基于AT89C51单片机的家用全自动洗衣机设计
单片机·嵌入式硬件
胡西风_foxww1 小时前
中学学习难点管理思维魔方
学习·中学·难点
Moonnnn.2 小时前
51单片机——程序执行过程(手工汇编)
汇编·笔记·嵌入式硬件·学习·51单片机
大宝剑1702 小时前
blender学习25.3.8
学习·blender
派阿喵搞电子3 小时前
STM32的APB1和APB2的区别
stm32·单片机·嵌入式硬件
Archie_IT5 小时前
江协科技/江科大-51单片机入门教程——P[5-1] 模块化编程 & P[5-2] LCD1602调试工具
单片机·嵌入式硬件·mcu·51单片机
电气_空空6 小时前
基于单片机及传感器的机器人设计与实现
单片机·嵌入式硬件·机器人·毕业设计·毕设
木燚垚7 小时前
基于STM32物联网水质监测系统的设计与实现/基于STM32的水产养殖云监控系统设计
stm32·单片机·嵌入式硬件·物联网·智能家居
flashier8 小时前
C语言 进阶指针学习笔记
c语言·笔记·学习