STM32 POR 上电断电等的操作
2022.05.03
偶然看到这个文章:
STM32L151缓慢上断电-电源控制模块的使用(PVD、BOR、POR/PDR)
可见我以往忽视了多么重要的知识点。
经过测试 STM32F407 ,运行这句话:
printf("defalut bor value is %d\r\n", xxxFLASH_OB_GetBOR());
得到:defalut bor value is 12。
也就是
#define OB_BOR_LEVEL3 ((uint8_t)0x00) /*!< Supply voltage ranges from 2.70 to 3.60 V */ #define OB_BOR_LEVEL2 ((uint8_t)0x04) /*!< Supply voltage ranges from 2.40 to 2.70 V */ #define OB_BOR_LEVEL1 ((uint8_t)0x08) /*!< Supply voltage ranges from 2.10 to 2.40 V */ #define OB_BOR_OFF ((uint8_t)0x0C) /*!< Supply voltage ranges from 1.62 to 2.10 V */
可以看出默认是OB_BOR_OFF。也就是1.62到2.1V. 我估计用这个电压 那个晶振的启动的那个值估计不小。感觉最好是用OB_BOR_LEVEL3。