?復位電路工作原理
復位電路是一種用來使電路恢復到起始狀態(tài)的電路設(shè)備,它的操作原理與計算器有著異曲同工之妙,只是啟動原理和手段有所不同。
復位電路都是比較簡單的大都是只有電阻和電容組合就可以辦到了,再復雜點就有三極管等配合程序來進行了。為確保微機系統(tǒng)中電路穩(wěn)定可靠工作,復位電路是必不可少的一部分,復位電路的第一功能是上電復位。一般微機電路正常工作需要供電電源為5V±5%,即4.75~5.25V。由于微機電路是時序數(shù)字電路,它需要穩(wěn)定的時鐘信號,因此在電源上電時,只有當VCC超過4.75V低于5.25V以及晶體振蕩器穩(wěn)定工作時,復位信號才會撤除,微機電路開始正常工作。
?復位電路的作用
在上電或復位過程中,控制CPU的復位狀態(tài):這段時間內(nèi)讓CPU保持復位狀態(tài),而不是一上電或剛復位完畢就工作,防止CPU發(fā)出錯誤的指令、執(zhí)行錯誤操作,也可以提高電磁兼容性能。
無論用戶使用哪種類型的單片機,總要涉及到單片機復位電路的設(shè)計。而單片機復位電路設(shè)計的好壞,直接影響到整個系統(tǒng)工作的可靠性。許多用戶在設(shè)計完單片機系統(tǒng),并在實驗室調(diào)試成功后,在現(xiàn)場卻出現(xiàn)了“死機”、“程序走飛”等現(xiàn)象,這主要是單片機的復位電路設(shè)計不可靠引起的。
?基本的復位方式
單片機在啟動時都需要復位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。89系列單片機的復位信號是從RST引腳輸入到芯片內(nèi)的施密特觸發(fā)器中的。當系統(tǒng)處于正常工作狀態(tài)時,且振蕩器穩(wěn)定后,如果RST引腳上有一個高電平并維持2個機器周期(24個振蕩周期)以上,則CPU就可以響應(yīng)并將系統(tǒng)復位。單片機系統(tǒng)的復位方式有:手動按鈕復位和上電復位
? ? ? ? 典型復位電路圖
?手動按鈕復位
手動按鈕復位需要人為在復位輸入端RST上加入高電平(圖1)。一般采用的辦法是在RST端和正電源Vcc之間接一個按鈕。當人為按下按鈕時,則Vcc的+5V電平就會直接加到RST端。手動按鈕復位的電路如所示。由于人的動作再快也會使按鈕保持接通達數(shù)十毫秒,所以,完全能夠滿足復位的時間要求。

看門狗型復位電路
看門狗型復位電路主要利用CPU正常工作時,定時復位計數(shù)器,使得計數(shù)器的值不超過某一值;當CPU不能正常工作時,由于計數(shù)器不能被復位,因此其計數(shù)會超過某一值,從而產(chǎn)生復位脈沖,使得CPU恢復正常工作狀態(tài)。典型應(yīng)用的Watchdog復位電路如圖7所示。此復位電路的可靠性主要取決于軟件設(shè)計,即將定時向復位電路發(fā)出脈沖的程序放在何處。一般設(shè)計,將此段程序放在定時器中斷服務(wù)子程序中。然而,有時這種設(shè)計仍然會引起程序走飛或工作不正常。原因主要是:當程序“走飛”發(fā)生時定時器初始化以及開中斷之后的話,這種“走飛”情況就有可能不能由Watchdog復位電路校正回來。因為定時器中斷一真在產(chǎn)生,即使程序不正常,Watchdog也能被正常復位。為此提出定時器加預設(shè)的設(shè)計方法。即在初始化時壓入堆棧一個地址,在此地址內(nèi)執(zhí)行的是一條關(guān)中斷和一條死循環(huán)語句。在所有不被程序代碼占用的地址盡可能地用子程序返回指令RET代替。這樣,當程序走飛后,其進入陷阱的可能性將大大增加。而一旦進入陷阱,定時器停止工作并且關(guān)閉中斷,從而使Watchdog復位電路會產(chǎn)生一個復位脈沖將CPU復位。當然這種技術(shù)用于實時性較強的控制或處理軟件中有一定的困難

看門狗型復位電路
電子發(fā)燒友App














































評論