总结写在前面
STM32的电源控制(PWR)模块是微控制器能效管理的关键组件,它通过多种机制来优化能源使用,特别是在对电池寿命敏感的应用中。以下是PWR模块核心功能和低功耗模式的总结:
PWR模块核心功能:
- 可编程电压监测器(PVD):答应用户设置电压阈值,监测VDD电源电压。一旦电压超出设定范围,PVD可通过停止通知处理器,便于采取预防措施,如数据保存或安全关机,以保护系统免受电压波动损害。
- 电源管理:支持不同级别的低功耗模式,包括睡眠、停机和待机模式,每种模式通过不同水平地关闭系统组件来减少能耗。
低功耗模式概览:
- 睡眠模式:CPU暂歇工作,但外设和SRAM保持上电,可由停止快速唤醒。
- 停机模式:进一步降低功耗,克制所有时钟并禁用PLL、HSI和HSE,但SRAM和寄存器内容保留,仅通过外部停止唤醒。
- 待机模式:到达最低功耗水平,险些整个1.8V供电域断电,仅备份寄存器和待机电路保持供电,唤醒必要特定变乱(如WKUP引脚、RTC闹钟或外部复位)且步伐从初始位置重启。
设置与唤醒机制:
- 进入低功耗模式:通过实行WFI(等待停止)或WFE(等待变乱)指令。
- 唤醒条件:根据模式不同,可通过停止(NVIC/EXTI)、变乱(如RTC闹钟)或硬件引脚(如WKUP)唤醒。
其他考虑因素:
- 电源电压范围与复位:确保系统在电压降至危险水平前采取行动,通过PVD设置预警线,并在1.9V以下触发复位保护。
- 频率调整:降低CPU主频也是降低整体系统功耗的有用策略。
- VDDA与VBAT:模拟电源(VDDA)保证模拟外设的稳定供电,后备电池(VBAT)在主电源断开时为RTC和备份寄存器供电,确保关键数据不丢失。
综上所述,STM32的PWR模块及其低功耗模式筹划旨在满意电池驱动设备的严格能耗要求,通过灵活的电源管理和多种唤醒机制,平衡了能效与相应速率的需求,适用于各类物联网、可穿着设备、长途监控等应用场景。
目录
PWR
简介
电源框图
上电复位和掉电复位
可编程电压检测器
低功耗模式
模式选择
睡眠模式
克制模式
待机模式
PWR
简介
- PWR(Power Control)电源控制
- PWR负责管理STM32内部的电源供电部门,可以实现可编程电压监测器和低功耗模式的功能
- 可编程电压监测器(PVD)可以监控VDD电源电压,当VDD降落到PVD阀值以下或上升到PVD阀值之上时,PVD会触发停止,用于实行告急关闭任务
- 低功耗模式包括睡眠模式(Sleep)、停机模式(Stop)和待机模式(Standby),可在系统空闲时,降低STM32的功耗,延长设备使用时间
尤其是像用电池供电的设备,对空闲时候的供电量是有极大要求的,比如数据采集设备、车钥匙、遥控器、报警器等
在这些设备的生命周期里,大多时间都是空闲的状态~都必要低功耗
电源框图
最上面是VDDA - 模拟供电
中心是 数字供电 - VDD供电区域,1.8V供电区域
下面是后备电源供电VBAT
上电复位和掉电复位
查看手册
可编程电压检测器
PVD输出在阈值高的时候,输出是低电平。我们可以通过检测这个PVD输出的降落沿和上升沿停止,举行处理~
这个PVD停止申请是外部停止
设置PLS寄存器的三个位,可以选择下列这么多阈值
电源电压在3.3V附近是正常工作的电压,在2.9V~2.2V之间,属于PVD检测的范围,可以通过PVD设置一个警告线,再降低到1.9V就是复位电路的检测范围,低于1.9V直接复位了
低功耗模式
低功耗模式有三中国,睡眠模式 - 停机模式 - 待机模式
从表里看,这三种低功耗模式,从上到下,关闭的电路越来越多,越来越省电,也越来越难唤醒的
睡得越深~关的越多~越省电~越难叫醒
睡眠模式,设置WFI或者WFE进入睡眠模式,WFI是用停止唤醒,WFE是用变乱唤醒
停机模式,设置PDDS=0进入停机模式,只有外部停止才能唤醒停机模式
待机模式,设置PDDS=1进入待机模式,具体唤醒看上图~,文字表述不如图片直接
模式选择
实行WFI(Wait For Interrupt)或者WFE(Wait For Event)指令后,STM32进入低功耗模式
睡眠模式
- 实行完WFI/WFE指令后,STM32进入睡眠模式,步伐暂停运行,唤醒后步伐从暂停的地方继承运行
- SLEEPONEXIT位决定STM32实行完WFI或WFE后,是立刻进入睡眠,照旧等STM32从最低优先级的停止处理步伐中退出时进入睡眠
- 在睡眠模式下,所有的I/O引脚都保持它们在运行模式时的状态
- WFI指令进入睡眠模式,可被任意一个NVIC相应的停止唤醒
- WFE指令进入睡眠模式,可被唤醒变乱唤醒
克制模式
- 实行完WFI/WFE指令后,STM32进入克制模式,步伐暂停运行,唤醒后步伐从暂停的地方继承运行
- 1.8V供电区域的所有时钟都被克制,PLL、HSI和HSE被禁止,SRAM和寄存器内容被保留下来
- 在克制模式下,所有的I/O引脚都保持它们在运行模式时的状态
- 当一个停止或唤醒变乱导致退出克制模式时,HSI被选为系统时钟
- 当电压调节器处于低功耗模式下,系统从克制模式退出时,会有一段额外的启动延时
- WFI指令进入克制模式,可被任意一个EXTI停止唤醒
- WFE指令进入克制模式,可被任意一个EXTI变乱唤醒
待机模式
- 实行完WFI/WFE指令后,STM32进入待机模式,唤醒后步伐重新开始运行
- 整个1.8V供电区域被断电,PLL、HSI和HSE也被断电,SRAM和寄存器内容丢失,只有备份的寄存器和待机电路维持供电
- 在待机模式下,所有的I/O引脚变为高阻态(浮空输入)
- WKUP引脚的上升沿、RTC闹钟变乱的上升沿、NRST引脚上外部复位、IWDG复位退出待机模式
降低主频也能降低功耗,降低耗电电流
电池备份区域
使用电池或其他电源连接到VBAT脚上,当VDD断电时,可以保存备份寄存器的内容和维持RTC的 功能。 VBAT脚为RTC、LSE振荡器和PC13至PC15端供词电,可以保证当主电源被堵截时RTC能继承 工作。切换到VBAT供电的开关,由复位模块中的掉电复位功能控制。
警告:在VDD上升阶段(tRSTTEMPO)或者探测到PDR(掉电复位)之后,VBAT和VDD之间的电源开关仍会保持 连接在VBAT。 在VDD上升阶段,如果VDD在小于tRSTTEMPO的时间内到达稳定状态(关于tRSTTEMPO数值可参考数据 手册中的相关部门),且VDD > VBAT + 0.6V时,电流大概通过VDD和VBAT之间的内部二极管注入到 VBAT。 如果与VBAT连接的电源或者电池不能承受这样的注入电流,强烈建议在外部VBAT和电源之间连 接一个低压降二极管
如果在应用中没有外部电池,建议VBAT在外部连接到VDD并连接一个100nF的陶瓷滤波电容,更 多细节请参阅AN2586。
当备份区域由VDD(内部模拟开关连到VDD)供电时,下述功能可用:
- PC14和PC15可以用于GPIO或LSE引脚
- PC13可以作为通用I/O口、TAMPER引脚、RTC校准时钟、RTC闹钟或秒输出(拜见第5 38/754 章:备份寄存器(BKP))
注: 由于模拟开关只能通过少量的电流(3mA),在输出模式下使用PC13至PC15的I/O口功能是有限 制的:速率必须限制在2MHz以下,最大负载为30pF,而且这些I/O口绝对不能当作电流源(如驱 动LED)。
当后备区域由VBAT供电时(VDD消散后模拟开关连到VBAT),可以使用下述功能:
- PC14和PC15只能用于LSE引脚
- PC13可以作为TAMPER引脚、RTC闹钟或秒输出(拜见第5.4.2节:RTC时钟校准寄存器 (BKP_RTCCR))
手册这里特意强调了PC13~PC15端口绝对不能驱动LED,但是最小系统板有两个LED,一个就是PC13,另一个是电源指示灯,就……
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |