新聞中心

EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > Flash數(shù)據(jù)為何不翼而飛

Flash數(shù)據(jù)為何不翼而飛

作者:ZLG致遠(yuǎn)電子 時(shí)間:2016-12-08 來(lái)源:電子產(chǎn)品世界 收藏

  貼板后跑不起來(lái)?里面的數(shù)據(jù)在使用過(guò)程中莫名改變或不翼而飛?程序丟失可能無(wú)法正常運(yùn)行,從而造成整個(gè)系統(tǒng)崩潰,下面我們來(lái)看看是什么原因讓數(shù)據(jù)異常變化。

本文引用地址:http://www.butianyuan.cn/article/201612/341326.htm

    

 

  1、用戶代碼對(duì)的誤操作不當(dāng)引起程序丟失或被錯(cuò)誤改寫(xiě)

  例如,在有對(duì)寫(xiě)入或擦除操作的代碼中,如果用戶誤調(diào)用了寫(xiě)入或擦除函數(shù)或者由于程序跑飛而恰好執(zhí)行了Flash擦除或?qū)懭牒瘮?shù),這自然會(huì)導(dǎo)致數(shù)據(jù)丟失或改變。針對(duì)以上情況,可以在程序中設(shè)置多個(gè)允許操作的變量,當(dāng)執(zhí)行寫(xiě)入或擦除操作時(shí),對(duì)這些變量進(jìn)行判斷,只有條件全部滿足時(shí),才執(zhí)行相應(yīng)的操作。在一些不需要進(jìn)行擦除或?qū)懭氩僮鞯南到y(tǒng)中,對(duì)存儲(chǔ)區(qū)進(jìn)行寫(xiě)保護(hù)或擦除保護(hù)設(shè)置,能有效的防止數(shù)據(jù)被意外修改。做到了寫(xiě)入或擦除的可控性,基本可以避免此種情況發(fā)生。

    

  圖1 Flash保護(hù)

  2、電源失效

  圖2 電源噪聲嚴(yán)重

  電源電壓的異??赡軙?huì)導(dǎo)致系統(tǒng)單片機(jī)系統(tǒng)工作異常的現(xiàn)象,如輸出電壓小于單片機(jī)系統(tǒng)工作所需的最小電壓,輸出電壓不干凈,噪音嚴(yán)重等,這些很容易引起單片機(jī)內(nèi)部電路的邏輯紊亂,F(xiàn)lash的讀寫(xiě)信號(hào)處于不穩(wěn)定狀態(tài)??赡墚a(chǎn)生滿足Flash的寫(xiě)操作,從而給系統(tǒng)帶來(lái)嚴(yán)重的損害。針對(duì)以上情況,可以在系統(tǒng)中加入電源監(jiān)控或使能MCU本身的電源監(jiān)控電路,在電源異常的情況下禁止對(duì)Flash區(qū)域操作。

  3、系統(tǒng)時(shí)鐘不穩(wěn)定

  無(wú)論對(duì)于內(nèi)部Flash還是外部Flash,系統(tǒng)時(shí)鐘的不穩(wěn)定,都將導(dǎo)致MCU得不到可靠的工作時(shí)序信號(hào),從而在讀寫(xiě)Flash時(shí)產(chǎn)生不可預(yù)料的后果。

  4、環(huán)境干擾

  環(huán)境干擾的可能原因很多,如生產(chǎn)過(guò)程中的高溫焊接、靜電、使用環(huán)境的溫濕度,強(qiáng)磁場(chǎng)等,都可能影響到Flash或整個(gè)系統(tǒng)的穩(wěn)定。環(huán)境干擾的因素很多,在此不展開(kāi)討論。



關(guān)鍵詞: Flash 芯片

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