單片機(jī)存儲(chǔ)器信息的斷電保護(hù)
在計(jì)算機(jī)系統(tǒng)中,無論使用動(dòng)態(tài)RAM還是使用靜態(tài)RAM,其最大的缺點(diǎn)是在斷電以后,它所存儲(chǔ)的信息即隨之消失。即使是瞬時(shí)斷電也會(huì)使它所存儲(chǔ)的信息全部丟失。如果計(jì)算機(jī)處在運(yùn)行的過程中,則其原始數(shù)據(jù)及運(yùn)算結(jié)果被丟失。如果在調(diào)試程序的過程中,發(fā)現(xiàn)硬件要作某些改動(dòng),則在關(guān)機(jī)修改硬件時(shí),其調(diào)試程序及數(shù)據(jù)也全部丟失。因此采取措施以防止RAM中的信息在斷電時(shí)丟失是必要的。
斷電保護(hù)要求在電源發(fā)生故障或人為切斷電源時(shí),能在電源電壓下降的過程中,保護(hù)CPU的狀態(tài)信息以及RAM中的數(shù)據(jù)或程序。當(dāng)電源恢復(fù)正常時(shí),將原來CPU的狀態(tài)及RAM中的數(shù)據(jù)或程序恢復(fù)、并繼續(xù)工作。
斷電保護(hù)系統(tǒng)包括斷電檢測(cè),停機(jī)電路和數(shù)據(jù)、狀態(tài)保護(hù)電路三部分。
由于穩(wěn)壓電源中采用了大容量的電容,使得交流電停止供電以后,其穩(wěn)壓后的直流電壓按指數(shù)規(guī)律下降。斷電檢測(cè)電路在檢測(cè)出電源電壓下降時(shí),向CPU申請(qǐng)中斷,利用電源電壓下降到額定工作電壓之前的一段時(shí)間,把CPU的狀態(tài)信息及RAM中的信息傳送到具有斷電保持信息的存儲(chǔ)器中去,然后主動(dòng)停機(jī)。主動(dòng)停機(jī)的目的在于防止電源電壓下降到額定工作電壓以下時(shí),由于電路的不穩(wěn)定而進(jìn)行錯(cuò)誤操作。
在有些簡(jiǎn)單的系統(tǒng)中,也可以不保護(hù)CPU的狀態(tài)信息而只保護(hù)RAM中的信息。此時(shí)只需在斷電時(shí)將RAM中的信息傳到具有斷電保持信息的存儲(chǔ)器中。
除了利用鐵電存儲(chǔ)器,如F1608之外,解決這個(gè)問題的一個(gè)方法是利用靜態(tài)RAM的低電壓保持信息的功能,對(duì)這些靜態(tài)RAM采用后備電源供電。
靜態(tài)RAM 6116,6264都具有這一功能。當(dāng) VCC大于2V,而片選信號(hào) -CS≥VCC-0.2V時(shí),能以極小的功耗保持其存儲(chǔ)的信息,此時(shí)流過電路的電流僅1~100μA。
因此,當(dāng)電源斷電以后,我們可以用一個(gè)大于2V的后備電源對(duì)其繼續(xù)供電。后備電源可采用電池,圖1即為一個(gè)采用電池供電的電路。在正常供電時(shí),D1導(dǎo)通,D2截止,電池不起作用。6116或6264的電源電壓為5V減去二極管的壓降。在斷電時(shí),D1截止,D2導(dǎo)通,由電池供電,6116或6264的電源電壓為電池電壓減去二極管的壓降。由譯碼器輸出的片選信號(hào)通過三極管加到存儲(chǔ)器的片選端上,在正常供電時(shí),此三極管的導(dǎo)通與否受到譯碼器輸出的控制。當(dāng)譯碼器輸出為低電平時(shí),三極管導(dǎo)通,該存儲(chǔ)器被選中。當(dāng)譯碼器輸出為高電平時(shí),三極管截止,該存儲(chǔ)器未選中。在斷電時(shí),三極管的基極電壓為零,因而此三極管截止,存儲(chǔ)器的片選端與VCC端電壓相等,這時(shí)僅用幾個(gè)μA就能保持其信息。對(duì)于圖1,如加上虛線框內(nèi)的D3及R1,則電池可改為充電電池。這樣在正常供電時(shí),由電源通過D3及R1對(duì)電池充電,而在斷電時(shí),由電池供電,以保證長(zhǎng)時(shí)間使用。
圖1 后備電源供電
采用上述方法應(yīng)選用壓降小的二極管.以保證電源電壓減去二極管的壓降后的電壓仍能使存儲(chǔ)器正常工作。
編輯:admin 最后修改時(shí)間:2018-05-08