Bootstrap

STM32F4断电存储问题

需要对产品增加断电存储功能,因为设计电路板之前考虑设备供电及运行情况,加之电路板面积资源紧张,所以没考虑做断电存储。但在测试过程中,客户提出断电存储数据的要求。

断电存储考虑几种方案:1 FLASH  2 外部EEROM 3 RTC 

由于STM32F4的FALSH次数限制,还有存储数据较多,另一方面FLASH已经存储了一部分系统的设置参数,所以不作为优先考虑方案。

RTC由于存储量限制,要存储的数据是它的几十倍,也不做考虑。

正好板子上已经化了EEROM的位置,从24C02到24C256都可以选择,而不用更改硬件。

根据存储数据量,选择24C256.

在测试代码过程中,发现24C256只能存储60条浮点数,经测试,发现IIC延时过长,减少延时。能存储数据增加到135条。

由于电路板3.3V的电容只有2720uF,把两个10UF16V电容改为108钽电容,经测试,全部350条数据都能存储。

后来又有几次存不住,原来是特么24LC256最低工作电压2.5v,更换更低电压eerom解决

 

影响断电存储的因素:

1 MCU电源电容

2 EEROM电源电压

3 MCU复位电压

4 有源晶振电压

其中1,2,4必须同源,3必须尽可能低,否则没等EEROM存储结束,已经复位了。

;