微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 关于EEPROM数据出错问题的探讨

关于EEPROM数据出错问题的探讨

时间:04-16 来源:电子产品世界 点击:

监视3.3V电源,当3.3V下降到约2.9V~3.0V(我们暂且称之为复位电压)之间时复位电路发出复位信号对主CPU进行复位,CPU在还是正常工作状态下停止对EEPROM写数据,通过总线对EEPROM复位,从而避免了数据出错。其时序如图3所示,通道1位3.3V电源,通道2为复位信号,由图可以看出,3.3V电源电压下降到2.9V左右复位电路开始动作,发出复位信号(图3是低电压复位的示意图)。

必须注意复位电压的高低选取非常重要,复位电压过高即很接近3.3V会因为轻微的电压波动而造成误动作;复位电压过低则起不到应有的作用,即不能在主CPU电源电压降到非正常之前进行复位。

另外,监视电压的选取不一定必须是主CPU的电源电压,选取提供3.3V电源的稳压器的输入端电压(例如5.0V或更高)作为监视电压往往会有更好的效果,因为关机时电压高的电源总是首先下降,当然复位电压也要相应的提高才能够匹配。例如稳压器的输入端电压是5.0V,复位电压选取在4.3V~4.7V之间,关机时当5.0V电压下降到4.3V~4.7V之间时3.3V电压还没有下降,这时候复位电路就发出复位信号使主CPU复位,更能保证主CPU和EEPROM还是在正常工作的情况进行了复位,也就没有了数据出错的可能。时序关系如图4所示,通道1为3.3V电源,通道2位稳压器的输入电源5V。

其次,软件在设计时考虑把用户修改的数据“即时”写入,例如用户在调整音量时,只要松开按键就要把当前到的数据写入到EEPROM中,而一般的数据写入时间较短(一般为几十毫秒),所以这种情况下在写数据时关机的可能性极小,极大的降低了出错的概率。

另外,软件设计时还要考虑数据在EEPROM里面的存放问题,EEPROM中数据存放的空间分成若干个区域,我们把每一个区域叫做“节点”。一个“节点”上不要存放太多的数据,尽量把数据平均的分配到各个“节点”上,这样就避免了在数据写入的时候占用较长的时间,从而降低了数据出错的概率。如果某些方面的数据很大而又不方便拆开放置,如保存频道的信息,则这些数据不要和用户要经常调整的数据放在一个“节点”上。因为用户一般不会经常改变频道信息,除非进行搜索节目,而这样的操作极少进行,也就不会经常对这个“节点”进行数据写入,从而出错的概率大大降低。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top