一个解决Flash模拟EEPROM寿命短问题的方法

2019-07-20 21:34发布

QQ截图20160624142510.png
方法如图
由于Flash擦写次数的限制,并不适合用于存储每天需要更新的一些数据,比如生产计数类数据。按最坏情况计算的话,1K次擦写也就3年多点,对于设备来说三年是远远不够的。
我刚想了个解决办法,求拍砖,求改进。

将数据同时写入A,B,C三个区域,在D中记录三个区域的地址。

开机读取数据时从D中获取地址后获取数据并判断是否一致,如果一致就说明数据可靠,继续运行
如果不一致,丢弃不一致的那个(我认为同一块IC的Flash的不同区域擦写寿命不是完全一样的,会有差异,那么肯定会有一个先坏!即使是一样的,也可以在第一次存储的时候在区域A中多擦几次解决)

将数据搬移到另外三个区域,原来的都不要用了(继续用也是可以的),同时更新存储地址的D

STM32的Flash一般很大,无所谓一点让费。频繁修改的数据最好关机存。

以前是混阿mo的(付费用户)
第一次这里发帖
也说话你们的方法呗

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。