新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 單片機應用系統(tǒng)斷電時的數據保護方法

單片機應用系統(tǒng)斷電時的數據保護方法

——
作者:平原大學 蘇明強 鄺濤 時間:2007-01-26 來源:《單片機與嵌入式系統(tǒng)應用》 收藏

在測量、控制等領域的應用中,常要求單片機內部和外部ram中的數據在電源掉電時不丟失,重新加電時,ram中的數據能夠保存完好,這就要求對單片機系統(tǒng)加接掉電保護電路。掉電保護通??刹捎靡韵氯N方法:一是加接不間斷電源,讓整個系統(tǒng)在掉電時繼續(xù)工作,二是采用備份電源,掉電后保護系統(tǒng)中全部或部分數據存儲單元的內容;三是采用eeprom來保存數據。由于第一種方法體積大、成本高,對單片機系統(tǒng)來說,不宜采用。第二種方法是根據實際需要,掉電時保存一些必要的數據,使系統(tǒng)在電源恢復后,能夠繼續(xù)執(zhí)行程序,因而經濟實用,故大量采用[1]。eeprom既具有rom掉電不丟失數據的特點,又有ram隨機讀寫的特點。但由于其讀寫速度與讀寫次數的限制,使得eeprom不能完全代替ram。下面將介紹最常用的一些掉電保護的處理方法,希望能對相關設計人員在實際工作中有所幫助。

1 簡單的ram數據掉電保護電路

在具有掉電保護功能的單片機系統(tǒng)中,一般采用cmos單片機和cmos ram。cmos型ram存儲器靜態(tài)電源小,在正常工作狀態(tài)下一般由電源向片外ram供電,而在斷電狀態(tài)下由小型蓄電池向片外ram供電,以保存有用數據,采用這種方法保存數據,時間一般在3-5個月[2]。然而,系統(tǒng)在上電及斷電過程中,總線狀態(tài)的不確定性往往導致ram內某些數據的變化,即數據受到沖失。因此對于斷電保護數據用的ram存儲器,除了配置供電切換電路外,還要采取數據防沖失措施,當電源突然斷電時,電壓下降有個過程,cpu在此過程中會失控,可能會誤發(fā)出寫信而沖失ram中的數據,僅有電池是不能有效完成數據保護的,還需要對片選信號加以控制,保證整個切換過程中cs引腳的信號一直保持接近vcc。通常,采用在ram的cs和vcc引腳之間接一個電阻來實現coms ram的電源切換,然而,如果在掉電時,譯碼器的輸出出現低電平,就可能出現問題,圖1給出一種簡單的電路設計,它能夠避免上述問題的產生。

圖1中,4060開關電路起到對cs控制的作用。當電壓小于等于4.5v時就使開關斷開,cs線上拉至"1",這樣,ram中的數據就不會沖失;當電壓大于4.5v時,4060開關接通,使ram能正常進行讀寫。

本文引用地址:http://butianyuan.cn/article/21175.htm

2 可靠的ram掉電保護電路

上述的電路雖然簡單,但有時可能起不到ram掉電保護的作用,原因是在電源掉電和重新加電的過程中,電源電壓躍變的干擾可能使ram瞬間處于讀寫狀態(tài),使原來ram中的數據遭到破壞,因此,在掉電剛剛開始以及重新加電直到電源電壓保持穩(wěn)定下來之前,ram應處于數據保持狀態(tài),6264 ram、5101 ram等ram芯片上都有一個ce2引腳,在一般情況下需將此引腳拉高,當把該引腳拉至小于或等于0.2v時,ram就進入數據保持狀態(tài)。

實用的靜態(tài)ram掉電保護電路如圖2所示,圖2中u1、u2為電壓比較器,穩(wěn)壓管d3提供一個基準電壓vr(vr=3.5v)。當vcc為5v時,在r4上得到的分壓大于vr,u2輸出高電平,又因為u4輸出也為高電平,故ce2輸出為高電位,單片機此時可對ram進行存取,當電源掉電時,vcc開始下降,當滿足如下條件時:

r4×vcc/[(r4+r3)/(r5+r6)]≥vr


