一款好的电子产品,都需要认真考虑电源管理的问题,电池供电的产品更应该注意低功耗的实现。

STM32电源介绍

嵌入式开发直播课 - STM32 USART串口的应用 - 创客学院直播室​www.makeru.com.cn

每一块STM32芯片中都有一个电源控制器(PWR),不同系列的STM32有相似,也有差异。

1.电压
绝大部分STM32的电压要求介于 1.8 V 到 3.6 V 之间,嵌入式线性调压器用于提供内部 1.2 V 数字电源。2.类型

STM32的电源通常分为三类:数字电源、模拟电源、备份电源。

数字电源:VDD也是其主电源,主要用于数字部分;

模拟电源:VDDA用于模拟部分的电源,比如ADC,这样可以单独滤波并屏蔽 PCB 上的噪声。

备份电源:VBAT用于备份区域的电源,比如RTC、备份SRAM等,一旦主电源断开,VBAT可以为这些区域提供电源。

▲ STM32F4备份域

3.调压器多数STM32都有电源调节器(有些型号没有),为备份域和待机电路以外的所有数字电路供电,调压器输出电压约为 1.2 V。

运行模式:调压器为 1.2 V 域(内核、存储器和数字外设)提供全功率。停止模式:调压器为 1.2 V 域提供低功率,保留寄存器和内部 SRAM 中的内容。待机模式:调压器掉电。除待机电路和备份域外,寄存器和 SRAM 的内容都将丢失。

STM32的低功耗模式

STM32的工作模式通常可分为4类运行模式、睡眠模式、停止模式、待机模式。根据STM32类型不同,可将工作模式进一步划分。比如STM32L低功耗系列,睡眠模式可进一步划分为:普通睡眠模式和低功耗睡眠模式。

  • 以STM32F4为例:
  • 运行模式:默认进入该模式;
  • 睡眠模式:内核停止,外设保持运行
  • 停止模式:所有时钟都停止
  • 待机模式:1.2 V 域断电

▲ STM32睡眠/停止/待机模式图解

STM32低功耗设计要点

STM32低功耗通常会结合项目实际情况,以及应用场景来进行针对性设计。以下面几个案例来进行说明。

案例一:有工程师提到:STM32F103 进入STOP 模式后无法通过串口唤醒

分析原因:这位工程师对低功耗唤醒机制理解有误:STM32进入 STOP 模式后不能直接通过 UART 等中断外设唤醒, 只能通过 EXTI 外部中断方式唤醒。

解决办法:我们可以在 MCU 进入 STOP 前将 RX 脚设为 EXTI 模式,并使能对应的中断来实现。案例二:有工程师提到:STM32F051进入低功耗之后,实际功耗远大于理想功耗。分析原因:造成问题的原因可能是工程师通过直接调用“停止模式”,进入低功耗,但部分IO外部有上拉电阻,进入低功耗之前未做调整,导致功耗偏大。

解决办法:进入低功耗之前,对使用和未使用IO状态进行调整。比如有外部上拉,可配置成模拟输入等。

案例三:有工程师提到:通过按键唤醒STM32F103,串口不能正常工作?分析原因:经分析发现,开发者进入的低功耗模式为待机模式,唤醒之后,未初始化串口外设,导致串口不能正常工作。在待机模式下,所有外设都关闭,意味着所有外设配置都为默认值。解决办法:唤醒STM32之后,重新初始化串口(以及所有使用的)外设。

复盘一下

▼电源基础知识:需要掌握电源电压、类型、调节器;
▼低功耗模式:有四种,运行模式、睡眠模式、停止模式、待机模式
▼低功耗设计要点:避免因基础原理导致的错误。

