EEPROM數(shù)據(jù)丟失的原因與對(duì)策
要防止EEPROM數(shù)據(jù)被破壞,主要在以下幾方面做工作:
1、選用比MCU的電源范圍寬并有WP引腳的EEPROM芯片;
2、做好電源濾波,而且要等電源開(kāi)機(jī)穩(wěn)定后才去讀寫(xiě)EEPROM;
3、做好復(fù)位電路;
4、做好軟件跑飛的處理;
5、SDA和SCK的上拉最好用I/O口控制,既可省電,也可在一定情況下保護(hù)EEPROM;
6、WP接MCU的RESET;如WP做軟件保護(hù),將寫(xiě)不進(jìn)數(shù)據(jù);接I/O,上電時(shí)WP的狀態(tài)可能不穩(wěn)定。
7、EEPROM空間富余時(shí)考慮雙備份或多備份數(shù)據(jù),每份數(shù)據(jù)都有校驗(yàn)和。
選用比MCU的電源范圍寬并有WP引腳的EEPROM芯片的原因:
1、EEPROM的芯片本身有一定的保護(hù)時(shí)序;
2、電源低于MCU工作電源高于EEPROM芯片的最低工作電源時(shí),EEPROM芯片會(huì)處于穩(wěn)定狀態(tài),不會(huì)丟失數(shù)據(jù)。
3、當(dāng)電源較長(zhǎng)時(shí)間低于EEPROM芯片的最低工作電壓時(shí)非常容易丟失全部數(shù)據(jù)。否則MCU還能工作,但EEPROM芯片已不能工作時(shí),EEPROM中的數(shù)據(jù)會(huì)全部丟失。
4、用I/O口線給EEPROM供電,只在讀寫(xiě)EEPROM時(shí)才給器件供電,不僅能提高可靠性,而且能省電。
但有兩點(diǎn)要注意:
一是一些單片機(jī)復(fù)位時(shí)所有I/O都是高電平,會(huì)使EEPROM芯片進(jìn)入工作;
二是EEPROM芯片給電后需要有大于寫(xiě)周期的延時(shí)才能讀寫(xiě)。
EEPROM數(shù)據(jù)丟失的原因與對(duì)策
1、環(huán)境因素
★原因:高溫、高濕、輻射、靜電、強(qiáng)電磁場(chǎng)均可能使EEPROM存儲(chǔ)單元
造成數(shù)據(jù)丟失或數(shù)據(jù)保存時(shí)間縮短。
●對(duì)策:
①不要在高溫、高濕、輻射、靜電、強(qiáng)電磁場(chǎng)環(huán)境中存放EEPROM器,如果法避免,應(yīng)采取適當(dāng)?shù)姆雷o(hù)措施。
②在高溫環(huán)境中使用EEPROM器件,須確認(rèn)存儲(chǔ)內(nèi)容的更新時(shí)間和器件使用期限
③工作環(huán)境濕度較大時(shí)可考慮線路板灌膠防潮,防水膠要選用吸水率低的
④在輻射、靜電、強(qiáng)電磁場(chǎng)環(huán)境中工作要做好屏蔽。
2、設(shè)計(jì)因素
★原因:器件在讀寫(xiě)時(shí)系統(tǒng)狀態(tài)不定。
●對(duì)策:
①增加上電復(fù)位電路,確保在上、掉電期間系統(tǒng)處于確定的狀態(tài)。復(fù)位門(mén)檻電壓應(yīng)不小于MCU最低工作電壓,EEPROM器件的工作電壓范圍應(yīng)不小于MCU。
注意:某些MCU內(nèi)置的POR電路在電源上升緩慢時(shí)不能保證可靠復(fù)位
②增加電源電壓檢測(cè)電路,確保在電源電壓穩(wěn)定正常后MCU才開(kāi)始運(yùn)而在電源狀態(tài)不定時(shí)不訪問(wèn)EEPROM。啟用MCU內(nèi)的BOD電路不足以防止
EEPROM讀寫(xiě)錯(cuò)誤。
③利用器件的“寫(xiě)保護(hù)”引腳,可以減小EEPROM被意外改寫(xiě)的幾率
★原因:器件在讀寫(xiě)時(shí)被異常中斷。
●對(duì)策:
①確認(rèn)電源電壓從正常值跌落至MCU復(fù)位門(mén)檻電壓的時(shí)間足夠保持EEPROM讀寫(xiě)操作完成。根據(jù)需要增加電源儲(chǔ)能電容或者使用備份電源。
②在檢測(cè)到電源電壓跌落時(shí)立即關(guān)閉所有無(wú)關(guān)外設(shè),在訪問(wèn)EEPROM期間禁止MCU中斷,或者設(shè)置EEPROM讀寫(xiě)中斷為最高優(yōu)先級(jí)。
③使用“寫(xiě)入查詢”加快寫(xiě)入過(guò)程。
★原因:模擬總線時(shí)序不夠嚴(yán)格規(guī)范。
●對(duì)策:
①總線上拉電阻太大,使SDA、SCL邊沿上升時(shí)間太長(zhǎng)。對(duì)400kHz快速模式,當(dāng)總線電容小于100pF時(shí)上拉電阻推薦值為2.7kΩ。
②MCU操作速度太快或延時(shí)不夠,不滿足總線信號(hào)的建立、保持時(shí)間查閱《I2C總線技術(shù)精要》,按示例規(guī)范時(shí)序編程。
③總線過(guò)長(zhǎng),使信號(hào)邊沿不能滿足要求。應(yīng)縮短總線長(zhǎng)度。
④總線電容超過(guò)400pF。應(yīng)減少總線上所連接的器件。
★原因:器件在讀寫(xiě)時(shí)總線受到干擾。
●對(duì)策:
①如應(yīng)用板干擾較大,應(yīng)重新設(shè)計(jì)電路或改變PCB布局布線,敷銅或多層板改善EMC。如環(huán)境干擾較大,應(yīng)采取相應(yīng)的屏蔽措施。
②使用數(shù)據(jù)編碼和校驗(yàn)增加數(shù)據(jù)的可信性,或?qū)懭胩囟?biāo)志來(lái)識(shí)別數(shù)據(jù)完整性,如有可能,在每次寫(xiě)入完成后立即讀出校驗(yàn)。
★原因:地線不合理或電源噪聲干擾。
●對(duì)策:
①重新布置地線,注意區(qū)分模擬地、數(shù)字地、信號(hào)地、功率地、屏蔽地,安全地
②使用帶屏蔽的隔離電源;在電源線上增加LC濾波器;IC器件的電源引腳加0.1uF瓷介退耦電容。別忘了三個(gè)基本電路元件之一的電感器,抑制電源噪聲干擾,電感器通常有立竿見(jiàn)影的作用。必要時(shí),加磁珠抑制高頻噪聲干擾。
評(píng)論