在上電或復位過程中,控制CPU的復位狀態:這段時間內讓CPU保持復位狀態,而不是一上電或剛復位完畢就工作,防止CPU發出錯誤的指令、執行錯誤操作,也可以提高電磁兼容性能。無論用戶使用哪種類型的單片機,總要涉及到單片機復位電路的設計。而單片機復位電路設計的好壞,直接影響到整個系統工作的可靠性。許多用戶在設計完單片機系統,并在實驗室調試成功后,在現場卻出現了“死機”、“程序走飛”等現象,這主要是單片機的復位電路設計不可靠引起的。
復位電路的工作原理
在單片機系統中,系統上電啟動的時候復位一次,當按鍵按下的時候系統再次復位,如果釋放后再按下,系統還會復位。所以可以通過按鍵的斷開和閉合在運行的系統中控制其復位。
** 開機的時候為什么為復位**
在電路圖中,電容的的大小是10uf,電阻的大小是10k。所以根據公式,可以算出電容充電到電源電壓的0.7倍(單片機的電源是5V,所以充電到0.7倍即為3.5V),需要的時間是10K*10UF=0.1S。也就是說在電腦啟動的0.1S內,電容兩端的電壓是在03.5V增加。這個時候10K電阻兩端的電壓為從51.5V減少(串聯電路各處電壓之和為總電壓)。所以在0.1S內,RST引腳所接收到的電壓是5V~1.5V。在5V正常工作的51單片機中小于1.5V的電壓信號為低電平信號,而大于1.5V的電壓信號為高電平信號。所以在開機0.1S內,單片機系統自動復位(RST引腳接收到的高電平信號時間為0.1S左右)。
按鍵按下的時候為什么會復位
在單片機啟動0.1S后,電容C兩端的電壓持續充電為5V,這是時候10K電阻兩端的電壓接近于0V,RST處于低電平所以系統正常工作。當按鍵按下的時候,開關導通,這個時候電容兩端形成了一個回路,電容被短路,所以在按鍵按下的這個過程中,電容開始釋放之前充的電量。隨著時間的推移,電容的電壓在0.1S內,從5V釋放到變為了1.5V,甚至更小。根據串聯電路電壓為各處之和,這個時候10K電阻兩端的電壓為3.5V,甚至更大,所以RST引腳又接收到高電平。單片機系統自動復位。
基本的復位方式
單片機在啟動時都需要復位,以使CPU及系統各部件處于確定的初始狀態,并從初態開始工作。89系列單片機的復位信號是從RST引腳輸入到芯片內的施密特觸發器中的。當系統處于正常工作狀態時,且振蕩器穩定后,如果RST引腳上有一個高電平并維持2個機器周期(24個振蕩周期)以上,則CPU就可以響應并將系統復位。
單片機系統的復位方式有:手動按鈕復位和上電復位。
1、手動按鈕復位
手動按鈕復位需要人為在復位輸入端RST上加入高電平(圖1)。一般采用的辦法是在RST端和正電源Vcc之間接一個按鈕。當人為按下按鈕時,則Vcc的+5V電平就會直接加到RST端。手動按鈕復位的電路如所示。由于人的動作再快也會使按鈕保持接通達數十毫秒,所以,完全能夠滿足復位的時間要求。
圖1
圖2
2、上電復位
AT89C51的上電復位電路如圖2所示,只要在RST復位輸入引腳上接一電容至Vcc端,下接一個電阻到地即可。對于CMOS型單片機,由于在RST端內部有一個下拉電阻,故可將外部電阻去掉,而將外接電容減至1μF。
上電復位的工作過程是在加電時,復位電路通過電容加給RST端一個短暫的高電平信號,此高電平信號隨著Vcc對電容的充電過程而逐漸回落,即RST端的高電平持續時間取決于電容的充電時間。為了保證系統能夠可靠地復位,RST端的高電平信號必須維持足夠長的時間。
上電時,Vcc的上升時間約為10ms,而振蕩器的起振時間取決于振蕩頻率,如晶振頻率為10MHz,起振時間為1ms;
晶振頻率為1MHz,起振時間則為10ms。
在圖2的復位電路中,當Vcc掉電時,必然會使RST端電壓迅速下降到0V以下,但是,由于內部電路的限制作用,這個負電壓將不會對器件產生損害。
另外,在復位期間,端口引腳處于隨機狀態,復位后,系統將端口置為全“l”態。如果系統在上電時得不到有效的復位,則程序計數器PC將得不到一個合適的初值,因此,CPU可能會從一個未被定義的位置開始執行程序。
3、積分型上電復位
常用的上電或開關復位電路如圖3所示。上電后,由于電容C3的充電和反相門的作用,使RST持續一段時間的高電平。當單片機已在運行當中時,按下復位鍵K后松開,也能使RST為一段時間的高電平,從而實現上電或開關復位的操作。根據實際操作的經驗,下面給出這種復位電路的電容、電阻參考值。圖3中:C:=1uF,Rl=lk,R2=10k
圖3積分型上電復位電路
專用芯片復位電路:
上電復位電路在控制系統中的作用是啟動單片機開始工作。但在電源上電以及在正常工作時電壓異常或干擾時,電源會有一些不穩定的因素,為單片機工作的穩定性可能帶來嚴重的影響。
因此,在電源上電時延時輸出給芯片輸出一復位信號。上復位電路另一個作用是,監視正常工作時電源電壓。若電源有異常則會進行強制復位。
復位輸出腳輸出低電平需要持續三個(12/fcs)或者更多的指令周期,復位程序開始初始化芯片內部的初始狀態。等待接受輸入信號(若如遙控器的信號等)。
圖4上電復位電路原理圖
上電復位電路原理分析
5V電源通過MC34064的2腳輸入,1腳便可輸出一個上升沿,觸發芯片的復位腳。電解電容C13是調節復位延時時間的。當電源關斷時,電解電容C13上的殘留電荷通過D13和MC34064內部電路構成回路,釋放掉電荷。以備下次復位啟用。
四、上電復位電路的關鍵性器件
關鍵性器件有:MC34064。
圖5內部結構框圖
輸入輸出特性曲線:
上電復位電路關鍵點電氣參數
MC34064的輸出腳1腳的輸出(穩定之后的輸出)如下圖所示:
三極管欠壓復位電路
欠壓復位電路工作原理(圖6)w接通電源,+5V電壓從“0V”開始上升,在升至3.6V之前,穩壓二極管DH03都處于截止狀態,QH01(PNP管)也處于截止狀態,無復位電壓輸出。w當+5V電源電壓高于3.6V以后,穩壓二極管DH03反向擊穿,將其兩端電壓“箝位”于3.6V。當+5V電源電壓高于4.3V以后,QH01開始導通,復位電壓開始形成,當+5V電源電壓接近+5V時,QH01已經飽和導通,復位電壓達到穩定狀態。
圖6欠壓復位電路圖
看門狗型復位電路
看門狗型復位電路主要利用CPU正常工作時,定時復位計數器,使得計數器的值不超過某一值;當CPU不能正常工作時,由于計數器不能被復位,因此其計數會超過某一值,從而產生復位脈沖,使得CPU恢復正常工作狀態。
典型應用的Watchdog復位電路如圖7所示。
此復位電路的可靠性主要取決于軟件設計,即將定時向復位電路發出脈沖的程序放在何處。一般設計,將此段程序放在定時器中斷服務子程序中。然而,有時這種設計仍然會引起程序走飛或工作不正常。
原因主要是:
當程序“走飛”發生時定時器初始化以及開中斷之后的話,這種“走飛”情況就有可能不能由Watchdog復位電路校正回來。因為定時器中斷一真在產生,即使程序不正常,Watchdog也能被正常復位。為此提出定時器加預設的設計方法。
即在初始化時壓入堆棧一個地址,在此地址內執行的是一條關中斷和一條死循環語句。在所有不被程序代碼占用的地址盡可能地用子程序返回指令RET代替。
這樣,當程序走飛后,其進入陷阱的可能性將大大增加。而一旦進入陷阱,定時器停止工作并且關閉中斷,從而使Watchdog復位電路會產生一個復位脈沖將CPU復位。
當然這種技術用于實時性較強的控制或處理軟件中有一定的困難
圖7看門狗型復位電路
**比較器型復位電路
比較器型復位電路的基本原理如圖8所示。**
上電復位時,由于組成了一個RC低通網絡,所以比較器的正相輸入端的電壓比負相端輸入電壓延遲一定時間。而比較器的負相端網絡的時間常數遠遠小于正相端RC網絡的時間常數,因此在正端電壓還沒有超過負端電壓時,比較器輸出低電平,經反相器后產生高電平。
復位脈沖的寬度主要取決于正常電壓上升的速度。由于負端電壓放電回路時間常數較大,因此對電源電壓的波動不敏感。
但是容易產生以下二種不利現象:
(1)電源二次開關間隔太短時,復位不可靠;
(2)當電源電壓中有浪涌現象時,可能在浪涌消失后不能產生復位脈沖。
為此,將改進比較器重定電路,如圖9所示。這個改進電路可以消除第一種現象,并減少第二種現象的產生。
為了徹底消除這二種現象,可以利用數字邏輯的方法與比較器配合,設計如圖9所示的比較器重定電路。
此電路稍加改進即可作為上電復位與看門狗復位電路共同復位的電路,大大提高了復位的可靠性。
圖8比較器型復位電路
圖9改進型比較器型復位電路
-
單片機
+關注
關注
6063文章
44925瀏覽量
647002 -
電磁兼容
+關注
關注
54文章
1964瀏覽量
98640 -
cpu
+關注
關注
68文章
11037瀏覽量
216015 -
復位電路
+關注
關注
13文章
325瀏覽量
45103
發布評論請先 登錄
單片機復位電路詳解
單片機基礎入門:什么是上電復位,復位電路怎么設計

評論