EEPROM数据丢失的原因与对策

2019-07-13 23:21发布

EEPROM 数据被破坏的主要原因有:   1、电源异常使EEPROM的数据彻底丢失;   2、复位不好和软件跑飞可能会使EEPROM的数据被改写。

要防止EEPROM数据被破坏,主要在以下几方面做工作:
1
、选用MCU的电源范围宽并有WP引脚的EEPROM芯片
2
、做好电源滤波,而且要等电源开机稳定后才去读写EEPROM
3
、做好复位电路;
4
、做好软件跑飞的处理;
5
SDASCK的上拉最好用I/O口控制,既可省电,也可在一定情况下保护EEPROM
6
WPMCURESET;如WP做软件保护,将写不进数据;接I/O,上电时WP的状态可能不稳定
7
EEPROM空间富余时考虑双备份或多备份数据,每份数据都有校验和。
选用比MCU的电源范围宽并有WP引脚的EEPROM芯片的原因:
1
EEPROM的芯片本身有一定的保护时序;
2
、电源低于MCU工作电源高于EEPROM芯片的最低工作电源时,EEPROM芯片会处于稳定状态,不会丢失数据。
3
当电源较长时间低于EEPROM芯片的最低工作电压时非常容易丢失全部数据。否则MCU还能工作,但EEPROM芯片已不能工作时,EEPROM中的数据会全部丢失
4
、用I/O口线给EEPROM供电,只在读写EEPROM时才给器件供电,不仅能提高可靠性,而且能省电。
但有两点要注意:
一是一些单片机复位时所有I/O都是高电平,会使EEPROM芯片进入工作;
二是EEPROM芯片给电后需要有大于写周期的延时才能读写。