基于看門狗芯片MAX708的數(shù)據(jù)保護(hù)系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
單片機(jī)的程序穩(wěn)定性和運(yùn)行及數(shù)據(jù)的安全性是設(shè)計(jì)者在不同的運(yùn)行環(huán)境中所必須考慮的問(wèn)題,而最易遇到的問(wèn)題是受干擾而使CPU進(jìn)入死循環(huán),一般情況下設(shè)計(jì)者會(huì)使用軟件陷阱和軟件看門狗來(lái)避免此類現(xiàn)象的出現(xiàn),對(duì)于一般的運(yùn)行環(huán)境還可以,如果是連續(xù)運(yùn)行或環(huán)境惡劣的狀況時(shí)往往不能滿足要求,這時(shí)要使用硬件看門狗來(lái)重啟 CPU,使程序恢復(fù)正常運(yùn)行。同時(shí),如果電源電壓波動(dòng)較大或斷電,有些系統(tǒng)還要求將當(dāng)前有用的數(shù)據(jù)進(jìn)行保護(hù)。MAX708就是這種既有電源監(jiān)控和數(shù)據(jù)保護(hù)又有看門狗作用的集成電路芯片。
1 看門狗芯片MAX708的工作原理
MAX708是一種微處理器電源監(jiān)控和看門狗芯片,可同時(shí)輸出高電平有效和低電平有效的復(fù)位信號(hào)。復(fù)位信號(hào)可由VCC電壓、手動(dòng)復(fù)位輸入,或由獨(dú)立的比較器觸發(fā)。域值為1.25 V、用于電源失效或低電源警告的獨(dú)立比較器可用于監(jiān)視第2個(gè)電源信號(hào),為處理器提供電壓跌落的預(yù)警功能。這一功能是為器件發(fā)出復(fù)位信號(hào)前的正常關(guān)機(jī)、向操作者發(fā)送警報(bào)或電源切換及數(shù)據(jù)保護(hù)而考慮的。
MAX708提供有3種復(fù)位域值電平可供選擇,這3種域值為:2.63 V、2.93 V、3.08 V。同時(shí)提供手動(dòng)復(fù)位輸入信號(hào),在VCC=1 V時(shí)能提供有效的RESET復(fù)位信號(hào)。
MAX708內(nèi)部由上電比較器、復(fù)位信號(hào)發(fā)生器、反相器以及失電比較器組成。它們的引腳及功能分別說(shuō)明如下。
引腳1:MR,手動(dòng)復(fù)位輸入。當(dāng)MR輸人信號(hào)低于0.8 V時(shí),產(chǎn)生復(fù)位脈沖信號(hào)輸出。當(dāng)MR輸入低電平時(shí),會(huì)有250μA的內(nèi)部拉出電流,該拉出電流可以驅(qū)動(dòng)連接在MR端的TTL或CMOS邏輯門,也可以由開關(guān)短路到地。一般在MR輸入的手動(dòng)復(fù)位信號(hào)由開關(guān)或邏輯門產(chǎn)生,這時(shí),手動(dòng)開關(guān)應(yīng)接到地,或邏輯門應(yīng)輸出低電平。所以,MAX708內(nèi)部拉出電流會(huì)作為外部邏輯門的灌入電流,或開關(guān)短路到地的電流。
引腳2:VCC,+5 V電源。
引腳3:GND,信號(hào)地。
引腳4:PFI,電源電壓下降監(jiān)視輸入端。當(dāng)PFI端輸入低于1.25 V時(shí),就會(huì)使PFO端輸出低電平。如果PFI端不用時(shí),把其接到GND或VCC端。
引腳5:PFO,電源電壓下降監(jiān)視輸出端。當(dāng)PFI端輸入低于1.25 V時(shí),就會(huì)使PFO端輸出低電平,同時(shí)接收灌入電流,其他狀態(tài)PFO輸出高電平。
引腳6:空腳,不用。
引腳7:RESET,低電平復(fù)位輸出脈沖端,脈沖寬度為200 ms。如果電源VCC低于復(fù)位門檻4.65 V時(shí),則保持輸出低電平而不是脈沖。接通VCC時(shí),由于VCC從0→5V,故會(huì)產(chǎn)生200 ms的復(fù)位脈沖輸出。MR有低電平脈沖輸人時(shí)也會(huì)產(chǎn)生200 ms復(fù)位脈沖輸出。
引腳8:RESET,高電平復(fù)位輸出脈沖端。這個(gè)信號(hào)是RESET的反相信號(hào),由RESET通過(guò)一個(gè)內(nèi)部的反相器產(chǎn)生。
利用MAX708的1腳,對(duì)外接人的信號(hào)可以是振蕩器等轉(zhuǎn)換的信號(hào),每隔一定時(shí)間由CPU復(fù)位振蕩器使其不輸出低電平復(fù)位信號(hào),如CPU死機(jī),一定時(shí)間內(nèi)不輸出復(fù)位電平,則振蕩器輸出低電平使MAX708輸出復(fù)位信號(hào)使CPU復(fù)位。集成MAX708是通電、斷電監(jiān)控電路,在通電和斷電時(shí)可產(chǎn)生復(fù)位信號(hào)輸出,也將可靠復(fù)位CPU。MAX708對(duì)電源電壓的監(jiān)視門檻為4.40 V的復(fù)位功能和過(guò)程如下:
a) 通電復(fù)位:在接上電源VCC使MAX708通電時(shí),電源VCC從0→5 V,這時(shí)有一個(gè)過(guò)渡過(guò)程。在過(guò)渡過(guò)程中的一部分時(shí)間中,存在VCC<4.65 V的情況,則上電比較器就會(huì)輸出低電平送到復(fù)位發(fā)生器中,從而產(chǎn)生200 mS的復(fù)位脈沖輸出。
b) 手動(dòng)復(fù)位:在MR端接一個(gè)按鍵,按鍵另一端接地,則按鍵按下時(shí),會(huì)產(chǎn)生一個(gè)低電平脈沖送到復(fù)位發(fā)生器中,從而產(chǎn)生200 ms復(fù)位脈沖輸出。
c) 電源下降復(fù)位:把電源與電源下降輸入端PFI相連,當(dāng)電源下降,并且有PFI電平小于1.25 V時(shí),就在PFO端輸出低電平。如果把PFO端和MR相連,則使PFO輸出的低電平加到MR端而送入復(fù)位發(fā)生器,因而使復(fù)位發(fā)生器產(chǎn)生200 ms復(fù)位脈沖信號(hào)輸出。
2 基于MAX708的數(shù)據(jù)保護(hù)系統(tǒng)設(shè)計(jì)
在這里,MAX708用于監(jiān)視第2個(gè)電源信號(hào),為處理器提供電壓跌落的預(yù)警功能。利用此功能,系統(tǒng)可在電源跌落時(shí)到復(fù)位前執(zhí)行某些安全操作,如保存參數(shù)、發(fā)送警報(bào)信號(hào)或切換后備電池等數(shù)據(jù)保護(hù)性的操作。如果利用MAX708在電源出現(xiàn)毛刺或停電前把當(dāng)前數(shù)據(jù)保存到E2PROM中,就可有效解決 E2PROM中的數(shù)據(jù)掉失(數(shù)據(jù)保護(hù))問(wèn)題,特別是在智能計(jì)量裝置(如智能電度表、智能煤氣流量計(jì)、智能水表等)停電時(shí)將當(dāng)前數(shù)據(jù)保存等方面都有較好的應(yīng)用。
使用該電路必須選擇適當(dāng)?shù)念A(yù)警電壓點(diǎn),以保證靠電源的儲(chǔ)能供電情況下,VCC電壓從預(yù)警電壓跌到復(fù)位電壓的維持時(shí)間TB必須足夠長(zhǎng),一般E2PROM的寫周期約為10 ms到20 ms,取TB>200 ms就可確保數(shù)據(jù)穩(wěn)定寫入。
預(yù)警電壓調(diào)整方法如下:當(dāng)VDC等于預(yù)警電壓時(shí),調(diào)整R1和R2使PFI的電壓為1.25 V此時(shí)可檢測(cè)PFO,來(lái)確認(rèn)內(nèi)部的電壓比較器是否動(dòng)作。
3 結(jié)束語(yǔ)
MAX708除上電復(fù)位和掉電復(fù)位外,還有監(jiān)控系統(tǒng)電源和數(shù)據(jù)保護(hù)的功能。用做監(jiān)控系統(tǒng)電源時(shí),當(dāng)電源測(cè)控供電電壓出現(xiàn)異常時(shí),提供預(yù)警指示或中斷請(qǐng)求信號(hào),方便系統(tǒng)實(shí)現(xiàn)異常處理;用做數(shù)據(jù)保護(hù)時(shí),當(dāng)電源或系統(tǒng)工作異常時(shí),對(duì)數(shù)據(jù)進(jìn)行必要的保護(hù):如寫保護(hù)、數(shù)據(jù)備份或切換后備電池,同時(shí)當(dāng)系統(tǒng)程序跑飛或死鎖時(shí),看門狗定時(shí)器會(huì)自動(dòng)復(fù)位系統(tǒng),讓系統(tǒng)重新回到正常的工作狀態(tài),程序恢復(fù)正常運(yùn)行。