本文導讀
相信大家都會遇到這樣的情況,當你正在敲一份文檔或一段代碼時,啪的一下停電啦,我擦……,我的代碼……,我的圖紙……,我剛寫好的文章……。但是在嵌入式系統(tǒng)中也會遇到類似的情況,通常會導致嵌入式系統(tǒng)數(shù)據(jù),程序丟失,不能工作,甚至損壞存儲系統(tǒng)。而對于核心板的嵌入式系統(tǒng)來說,異常掉電情況下數(shù)據(jù)不丟失,穩(wěn)定性是根本。本文基于CAT706介紹一種能夠檢測到異常掉電,并利用電容中存儲的少量電量保存數(shù)據(jù)、防止存儲器損壞、丟失數(shù)據(jù)的方法。一、概述
首先引用一篇微信文章“老板說:你去跳槽,我去跳樓!一場由SD卡引發(fā)的災難”
去年上半年,我們公司承接了某大型廣告公司的電梯廣告顯示屏的項目,該產(chǎn)品使用了飛思卡爾的IMX6系列芯片作為主控CPU,具備媒體人機觸摸互動、媒體投放、遠程升級、錄像監(jiān)控等功能。其中很重要的一項功能就是監(jiān)控和保存功能,因客戶的報價較低,我們理所當然的選擇了SD卡作為錄像數(shù)據(jù)的保存介質(zhì)。
沒想到,災難半年后就降臨了,半年前發(fā)貨的10K機器,每個月都有10%的損壞率,損壞的機器90%都是SD卡損壞了!客戶不但要求我們賠償SD卡的損失,延長質(zhì)保期,而且威脅一個月內(nèi)不解決將終止合作,客戶是老板的唯一大客戶,丟失這個客戶我們離解散就不遠。老板甚至放下狠話:一個月內(nèi)不解決,你們跳槽,我跳樓。
經(jīng)過仔細檢查確定SD卡損壞的原因是設(shè)備上下電導致的。
于是我們采用了如下的方案。其中方案的核心是掉電檢測電路和超級電容繼續(xù)供電電路。掉電檢測電路是用運放搭出來的一個比較復雜的比較電路,由于復雜這里就不上圖了。圖1是超級電容的充放電電路,增加該電路可以使掉電后繼續(xù)維持2秒鐘的時間,使CPU完成掉電后的保護處理工作。
圖1 超級電容充放電電路
上述案例結(jié)局辦法是用運放搭建掉電檢測電路比較復雜,容易出現(xiàn)問題,這里推薦大家一個高集成度的掉電檢測電路。
二、功能簡介:
如圖2所示是CAT706芯片內(nèi)部框圖。CAT706內(nèi)部集成了多種功能,功能強大,使用簡便,此次只重點講解其內(nèi)部的掉電檢測功能。
圖2 內(nèi)部功能框圖
由于內(nèi)部框圖很簡單,可以很容易的分析出有以下四種情況能導致單片機復位或中斷:
針對以上四個功能對嵌入式系統(tǒng)作用如下:
-
可保證VCC供電在穩(wěn)定時單片機工作,不穩(wěn)定時復位輸出保證系統(tǒng)穩(wěn)定運行;
-
可人為手動控制單片機復位運行;
-
看門狗實時監(jiān)測系統(tǒng),防止系統(tǒng)跑崩潰;
-
及時監(jiān)測供電系統(tǒng)是否掉電從而讓系統(tǒng)迅速處理數(shù)據(jù)。
本篇文章主要就是針對其第四點檢測意外掉電的保護處理方案。
三、典型應(yīng)用
PFI相當于是一個電壓比較器的正輸入端,如果PFI電壓高于1.25V那么PFO就會輸出高電平,如果PFI電壓低于1.25V哪呢PFO就會輸出低電平。如此便可以通過PFI作為輸入將前端的高電壓分壓后接入,從而可以提前檢測到前端的掉電情況。
如圖3所示是CAT706典型應(yīng)用電路及時序圖。原理圖相對比較簡單容易理解,并且畫出了在掉電和上電后各部分的理論波形圖。
一般情況下系統(tǒng)的供電都是由前端市電隔離降壓到相對偏高的直流電壓(如12V),再降壓到系統(tǒng)所需要工作的電壓(如5V/3.3V)。如圖3所示是針對于檢測前端的12V直流電壓的掉電檢測電路。
圖3 典型應(yīng)用電路及時序圖
12V上電時輸出的5V會對大電容充電,圖中串聯(lián)了一個電阻用來限流,當?shù)綦姇r電容的電量會通過旁邊的肖特吉二極管直接放電給后端負載使用。
由于12V掉電到5V/3.3V掉電完成之間有一段時差,所以可以提前檢測12V的掉電情況使單片機進入Interrupt對掉電采取一系列應(yīng)對措施,并且在5V/3.3V掉電完成前完成操作,如圖中的時間T,并且此段時間T與圖中紅色圈的電容值大小有關(guān),電容值越大時間T就越長(必要時可以考慮使用法拉電容);且檢測掉電的信號越靠近總電源的前端就越好。
為了增大掉電后的維持時間T,不僅可以增大儲能電容值來達到目的,也可以將掉電檢測信號往前端挪動,例如將掉電檢測移至最前端的220V市電或前端高壓,市電掉電時到12V掉電中間也有一段時間,這樣就可以間接增加掉電后的維持時間T。
如圖4所示是檢測前端電壓的掉電檢測電路。提前處理掉電信號以此來增加掉電后的電壓維持時間。
圖4 前端掉電檢測電路
以圖3所示的法拉電容放置位置可知隨著掉電后的電壓維持,電容上的電壓會逐漸下降可能會影響到后端系統(tǒng)的工作。為此可以將大電容的充放電電路移至前端的高電壓部分,也可以將降壓電路分為兩節(jié)或三節(jié)降壓連接,如此只需將大電容的放置位置相對往前端挪一節(jié)即可保證在掉電維持的那段時間內(nèi)主系統(tǒng)的工作電壓維持穩(wěn)定。如圖4所示對大電容的擺放位置改動。
四、實測分析
針對上一節(jié)關(guān)于CAT706原理的推算和實際效果波形的推算我們做了如下的硬件電路搭建,硬件電路針對圖3搭建。如圖5所示硬件使用洞洞板搭建,用來測試實際的輸入供電電壓波形,輸出電壓波形以及PFO和RST引腳的波形。
圖5 實物圖
如圖6所示波形1是輸入的12V電壓波形、波形2是輸出的5V電壓波形、波形3是復位引腳的電壓波形、波形4是PFO引腳的電壓波形。圖中測試時輸出以10mA的負載對其恒流放電。
圖6 測試波形圖
當輸入12V上升時,DCDC電源會緊接著開始輸出5V,同時隨之12V的上升其分壓值若大于PFI的輸入閾值時PFO會跟著立即輸出高電平,復位引腳在檢測到5V電壓正常一段時間后也會時復位系統(tǒng),系統(tǒng)啟動工作。
當輸入12V意外斷電下降時其在PFI引腳上的分壓值低于閾值時PFO會立即輸出低電平,此PFO的低電平會中斷系統(tǒng)主控告知系統(tǒng)意外斷電應(yīng)立即對存儲數(shù)據(jù)進行處理,防止數(shù)據(jù)丟失。圖中的測試波形是以10mA的恒流負載模擬測試效果,從圖中可以看出從檢測到意外斷電到系統(tǒng)復位停止工作中間有244ms的處理時間。這個時間和DCDC輸出端的電容有很大的關(guān)系,電容值越大其數(shù)據(jù)處理的時間越長,圖中是以2200μF的電容值大小、負載10mA恒流情況下測得是時間。實際處理時檢測到掉電主控應(yīng)立即斷掉液晶屏等不需要的耗電外設(shè)只保持主控部分的供電即可。
-
檢測電路
+關(guān)注
關(guān)注
13文章
307瀏覽量
58172 -
周立功
+關(guān)注
關(guān)注
38文章
130瀏覽量
37632
原文標題:硬件設(shè)計08:巧用CAT706做掉電檢測
文章出處:【微信號:Zlgmcu7890,微信公眾號:周立功單片機】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論