你好我好大家好! 发表于 2016-12-25 20:54:39

外挂eeprom数据丢失问题

本帖最后由 你好我好大家好! 于 2016-12-25 22:02 编辑

      从上位机将数据写入eeprom后,在板子掉电之前从eeprom中读取数据,显示到上位机,数据全部正确。然后将板子断电,再上电,将数据从eeprom中读出,显示到上位机,结果发现其中少部分数据丢失,其他数据完好无损。而且不同板子都有上述问题,并且丢失的数据地址不一样,用的eeprom是intersil公司的x5163芯片,这样奇怪的想象有前辈们见过吗?帮忙指点下谢谢了!!!

黑皮男 发表于 2016-12-25 23:53:41

你这个估计是出在上电或是断电的过程中,上电时是不稳定的,程序乱飞,所以会意外更改存储媒介中的数据,解决方法是在上电时延时,或者通过硬件电路保证MCU电压稳定后才使能iic总线。或则有其他方法也行,要保证MCU电压稳定才对eeprom进行读写操作。当时用Flash时我遇到过这种情况

黑皮男 发表于 2016-12-25 23:57:14

这个一般是出在电压上升或是跌落的过程中,此时电压不稳,MCU程序乱飞。所以要保证MCU电压稳定后才对eeprom进行读写。一种方法是上电时延时才对eeprom读写。另一种方法是保证MCU电压稳定后才打开IIC总线,需要硬件配合一下。关键就是等MCU稳定再操作eeprom,当时用Flash时遇到过类似的问题。

奏奏奏 发表于 2016-12-26 04:22:08

我觉得可以用这样的顺序排查:
1、怀疑EEPROM问题:换一个兼容的另外一家公司的芯片,看一下还有没有这样的问题;
2、怀疑软件代码问题:(1)读取数据的代码有BUG?(2)存数据的代码有BUG?(3)与上位机的通讯有BUG?

andypanfan 发表于 2016-12-26 09:14:53

用了   EEPROM这么久没有出现过这种问题呀!!!!!

xhzheng 发表于 2016-12-26 10:44:49

基于目前的电路,增加一个WP保护引脚,在写入成功后,置H,
然后看看是否有数据丢失情况;

如果可以,使用示波器挂载看看波形;

你好我好大家好! 发表于 2016-12-27 12:09:06

黑皮男 发表于 2016-12-25 23:57
这个一般是出在电压上升或是跌落的过程中,此时电压不稳,MCU程序乱飞。所以要保证MCU电压稳定后才对eeprom ...

硬件配合的话,可以说得具体一些吗?谢谢了

你好我好大家好! 发表于 2016-12-27 12:10:13

黑皮男 发表于 2016-12-25 23:53
你这个估计是出在上电或是断电的过程中,上电时是不稳定的,程序乱飞,所以会意外更改存储媒介中的数据,解 ...

您用的也是外挂Flash吗?

黑皮男 发表于 2016-12-27 12:16:00

是外挂flash,配合硬件的意思是加一个IIC开关,待mcu稳定后再开启,不过这个的话会比较麻烦。不太清楚你这个eeprom有没有写保护控制脚,楼上说的对,如果有的话控制eeprom的写保护比较好

中山无雪 发表于 2016-12-27 22:18:58

上电后过段时间(几十个ms后)再读数据看看数据是否真的被改变了,eeprom芯片上电后也有个启动时间,只有等系统稳定后数据才能被正确读写。
页: [1] 2 3
查看完整版本: 外挂eeprom数据丢失问题