STM32L151C8T6电源控制模块的使用(PVD、BOR、POR/PDR的理解)
第一次在CSDN上写博客,有错误还请大佬指出。
本人在项目过程中应用stm32l151模块,在以前的项目中,对电源的要求并不高,一般都是直接上电直接断电,这样并没有对电源方面考虑很多,但是这次的项目对电源方面提出很多要求,由于本次项目采用的是电容供电,而且电路的供电部分的设计导致了芯片的上电和断电是一个很缓慢的过程,以正常的思维进行程序设计的时候,就是在上电后读取断电时保存在EEPROM中的数据的时候,发现读取到的数据并不正常,和正常的数据存在着偏差,所以思考再三觉得是由于上电缓慢,这样导致了虽然程序在一定的电压下开始工作,但是部分外设并没有进行正常的配置。所以发生了一些未知错误。
阅读stm32芯片手册,发现其中的电源管理模块可以解决相关问题。
基本概念:
首先是基本概念的阐述:(本基本概念部分摘自stm32l151c8芯片手册以及零死角玩转STM32—基于野火F429[挑战者]开发板)
1、上电复位与掉电复位(POR 与PDR)
当检测到VDD 的电压低于阈值VPOR 及VPDR 时,无需外部电路辅助,STM32 芯片 会自动保持在复位状态,防止因电压不足强行工作而带来严重的后果。见图1(此图片摘自stm32l151c8手册P54),在刚开始电压低于VPOR 时(约1.5V),STM32 保持在上电复位状态(POR,Power On Reset),当 VDD 电压持续上升至大于VPOR 时,芯片开始正常运行,而在芯片