stm32外部中断_STM32学习笔记 | 电源管理及低功耗设计要点相关推荐

  1. stm32正常运行流程图_stm32学习笔记之问题总结

    1. SYSCLK时钟源有三个来源:HSI RC.HSE OSC.PLL; 2. MCO[2:0]可以提供4源不同的时钟同步信号; 3. GPIO口貌似有两个反向串联的二极管用作钳位二极管; 4. 总 ...

  2. 嵌入式linux 添加中断,《嵌入式linux应用程序开发完全手册》中断控制器操作(外部中断)学习笔记...

    <嵌入式linux应用程序开发完全手册>中断控制器操作(外部中断)学习笔记 一.ARM中断体系 当一个"异常"发生时,或者说当收到一个中断触发信号时,ARM9将会自动完 ...

  3. stm32正常运行流程图_STM32学习笔记(超详细整理144个问题)

    1.AHB系统总线分为APB1(36MHz)和APB2(72MHz),其中2>1,意思是APB2接高速设备: 2.Stm32f10x.h相当于reg52.h(里面有基本的位操作定义),另一个为s ...

  4. STM32定时器中断实验-学习笔记

    目录 目录 目录 通用定时器简介 寄存器 控制寄存器 (TIMx_CR1) DMA/中断使能寄存器(TIMx_DIER) 预分频寄存器(TIMx_PSC) TIMx_CNT 寄存器 自动重装载寄存器( ...

  5. Facebook Surround360 学习笔记--(3)硬件设计要点

    如果自己想模仿surround360设计一款3D360°的设备,硬件选择有什么要注意的吗? 圆盘设计有要求吗? 回答:有要求,圆盘半径r,侧面相机数目n,侧面相机视场角之间要满足如下的约束关系才能产生 ...

  6. stm32读操作失败_STM32学习笔记—通信容易出错的情况

    I²C:全称为Inter-Integrated Circuit(内部集成电路),是一种串行通讯总线,常用于嵌入式电子产品中. 这是第4篇分享,<STM32学习笔记>之I2C通信容易出错的情 ...

  7. STM32外部中断与(NVIC)中断优先级管理

    文章目录 1.中断介绍 1.中断的概念 2.中断的产生 3.中断处理的流程 2.STM32内嵌向量中断控制器NVIC 1.NVIC控制器的寄存器 2.STM32中断配置 3.STM32外部中断EXIT ...

  8. STM32 CAN总线通信学习笔记(一)

    STM32 CAN总线通信学习笔记(一) 一.CAN总线简介 CAN 是控制器局域网络(Controller Area Network, CAN)的简称.CAN采用数据块编码的方式,数据块根据帧的类型 ...

  9. STM32外部中断总结

    STM32外部中断总结 STM32的外部中断是我们在学习stm32的一个必要模块,外部中断的用途可以增加人机交互的体验,也可以增加程序的执行效率.下面将以一个小实验来记录外部中断的使用需要注意的事项 ...

最新文章

  1. 传说中的裸奔节--认识及体验CSS
  2. html的marquee滚动标签
  3. 遍历children_589. N叉树的前序遍历
  4. 《悟透JavaScript》进展汇报
  5. 软件开发常用设计模式—单例模式总结(c++版)
  6. 疯狂代码 写给WEB2.0的站长
  7. 基于SSH保险业务管理系统的设计与实现
  8. 给爱车安装一台GPS,贴身“保镖”保护爱车
  9. 1400张正方形图片合集压缩包图片分辨率330*330
  10. 2021年全球天然橡胶行业供需现状分析:需求量迎来恢复性增长,中国市场需求量占比超40%[图]
  11. 用计算机求解问题的一般步骤,计算机问题求解过程包括哪些步骤
  12. 谨慎使用多线程中的fork
  13. Javassist实战-修改现有类
  14. MAC 命令行 查看硬盘和文件夹大小(占用空间)
  15. 最新劳动强度排行榜 公务员排名绝对第一
  16. 分享给大家一些UG模具设计常识,值得收藏
  17. 多商户商城系统功能拆解42讲-平台端应用-客服列表
  18. 【Linux 内核 内存管理】物理内存组织结构 ④ ( 内存区域 zone 简介 | zone 结构体源码分析 | zone 结构体源码 )
  19. shell脚本中的单行注释和多行注释
  20. 「ZJOI2018」树

热门文章

  1. Git 远程配置_03
  2. 第九篇:Spring Boot整合Spring Data JPA_入门试炼06
  3. linux-查找文件夹
  4. css-背景图片和渐变
  5. Java访问静态常量_Java如何在Spring EL中访问静态方法或常量?
  6. atomic在linux编译不通过,内存障碍和在linux上的atomic_t
  7. ip访问次数统计 nginx_PHP实现IP访问限制及提交次数的方法详解
  8. html 改变文本框字体颜色,CSS更改文本框的字体颜色
  9. html自动图片尺寸,关于html:CSS背景图像适合宽度,高度应按比例自动缩放
  10. linux中央服务器,如何在Linux上搭建一个Git中央仓库