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
相关推荐
SuniaWang3 分钟前
《Spring AI + 大模型全栈实战》学习手册系列 ·专题三:《Embedding 模型选型指南:从 MMTEB 排名到实际应用》
人工智能·学习·spring
问道飞鱼7 分钟前
【Tauri框架学习】Windows 11 环境下 Tauri 开发环境安装与问题解决手册
windows·学习·tauri·开发环境
测试专家29 分钟前
USB 3.0,USB速率
单片机·嵌入式硬件
لا معنى له33 分钟前
什么是Active Inference(主动推理)? ——学习笔记
笔记·学习
JicasdC123asd37 分钟前
并行双分支瓶颈架构改进YOLOv26异构卷积核协同特征提取与残差学习双重突破
学习·yolo·架构
zhouping@43 分钟前
JAVA学习笔记day06
java·笔记·学习
昵称只能一个月修改一次。。。43 分钟前
嵌入式硬件编程
单片机·嵌入式硬件
FPGA-ADDA1 小时前
第四篇:嵌入式系统常用通信接口详解(I2C、SPI、UART、RS232/485、CAN、USB)
人工智能·单片机·嵌入式硬件·fpga开发·信息与通信
我不是程序猿儿1 小时前
【嵌入式】编码器分类
单片机·嵌入式硬件
给点sun,就shine2 小时前
电阻的作用
单片机·嵌入式硬件