單片機在啟動時都需要復位,以使CPU及系統各部件處于確定的初始狀態,并從初態開始工作。89系列單片機的復位信號是從RST引腳輸入到芯片內的施密特觸發器中的。當系統處于正常工作狀態時,且振蕩器穩定后,如果RST引腳上有一個高電平并維持2個機器周期(24個振蕩周期)以上,則CPU就可以響應并將系統復位。單片機系統的復位方式有:手動按鈕復位和上電復位。
1、手動按鈕復位
手動按鈕復位需要人為在復位輸入端RST上加入高電平(圖1)。一般采用的辦法是在RST端和正電源VCC之間接一個按鈕。當人為按下按鈕時,則VCC的+5V電平就會直接加到RST端。手動按鈕復位的電路如所示。由于人的動作再快也會使按鈕保持接通達數十毫秒,所以,完全能夠滿足復位的時間要求。電路如圖1-1按鍵復位電路。
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可能會從一個未被定義的位置開始執行程序。 單片機與上點復位電路如圖1-2所示。
3、積分型上電復位
常用的上電或開關復位電路如圖3所示。上電后,由于電容C3的充電和反相門的作用,使RST持續一段時間的高電平。當單片機已在運行當中時,按下復位鍵K后松開,也能使RST為一段時間的高電平,從而實現上電或開關復位的操作。 積分電路如圖1-3所示
4、參數設置
根據實際操作的經驗,下面給出這種復位電路的電容、電阻參考值。C=1uF,R1=1k,R2=10k
很多玩proteus的在仿真中都發現復位電路沒法用,出現的問題確實和仿真器本身有關系,按鍵復位電路用的比較多,但是仿真卻出現問題了。我弄來弄去發現一個有趣的問題:在4參數設置中說了參考典型值,但仿真中就有問題了見下面幾幅圖對比下可以看出問題。完全按照圖1-1 按鍵復位電路仿真。結果如圖1-4 按鍵復位電路仿真1所示。
開始仿真,RST復位端的電壓值始終都是高電平,這樣的結果肯定是無法完成任務的。但實際中卻是正確的。將圖1-4中的R93去掉然后再仿真,仿真結果和上去一樣。如圖1-5按鍵復位電路仿真2所示。
再將圖1-5中的R94的電阻值減小為1k,仿真結果就有變化了。如圖1-6按鍵復位電路仿真3所示。RST的狀態變為了不確定狀態,按下按鍵后會成為高電平,感覺像是可以工作了,但是真實情況不是,仿真中按下復位按鍵對系統沒有影響,單片機不會產生復位。
再將R94改為510歐姆,仿真結果如圖1-7所示。
在初始化系,RST復位端是低電平了,測試下,在按下按鍵后,系統能正常復位。網上看到很多朋友都遇到這個問題,我發現這個問題后,和大家分享一下,希望對大家有幫助。
-
單片機
+關注
關注
6043文章
44622瀏覽量
638540 -
觸發器
+關注
關注
14文章
2003瀏覽量
61347 -
復位電路
+關注
關注
13文章
322瀏覽量
44706
原文標題:【分享】PROTEUS中的復位電路
文章出處:【微信號:changxuemcu,微信公眾號:暢學單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論