發表於 2017-10-20 15:24:54
上電復位是指上電壓從無到有在RESET處會先處於高電平一段時間,然後由於該點通過電阻接地,則RESET該點的電平會逐漸的改變為低電平,從而使得單片機復位口電平從1轉到0,達到給單片機復位功能的一種復位方式。復位方式除了上電復位外,還有手動復位。
電容在上接高電平,電阻在下接地,中間為RST。這種復位電路為高電平復位。
其工作原理是:通電時,電容兩端相當於是短路,於是RST引腳上為高電平,然後電源通過電阻對電容充電,RST端電壓慢慢下降,降到一定程度,即為低電平,單片機開始正常工作。
首先RST保持兩個機器周期以上的高電平時自動復位
1、上電復位:上電瞬間,電容充電電流最大,電容相當於短路,RST端為高電平,自動復位;電容兩端的電壓達到電源電壓時,電容充電電流為零,電容相當於開路,RST端為低電平,程序正常運行。
2、手動復位:首先經過上電復位,當按下按鍵時,RST直接與VCC相連,為高電平形成復位,同時電解電容被短路放電;按鍵鬆開時,VCC對電容充電,充電電流在電阻上,RST依然為高電平,仍然是復位,充電完成後,電容相當於開路,RST為低電平,正常工作。
上電復位和按鍵復位區別 首先要理解為什麼需要復位:1:因為微處理器(如我們常說的電腦CPU晶片和高端ARM)和微控制器(單片機、低端ARM什麼的)晶片都是數字電路晶片,其正常工作是只有0低電平和1高電平這兩個電平狀態,屬於離散系統。而供給晶片的電源輸入卻是模擬電路,屬於連續線性系統。合上開關,晶片的VDD和VSS之間的電壓要達到數字晶片可正常工作的電壓是需要幾毫秒到十幾毫秒的過程的。
2:而也因為微處理器和微控制器是數字電路晶片,其是需要時鐘信號才能工作。不管是內部晶片自帶的低頻RC振蕩器還是外接晶振或者其他時鐘電路,從上電到時鐘電路正常起振也是需要時間的。可以看下圖我用示波器測到的:ARM9上電那幾百毫秒內,電源輸入VCC對地電壓(黃線)、及18.492M時鐘(綠線)引腳對地電壓發生的情況。可以看到晶片在給電的10毫秒內電源開始升到正常供電水平,但至少500毫秒後晶振才開始正常輸出時鐘(之前的雖然有時鐘信號,也可以讓CPU工作,但波形不穩定,按此狀態運行的CPU容易出錯)
所以,需要在晶片上電的時候給復位端一個復位信號讓微處理器和微控制器內部的CPU在剛上電那段時間不要工作。
這叫上電復位,上電復位是微處理器或微控制器都必須存在的一個重要操作,沒有這個操作CPU直接上電工作的話非常容易出錯(程序跑飛、寄存器數據錯誤……)。
所以,51一般都使用阻容復位來讓其cpu在上電後在復位重啟一次。如下圖,去掉SW-PB和R6就是一個普通的51阻容復位,上電瞬間因為電容的壓降不可突變的原理,電容等同導通。電容C23和電阻R27之間RESET點的電位就是VC5的電壓,一直使能復位端。上電後VC5對C23充電,RESET點的電位降低趨近於GND的電平,後復位解除CPU開始正常工作。(其實這圖的R27有點大,C23有點小)
(而很多的低電平復位的晶片、如AVR、PIC等,都之需要在復位引腳上拉一個4.7K~10K的電阻即可。而ARM的復位時間較長,一般用專用的復位晶片)
按鍵復位:51的按鍵復位則是在阻容復位的基礎上增加了一個人工幹預復位端的按鈕和一個限流電阻。如下圖,當正常工作的時候,復位端RST和+5V,等同於斷開,通過R7接地。當復位按鈕按下,復位端RST和+5V幾乎連起來,高電平使能晶片復位。並且釋放電容C的電能。
R6的作用是不讓電源+5直接衝擊晶片的復位端(直接衝擊可能會損害晶片,特別是8051這種IO驅動能力較弱的晶片),並且防止電容C因短路放電過快而被損壞。
按鍵復位電路的目的一般是為了開發者在調試電路或程序時候使用,也有在成型的產品使用過程中使其硬復位的功能,比如一些電腦還帶有復位按鈕,按一下機器強行復位,就是這個原理,當然電腦的復位按鍵後面的電路遠複雜於這個,不僅僅是復位一個晶片,主板上的其他晶片也會被強行復位)
(而且ARM和電腦CPU晶片一般不會直接用類似這種按鍵復位電路,使用專用復位晶片有自帶的按鍵接口引腳接按鍵)
打開APP閱讀更多精彩內容
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容圖片侵權或者其他問題,請聯繫本站作侵刪。 侵權投訴