u2輸出低電平,通過u5和u6使ce2輸出小于等于0.2v,ram進入數據保持狀態(tài)(按圖2中元件參數代入上式,當vcc降到4.7v時,u2輸出為低電位)。若vcc繼續(xù)下降使u3翻轉,再通過d4、u4和u6進一步保證ce2為低電平。此外,當vcc下降到小于e時,d2截止,d1導通,這時e作為ram的備份電源,當單片機重新加電時,vcc由0躍變到5v時,u2的輸出端會出現瞬間的干擾脈沖,由于u3和u4間電路的積分延遲(約0.7rc),ce2并不立即升到高電平,因而阻止了u2的干擾脈沖,當延時結束時,電源電壓已穩(wěn)定在5v,此后ce2升高,單片機便可對ram進行存取。圖2中u3和u6為一塊四施秘特與非門(cd4093),該電路直接由e供電,這樣才能保證掉電后使ce2≤0.2v,并在重新加電時ce2不受電源電壓躍變的干擾,比較器u1和u2為電源供電,vcc為后備電源u1的電壓監(jiān)視電路,當后備電池快用完時(小于3.5v),發(fā)光管會發(fā)出亮光,表明要換上新電池,備份電源可用3節(jié)5號干電池,也可以采用鋰電池或鎳電池。

3 利用tl7705對現場數據進行保護

單片機構成的應用系統(tǒng)在突然斷電時,往往使片內ram數據遭到破壞,下面介紹一種利用tl7705構成的電源監(jiān)控電路,使單片機系統(tǒng)在掉電時自動保護現場數據。

3.1 tl7705的工作原理

tl7705是電源監(jiān)控用集成電路,采用8腳雙列直插式封裝,其內部結構圖3所示。圖3中,基準電壓發(fā)生器具有較高的穩(wěn)定性,可由1腳輸出2.5v基準電壓,為了吸收電源的同脈沖干擾,通常在1腳上接一個0.1μf的濾波電容來提高其抗干擾能力,被監(jiān)控的電源電壓由sense端7腳引入,經過r1和r2分壓后送入比較器cmp1,與基準電壓進行比較,當其值小于基準電壓時,t1導通,定時電容ct通過t1放電,使cmp2比較器翻轉,t2和t3導通,輸出腳reset為高電平,seset反為低電平,當送入cmp1比較器的電壓高于基準電壓時,t1截止100μa恒流源給ct充電,當ct上的電壓高于2.5v時,cmp2比較器翻轉,t2和t3截止,reset和reset反輸出關斷。

3.2 tl7705與80c51單片機的接法

在某些單片機應用系統(tǒng)中需要在系統(tǒng)掉電時記憶當前現場狀態(tài),以使電源恢復后能繼續(xù)從斷電處運行,圖4是以80c51單片機為例采用其空閑方式或掉電方式,在備用電池支持下實現掉電后的數據保護。

圖4中,r1、c1和74lso4構成單片機的上電自動復位和手動按鈕復位電路,備用電池p1及d1、d2實現掉電時備用電池的切換。電源正常時d1不導通,+5v直接給單片機供電,并為電池p1充電,為了減小電池耗電,備用電池只給單片機供電,保護片內ram中的數據,電源掉電后,其他外圍電路的工作電壓僅靠電源電容維持很短的時間,電位器rw用來調節(jié)檢測電壓,范圍為4.5-4.75v,當掉電時,外圍電路的電壓下降到門限設定電壓時,可將片外ram中需要保護的數據寫入片內ram中,并使單片機進入掉電工作方式以完成數據保護,為了保證單片機有足夠的處理時間,取檢測電壓為4.75v,當電源電壓降至4.75v時,tl7705由reset反向單片機發(fā)出中斷請求信號(into反)。單片機運行到一個可斷斷點后,相應中斷,在中斷服務程序中保護現場數據,使單片機進入掉電工作狀態(tài)。

4 采用軟件冗余措施保證數據的準確性。

最常用的一種方法是采用軟件冗余措施,即將欲保護的數據寫入ram中的不同區(qū)域,如0000h-00ffh、0100h-01ffh和0200h-02ffh這三個區(qū)域存儲同樣一組數據,當使用這些數據前,先對各組進行檢查,對于正確的數據方可應用,同時將錯誤的數據進行修正,在上電與斷電過程中,總線不確寫性是隨機的,不可將所有數據完全沖失。采用硬件對數據進行斷電保護,同時在軟件上采用冗余的措施是最常用的數據保護方法,在斷電突然發(fā)生時可保證數據的準確無誤。

雙控開關相關文章:雙控開關原理


關鍵詞:

評論


相關推薦

技術專區(qū)

關閉