本文旨面向初級工程師或是剛剛升遷的而又想掌握一些技術的管理者們。
微處理器是一個復雜又單一的東西。它啟動的方式一成不變,嚴格、準確地重復地執(zhí)行著函數功能。我們可以當微處理器已經穩(wěn)定進入啟動程序后,發(fā)送一個復位操作來讓微處理器執(zhí)行正確的程序指令。當復位信號結束,微處理器的部分寄存器(根據微處理器型號而不同)將會重新初始化為默認值。微處理器也會從一個固定的地址重新開始執(zhí)行。因此,設計一個復位方案對于避免系統(tǒng)鎖死、執(zhí)行程序出錯或者是非易失性flash讀寫錯誤導致的系統(tǒng)崩潰將是非常致關重要的。
其實,復位電路的設計也可以非常簡單,畢竟其功能比較單一:只需要當微處理器的上電時,保持復位狀態(tài),而當電壓等條件滿足設計要求時,才結束保持復位狀態(tài)。但在設計過程中如何定義“復位”“結束復位”“特殊的工作時間”將是非常另人頭痛的事情,更頭痛的事情就是設計滿足所有條件的電路。
如此復雜的設計也便得不少廠商提供集成芯片來為工程師們解決這個頭痛問題。于是,一個新的專有名詞也就引入了“復位監(jiān)控”。從設計經驗來看,建議工程師在大多數嵌入式系統(tǒng)中使用“復位監(jiān)控”芯片。因為,分立元件建立復位監(jiān)控需要太多的經驗,而這些經驗是許多許多工程師們所欠缺的。在筆者的嵌入式設計方案中,復位監(jiān)控芯片是必選項,完全忽略阻容復位、二極管、三極管等復位電路。雖然這些典型電路廣泛存在于設計說明書的示例里。
選擇“復位監(jiān)控”芯片后,并不是萬事大吉了。在選型時,還需要注意許多參數。復位時間,是首先要注意的參數;復位電平是其次。掉電保護與搞干擾保護,復位閾值電壓,多電源支持等。其它的參數,例如,應用溫度范圍、封裝、功耗也是非常重要的。當然,我們還要將精力放在考慮復位電路的特性中。
復位監(jiān)控芯片的特性中,首位是復位時間,其典型值從幾毫秒到長達幾秒。復位監(jiān)控芯片將會保持復位輸出狀態(tài),直到所有的輸入條件均已經達到預定的“工作環(huán)境”。選擇復位時有一個準則 ,即保持時間越長越好。保持上電及啟動的時間越長,對于系統(tǒng)來說將會越穩(wěn)定。如果你想縮短啟動時間,那么一定要保證系統(tǒng)所有重要、關鍵的功能都穩(wěn)定。千萬不要忘記供電穩(wěn)定時間,在微處理器中的鎖相環(huán)(PLL)穩(wěn)定的時間與其它芯片的進入穩(wěn)定的時間,最后不要忘記復位信號要一直保持到與微處理器相關的其它外圍芯片也一并進入穩(wěn)定狀態(tài)。
掉電保護功能是另一個重要而易被忽略的功能。有一些微處理器的寄存器會在電壓有一個小瞬間的下降時發(fā)生崩潰。一些外設也會丟失配置信息與運行狀態(tài),而帶有掉電保護功能的復位芯片此時會強制微處理器進入設定的保護狀態(tài)并重啟微處理器。正是得利于此,對于未知的復位信號也可以用來采集異常條件的復位,用來做進一步深入研究。
復位電平的選擇必須匹配。在查看說明文檔時,一定要注意復位監(jiān)控芯片的復位信號的電平是否與微處理器的輸入電平匹配。要復位與上電的電平都匹配才可以,即復位信號的高電平,要高于微處理呂的最低復位電平的最高值;復位信號的低電平最高值電平低于最低工作電平。
而關鍵點就是在確定工作電壓上,有意思的是,這些說明細節(jié)都在說明書中找不到。不過,我們也大可不必擔心,一般復位電壓在CMOS電平下為1v,在TTL電平下為1.5v。對于那些超低壓工作的微處理器的復位芯片來說,要求復位電平會更低。因此,作為開發(fā)人員必須確定復位芯片的電平與系統(tǒng)要求的相符。
設計人員也需要計算整個與復位監(jiān)控芯片的負載情況,包括與之相連的其它芯片或邏輯門電路,而不是僅僅一個微處理器。每當添加負載后都需要重新計算,也必須確認我們前面談到的工作電壓。
還有其它可選的特性,可以用在眾多廠商的眾多產品里。如挑選性欲比最高的芯片。有些復位芯片本身集成了“看門狗”芯片,掉電失敗中斷,備用電池供電轉換與芯片使能門電路。許多 附帶功能都可以簡化我們的外圍電路設計,也會使我們系統(tǒng)更加穩(wěn)定。
非常感謝大家堅持閱讀這么多,下圖就是一個以復位芯片Max809芯片的典型電路圖示例,供大家參考: