為確保設(shè)計出的電路系統(tǒng)穩(wěn)定可靠的工作,必須在電路中加入復(fù)位電路——將電路恢復(fù)到初始狀態(tài)。類似于我們使用的電腦,一旦我們電腦死機或發(fā)生其他問題,我們會利用重啟按鈕重啟我們的電腦。復(fù)位電路亦是如此,一旦我們按下復(fù)位按鍵,復(fù)位電路就會將系統(tǒng)恢復(fù)到初始狀態(tài)。復(fù)位電路的一般組成是電容和電阻組合形式,少部分會用到三極管。
復(fù)位方式
1、上電復(fù)位/掉電復(fù)位
上電復(fù)位
當電源電壓VCC低于上電/掉電復(fù)位電路的門檻電壓時,所有的邏輯電路都會被復(fù)位。當VCC重新恢復(fù)到正常電壓時,單片機延遲32768個時鐘后,上電復(fù)位/掉電復(fù)位狀態(tài)結(jié)束。
2、按鍵復(fù)位
3、軟件復(fù)位
涉及的單片機系統(tǒng)在運行過程中,有時難免會遇到需要軟件復(fù)位的情況。有些古老的單片機在硬件上可能不支持軟件復(fù)位功能,所以我們就需要去模擬軟件復(fù)位的過程。比較常用的方法是跳轉(zhuǎn)到程序的入口地址,利用匯編LJMP、JMP等跳轉(zhuǎn)語句跳到程序的初始入口。但是現(xiàn)在常用的一些單片機(8051、STM32等)在硬件上都支持軟件復(fù)位,配置專門的寄存器就可以實現(xiàn)復(fù)位功能。例如常用的8051單片機,有專門的ISP_CONTER寄存器來支持復(fù)位。寄存器的具體配置參考如下。
ISP_CONTER
4、看門狗(WDT)復(fù)位
在工業(yè)應(yīng)用中,絕大多數(shù)應(yīng)用系統(tǒng)都會用到看門狗(Watch Dog Timer)。在工業(yè)控制/汽車電子/航空航天等高可靠系統(tǒng)中,為了防止系統(tǒng)在異常情況下受到干擾導(dǎo)致MCU長時間異常工作、程序跑飛,通常是引進看門狗。如果CPU不在規(guī)定時間內(nèi)訪問看門狗,看門狗就認為系統(tǒng)出了問題,會強制將系統(tǒng)進行復(fù)位,使系統(tǒng)從頭開始執(zhí)行程序。現(xiàn)在絕大多數(shù)的單片機都支持看門狗功能,例如STC89C52、STM32等。STC89C52單片機有專門的看門狗寄存器WDT_CONTER,配置相應(yīng)的位即可啟動看門狗。
看門狗
復(fù)位原理
無論使用上面的哪種復(fù)位方式,其本質(zhì)都是在操作RST復(fù)位引腳。用8051單片機按鍵復(fù)位方式的圖來說明復(fù)位電路的原理。8051單片機的RST引腳只需要保持2個機器周期的高電平即可產(chǎn)生復(fù)位。利用電容電壓不可突變的性質(zhì),適當選取電容充放電的參數(shù)(電容值、電阻值)即可達到要求。剛開始上電時,由于電容電壓(0V)不能突變,所以電容兩端電壓為0V,RST此時的電壓為VCC。電容慢慢充電,充電結(jié)束后,電容兩端的電壓為VCC,所以此時RST的電勢為0V。電容的這一段充電時間要大于單片機的2個機器周期。
軟件復(fù)位和看門狗復(fù)位方式的原理都是使RST的高電平持續(xù)時間能夠維持2個機器周期。
-
單片機
+關(guān)注
關(guān)注
6039文章
44579瀏覽量
636444
發(fā)布評論請先 登錄
相關(guān)推薦
評論