MCU电源控制(PWR)与低功耗

目录

一、STM32 的内核和外设电源系统管理:

二、MCU电源监控:

三、三种低功耗模式:

1、睡眠模式:

2、停止模式:

3、待机模式:


一、STM32 的内核和外设电源系统管理:

电池备份区域(后备供电区域) 

        电池备份区域也就是后备供电区域,使用电池或者其他电源连接到 VBAT 脚上,当 VDD断电时,可以保存备份寄存器的内容和维持 RTC 的功能。同时 VBAT 引脚也为 RTC、 SRAM 和 LSE振荡器供电,这保证了当主要电源被切断时, RTC 能够继续工作。切换到 VBAT 供电由复位模块中的掉电复位功能控制。 

电压调节器(VDD /1.2V 供电区域)

        嵌入式线性调压器为备份域和待机电路以外的所有数字电路供电调压器输出电压约为1.2 V。此调压器需要将两个外部电容连接到专用引脚 VCAP_1 和 VCAP_2,所有封装都配有这两个引脚。为激活或停用调压器,必须将特定引脚连接到 VSS 或 VDD。具体引脚与封装有关。通过软件激活时,调压器在复位后始终处于使能状态。

        根据应用模式的不同,可采用三种不同的模式工作。 在运转模式下,调节器以正常工号模式为内核、内存和外设提供 1.2V;在停止模式下,调节器以低功耗模式提供 1.2V 电源,以保存寄存器和 SRAM 的内容。在待机模式下,调节器停止供电,除了备用电路和备份域外,寄存器和 SRAM 的内容全部丢失。

独立的 A/D 转换器供电和参考电压(VDDA 供电区域) 

        为了提高转换精度, ADC 配有独立电源,可以单独滤波并屏蔽 PCB 上的噪声。 ADC 电源电压从单独的 VDDA 引脚接入, VSSA 提供了独立的电源接地连接。为了确保测量低电压时具有更高的精度,用户可以再 VREF 上连接到单独的 ADC 外部参考电压输入, VREF 电压介于1.8V 到 VDDA 之间。

二、MCU电源监控:

1、上电复位(POR)/掉电复位(PDR),VPDR/VPOR针对于芯片基本上是固定的

(1) POR(power on reset):上电复位。其本质也是一个电压检测过程,当芯片输入电压VCC>Vpor电压时,POR模拟模块将输出POR信号提供给全芯片使用,这是一个从复位到复位释放的过程。PDR是一个硬件重置引脚。

(2) PDR(power down reset): 掉电复位。其电压Vpdr<Vpor,之间有迟滞,防止震荡;结合POR,我们可以得到POR信号释放时,设计一定保证了全芯片都能正常工作。

(3) 持续时间:当供电电压开始上升时,电源需要经过一个上升时间才能稳定到达复位阈值之以上,同时芯片内部的复位电路也需要一定时间来检测并响应供电电压的变化。这种供电电压上升和内部电路检测的时间延迟导致了上电复位的滞后。

2、欠压复位(BOR) 

默认情况下, BOR关闭。可选择以下可编程 VBOR阈值: 

        BOR(brown-out reset):欠压复位。BOR不是必须的。有它的原因,更多是芯片可以工作在一个宽range的电压范围。

        比如芯片从1.6V~3.6V都可以工作,但是芯片在低电压时某些内部模块可能不能工作,或者1.6V的时候芯片频率只能工作在50MHz,而3.3V的时候可以工作在100MHz。因此当芯片工作在100MHz,对电压就是有要求的,单单是PDR可能就管控不住了。

        还有一个原因是产品对系统的可靠性要求。所以也很容易理解,为啥BOR是可以programmable,而POR和PDR是芯片设计完成就是固定的。

        BOR是一种软件复位,由内部模块控制。

3、可编程电压检测器(PVD) 

        PVD(programmable voltage detector):可编程电压检测。目的模拟检测可以通过中断的方式告诉软件,我这里电压和你设置要求不符合了,你可以软件采取动作了,它不再是单纯电压低了就复位。上面1,2,3都是reset,而PVD这个功能是给软件一个处理电压异常的机会和窗口。

        当检测到电压低于 VPVD阈值时,如果使能 EXTI16 线中断(即使能 PVD & AVD 中断),可以产生 PVD 中断,具体取决于 EXTI16 线配置为检测上升还是下降沿,然后在复位前, 在中断服务程序中执行紧急关闭系统等任务。  

4、其它

LVR(Low Voltage Reset):低电压复位,跟欠压复位类似,各家名词不一样;

BOD(Brown-out detector): 跟PVD类似,各家名词不一样;

三、三种低功耗模式:

在 STM32 的正常工作中,具有四种工作模式,运行睡眠停止以及待机模式:

