首页 » 技术SOS » 嵌入式系统 » MCU和嵌入式微处理器 » eeprom丢失数据问题

eeprom丢失数据问题

菜鸟
2013-12-05 12:45:01
不定期丢失数据,一般每天约1次
分享
关键词: eeprom, 丢失数据  
院士
2013-12-05 16:53:53
1楼

1、电源异常使EEPROM的数据彻底丢失; 2、复位不好和软件跑飞可能会使EEPROM的数据被改写。 要防止EEPROM数据被破坏,主要在以下几方面做工作: 1、选用比MCU的电源范围宽并有WP引脚的EEPROM芯片; 2、做好电源滤波,而且要等电源开机稳定后才去读写EEPROM; 3、做好复位电路; 4、做好软件跑飞的处理; 5、SDA和SCK的上拉最好用I/O口控制,既可省电,也可在一定情况下保护EEPROM; 6、WP接MCU的RESET;如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芯片给电后需要有大于写周期的延时才能读写。