关于EEPROM循环使用的方法

2019-07-21 05:53发布

各位大侠,高手们
     最近遇到一个问题,写了一个程序用EEPROM存放数据,
     数据量不大但是一天内可能写的次数在20次左右。为了尽量提高使用寿命
     我想使整片EEPROM循环使用起来,但那样搜索范围变的比原来大很多了
     所以想将EEPROM分成块来使用,还是没想出来分块后具体怎么使用
      最近一直没想到一个好的方法,所以想请教一下各位大侠是怎么处理的?
    
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
林光华ing
2019-07-22 06:26
原子的方法挺好。
意思是设置地址区与数据区。比如地址区是首地址0,数据区是除了首地址所在扇区的其他扇区。地址区存储数据所在地址。每次存取数据之前,首先读地址区,查找(获取)数据所在位置。而如果想写数据,则需要先写后读,判断此数据是否还完好。如果不完好(此扇区坏了),就更改地址,同时要把地址记录在地址区。
此方法,一般来说,在地址扇区损坏之前,
数据扇区早已损坏完了。所以不必担心假如地址区坏的问题。。。(真担心那就把地址区扩大,也是写后读取,验证是否坏块。)
因为数据扇区损坏一次,地址扇区才会写一次。一个EEPROM能有多少个扇区?100K的擦除次数,代表100K个扇区,每个扇区4K,那是1.5GB了。那么大,基本都用TF卡了吧。


一周热门 更多>