下面是低功耗模式汇总介绍,如下表所示:

1、睡眠模式:

进入睡眠模式,CPU时钟关闭,但是其他所有的外设仍可以运行,所以任何中断或事件都可以唤醒睡眠模式。一般功耗会有几十个毫安,下面我们看看睡眠模式进入及退出方法:

2、停止模式:

        进入停止模式,所有的时钟都关闭,所有的外设也就停止了工作。但是 VDD电源是没有关闭的,所以内核的寄存器和内存信息都保留下来,等待重新开启时钟就可以从上次停止的地方继续执行程序。一般功耗达到1~2mA
        值得注意的是:当电压调节器处于低功耗模式下,当系统从停止模式退出时,将会有一段额外的启动延时。如果在停止模式期间保持内部调节器开启,则退出启动时间会缩短,但相应的功耗会增加。 

3、待机模式:

        待机模式可实现最低功耗。该模式是在 CM4 深睡眠模式时关闭电压调节器,整个 1.8V 供电区域被断电。 PLL、 HSI 和 HSE 振荡器也被断电。除备份域(RTC 寄存器、 RTC 备份寄存器和备份 SRAM)和待机电路中的寄存器外, SRAM 和其他寄存器内容都将丢失。不过如果我们使能了备份区域(备份 SRAM、 RTC、 LSE),那么待机模式下的功耗,将达到 10uA以下。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/686530.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于预训练模型的一点感悟

最近&#xff0c;Yann LeCun 在 WGS 上说&#xff1a; 目前的LLM不可能走到AGI&#xff0c;原因很简单&#xff0c;现在训练这些LLM所使用的数据量为10万亿个令牌&#xff0c;也就是130亿个词&#xff0c;如果你计算人类阅读这些数据需要多长时间&#xff0c;一个人每天阅读8小…

String讲解

文章目录 String类的重要性常用的方法常用的构造方法String类的比较字符串的查找转化数字转化为字符串字符串转数字 字符串替换字符串的不可变性 字符串拆分字符串截取字符串修改 StringBuilder和StringBuffer String类的重要性 在c/c的学习中我们接触到了字符串&#xff0c;但…

MFC提示 未在此计算机上注册ActiveX控件“{648A5600-2C6E-101B-82B6-000000000014}“完美解决

&#x1f482; 个人主页:pp不会算法^ v ^ &#x1f91f; 版权: 本文由【pp不会算法v】原创、在CSDN首发、需要转载请联系博主 &#x1f4ac; 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 运行一个mfc老项目的时候出现了这个问题 问题原因: 少了一个文件 …

【开源图床】使用Typora+PicGo+Github+CDN搭建个人博客图床

准备工作&#xff1a; 首先电脑得提前完成安装如下&#xff1a; 1. nodejs环境(node ,npm):【安装指南】nodejs下载、安装与配置详细教程 2. Picgo:【安装指南】图床神器之Picgo下载、安装与配置详细教程 3. Typora:【安装指南】markdown神器之Typora下载、安装与无限使用详细教…

【StarryCoding P9】【模板】可撤销并查集(并查集+启发式合并+栈)

描述 给定 n n n个结点&#xff0c; q q q次询问&#xff0c;每次询问分为三类&#xff1a; 1 x y &#xff1a;可以选择将 x , y x, y x,y两个点连通&#xff0c;如果已经连通则不操作。2 &#xff1a;撤销上一次的操作&#xff08;若全部撤销完了则不操作&#xff09;。3 x…

Flex布局简介及微信小程序视图层View详解

目录 一、Flex布局简介 什么是flex布局&#xff1f; flex属性 基本语法和常用属性 Flex 布局技巧 二、视图层View View简介 微信小程序View视图层 WXML 数据绑定 列表渲染 条件渲染 模板 WXSS 样式导入 内联样式 选择器 全局样式与局部样式 WXS 示例 注意事项…

with ThreadPoolExecutor() as executor的使用举例

ThreadPoolExecutor是Python的concurrent.futures模块中的一个类&#xff0c;用于创建一个线程池执行器&#xff0c;可以并发地执行多个任务。 下面是一个使用ThreadPoolExecutor的示例&#xff1a; python from concurrent.futures import ThreadPoolExecutor # 定义一个需…

软件测试概论

第一章、认识软件 一、概述 软件又叫做软体&#xff0c;英文是software 不同的设备上叫法不一样 普通的

【Linux系统化学习】文件重定向

目录 文件内核对象 文件描述符的分配规则 重定向 重定向的概念 dup2系统调用 输出重定向 追加重定向 输入重定向 stderr解析 重定向到同一个文件中 分离常规输出和错输出 文件内核对象 上篇文章中我们介绍到了操作系统中的文件&#xff0c;操作系统为了方…

