电子说
EEPROM是电可擦可编程只读存储器的意思,eeprom故障可能是输入输出存储器错误,也可能是输入输出存储器芯片断路、短路或者内部击穿。按照相关协议来看,EEPROM错误的情况多数为A0区间的值由于误操作或者I2C冲突而被改写。通常的解决办法是RMA回原生产厂家维修。
由于现在的光模块普遍采用MCU功能芯片,可以要求厂家生产模块时做A0EEPROM区间的写保护(客户定制的方式)。如果出现较多数量的光模块存在该问题,则需要检查是否有程序软件做了错误的修改。另外也需要检查核实光模块是否被误用,因为不同速率的光模块,其AOEEPROM的信息是不一样的。
这个也适用其他的电子类产品,只是需要参照的协议不同。
由于EPROM操作的不便,后来出的主板上BIOS ROM芯片大部分都采用EEPROM(Electrically Erasable Programmable ROM,电可擦除可编程ROM)。EEPROM的擦除不需要借助于其它设备,它是以电子信号来修改其内容的,而且是以Byte为最小修改单位,不必将资料全部洗掉才能写入,彻底摆脱了EPROM Eraser和编程器的束缚。EEPROM在写入数据时,仍要利用一定的编程电压,此时,只需用厂商提供的专用刷新程序就可以轻而易举地改写内容,所以,它属于双电压芯片。借助于EEPROM芯片的双电压特性,可以使BIOS具有良好的防毒功能,在升级时,把跳线开关打至“on”的位置,即给芯片加上相应的编程电压,就可以方便地升级;平时使用时,则把跳线开关打至“off”的位置,防止CIH类的病毒对BIOS芯片的非法修改。所以,仍有不少主板采用EEPROM作为BIOS芯片并作为自己主板的一大特色。
在项目开发中经常使用到EEPROM,现在把自己开发中曾经遇到的陷阱和自己的解决方法列出。(1)现象:加密型遥控器的ID自动丢失和改变。
原因:在更新EEPROM过程中,断开电源。
解决方法:
a.更改设计避免在写入EEPROM过程中断开电源;
b.增加100uF的电容,断电后瞬间维持EEPROM供电正常至EEPROM写入完成。
(2)现象:保存在EEPROM里的配置信息自动被改变。
原因:在EEPROM读写过程中进入了中断服务程序,而中断服务程序也调用了EEPROM读写函数。
解决方法:
a.保证EEPROM读写函数的第一句是cli(),最后一句是sei();
b.中断服务程序不直接调用EEPROM读写函数,如果SRAM足够大使用读写缓冲区代替直接读写EEPROM,中断返回后在主循环粒更新EEPROM;
c.如果检测到EEPROM已被占用,则进入阻塞状态,等待EEPROM释放后继续执行;
d.如果EEPROM里的数据长度大于EEPROM最小存储单元,必须保证该数据的读写不被打断。
(3)现象:突然断电时,EEPROM数据偶尔会丢失。 原因:在断电时刚好在进行EEPROM写操作。
解决方法:加大电源滤波电容的容量,增加电压检测功能,当电压偏低时禁止EEPROM写入操作。
(4)现象:当大功率交流或直流电机启动或后,EEPROM里的数据自动丢失或改变。
原因:在大功率电机启动或断开瞬间EMI干扰大。
解决方法:
a.避开这些时候读写EEPROM。
b.如果无法避开这些时候,启动EEPROM写保护功能,并且每个数据都保存多个副本。
c.使EEPROM和EEPROM的DAT,CLK等信号线远离可能产生干扰的元件,并且避免形成大的环路。
d.使用EMI抑制威廉希尔官方网站 降低干扰幅度。
全部0条评论
快来发表一下你的评论吧 !