不同类型的网络拓扑结构在不同的应用场景和需求

不同类型的网络拓扑结构适用于不同的应用场景和需求&#xff0c;下面简要概括几种常见拓扑结构的使用场景及特点&#xff1a; 1、星形 • 使用场景 广泛应用于家庭网络、办公室局域网、企业内部网络以及许多无线网络如Wi-Fi。 • 特点与需求 每个设备通过一条单独的链路连接…

Shellcode免杀对抗(C/C++)

Shellcode C/C免杀&#xff0c;绕过360安全卫士、火绒安全、Defender C/C基于cs/msf的上线 首先是测试一下shellcode上线&#xff0c;主要是俩种方法 测试环境 攻击机&#xff1a;kali2023 靶机&#xff1a;win10 msf方法 首先是启动msf msfconsole 然后msf生成一个sh…

CES 2024:NVIDIA 通过新的笔记本电脑、GPU 和工具提供生成式 AI

在 CES 2024 上&#xff0c;NVIDIA 推出了一系列硬件和软件&#xff0c;旨在释放 Windows 11 PC 上生成式 AI 的全部潜力。 在 PC 上本地运行生成式 AI 对于隐私、延迟和成本敏感型应用程序至关重要。在 CES 上&#xff0c;NVIDIA 将在整个技术堆栈中带来新的创新&#xff0c;…

bat 定时收缩sqlserver2012

在Windows环境下&#xff0c;你可以使用任务计划程序&#xff08;Task Scheduler&#xff09;来定时执行批处理文件&#xff0c;进而收缩SQL Server 2012的数据库。批处理文件&#xff08;.bat&#xff09;将包含执行收缩操作的SQL命令。然而&#xff0c;如前所述&#xff0c;定…

C#开源免费的Windows右键菜单管理工具

前言 今天分享一个C#开源、免费、纯粹的Windows右键菜单管理工具&#xff1a;ContextMenuManager。 工具主要功能 程序支持国际化多语言显示。启用或禁用文件、文件夹、新建、发送到、打开方式、自定义文件格式、IE浏览器、WinX等右键菜单项目。对上述场景右键菜单项目进行修…

MySql查询中按多个字段排序的方法

目录 前言 一、按单个字段排序&#xff1a; 二、按多个字段排序&#xff1a; 二、指定排序方向&#xff1a; 总结 前言 在 SQL 查询中&#xff0c;经常需要按多个字段对结果进行排序。本文将介绍如何使用 SQL 查询语句按多个字段进行排序&#xff0c;提供几种常见的排序方…

【NI-DAQmx入门】数据采集中的降噪技术

1.什么是噪声&#xff1f; 噪声是电路中存在的与期望信号不同的任何电信号 噪声可以降低&#xff0c;但不能消除 噪声可以在源头处被抑制 通过耦合可以降低数据传输通道的噪声 2.噪声耦合方法 导电性 电容性 感应性 其他 3.传导耦合噪声 来自不同电路的电流在一个公共阻抗中共…

⭐北邮复试刷题103. 二叉树的锯齿形层序遍历

103. 二叉树的锯齿形层序遍历 给你二叉树的根节点 root &#xff0c;返回其节点值的 锯齿形层序遍历 。&#xff08;即先从左往右&#xff0c;再从右往左进行下一层遍历&#xff0c;以此类推&#xff0c;层与层之间交替进行&#xff09;。 示例 1&#xff1a;输入&#xff1a…

英文论文(sci)解读复现【NO.21】一种基于空间坐标的轻量级目标检测器无人机航空图像的自注意

此前出了目标检测算法改进专栏&#xff0c;但是对于应用于什么场景&#xff0c;需要什么改进方法对应与自己的应用场景有效果&#xff0c;并且多少改进点能发什么水平的文章&#xff0c;为解决大家的困惑&#xff0c;此系列文章旨在给大家解读发表高水平学术期刊中的 SCI论文&a…

代码随想录day27 Java版

122.买卖股票的最佳时机 II 简单题&#xff0c;每天都贪心即可 class Solution {public int maxProfit(int[] prices) {int sum 0;for (int i 1; i < prices.length; i) sum Math.max(prices[i]-prices[i-1],0);return sum;} } 55. 跳跃游戏 记录能跳的最远范围&…

告警能力中台设计与实践(二)——事件树系统

一、现有告警平台分析 在设计核心的告警数据模型时&#xff0c;本质上是对业务逻辑与整理数据流的梳理与设计。对于这部分不可高屋建瓴、想当然&#xff0c;需要有成熟的 取其精华、根据自身业务需求再做优化与改进才是正道。 笔者所在的部门SRE平台恰巧已有相关告警能力&…