復(fù)位電路的作用
在上電或復(fù)位過(guò)程中,控制CPU的復(fù)位狀態(tài):這段時(shí)間內(nèi)讓CPU保持復(fù)位狀態(tài),而不是一上電或剛復(fù)位完畢就工作,防止CPU發(fā)出錯(cuò)誤的指令、執(zhí)行錯(cuò)誤操作,也可以提高電磁兼容性能。
無(wú)論用戶使用哪種類型的單片機(jī),總要涉及到單片機(jī)復(fù)位電路的設(shè)計(jì)。而單片機(jī)復(fù)位電路設(shè)計(jì)的好壞,直接影響到整個(gè)系統(tǒng)工作的可靠性。許多用戶在設(shè)計(jì)完單片機(jī)系統(tǒng),并在實(shí)驗(yàn)室調(diào)試成功后,在現(xiàn)場(chǎng)卻出現(xiàn)了“死機(jī)”、“程序走飛”等現(xiàn)象,這主要是單片機(jī)的復(fù)位電路設(shè)計(jì)不可靠引起的。
數(shù)字電路剛通電時(shí)都需要進(jìn)行復(fù)位,復(fù)位的功能是將單片機(jī)里的重新開(kāi)始,主要防止程序混亂,也就是跑飛、或者死機(jī)等現(xiàn)象,目的是使系統(tǒng)進(jìn)入初始狀態(tài),以便隨時(shí)接受各種指令進(jìn)行工作,CPU的復(fù)位可靠性決定著產(chǎn)品系統(tǒng)的穩(wěn)定性,因此在電路當(dāng)中,發(fā)生任何一種復(fù)位后,系統(tǒng)程序?qū)闹匦麻_(kāi)始執(zhí)行,系統(tǒng)寄存器也都將恢復(fù)為默認(rèn)值。下面總結(jié)幾種CPU復(fù)位方式。
1、上電復(fù)位上電復(fù)位就是直接給產(chǎn)品上電,上電復(fù)位與低壓 LVR操作有聯(lián)系,電源上電的過(guò)程是逐漸上升的曲線過(guò)程,這個(gè)過(guò)程不是瞬間的完成的,一上電時(shí)候系統(tǒng)進(jìn)行初始化,此時(shí)振蕩器開(kāi)始工作并提供系統(tǒng)時(shí)鐘,系統(tǒng)正常工作
2、看門狗復(fù)位
看門狗定時(shí)器CPU內(nèi)部系統(tǒng),它是一個(gè)自振式的 RC振蕩定時(shí)器,與外圍電路無(wú)關(guān),也與CPU主時(shí)鐘無(wú)關(guān),只要開(kāi)啟看門狗功能也能保持計(jì)時(shí),該溢出時(shí)候也會(huì)溢出,并產(chǎn)生復(fù)位
3、LVR低壓復(fù)位每個(gè)CPU都有一個(gè)復(fù)位電壓,這個(gè)電壓很低,有1.8V、2.5V等,當(dāng)系統(tǒng)由于受到外界的影響導(dǎo)致輸入電壓過(guò)低,當(dāng)?shù)椭翉?fù)位電壓時(shí)候系統(tǒng)自動(dòng)復(fù)位,當(dāng)然,前提是系統(tǒng)要打開(kāi)LVR功能,有時(shí)候也叫掉電復(fù)位。diangon.com如圖,當(dāng)LVR<工作電壓<VDD時(shí)候,比如在V1時(shí)候工作是正常的,當(dāng)VSS<工作電壓<LVR時(shí)候,系統(tǒng)有可能出錯(cuò),比如在V2時(shí)候,也就是我們常說(shuō)的死區(qū),這個(gè)狀態(tài)不確定。
4、外圍電路復(fù)位如果系統(tǒng)內(nèi)部不能正常復(fù)位或者軟件復(fù)位無(wú)效的時(shí)候,可以依靠外部硬件復(fù)位。
如圖是一種簡(jiǎn)單的RC復(fù)位電路,電源接通時(shí)候,通過(guò)R1對(duì)C2進(jìn)行充電,經(jīng)過(guò)一段延遲后加到電路當(dāng)中產(chǎn)生復(fù)位信號(hào),這個(gè)復(fù)位信號(hào)的上升速度低于電源的上電速度,當(dāng)復(fù)位引腳檢測(cè)到高電平時(shí)候,系統(tǒng)復(fù)位結(jié)束,進(jìn)入正常工作狀態(tài)。
基本的復(fù)位方式
單片機(jī)在啟動(dòng)時(shí)都需要復(fù)位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開(kāi)始工作。89系列單片機(jī)的復(fù)位信號(hào)是從RST引腳輸入到芯片內(nèi)的施密特觸發(fā)器中的。當(dāng)系統(tǒng)處于正常工作狀態(tài)時(shí),且振蕩器穩(wěn)定后,如果RST引腳上有一個(gè)高電平并維持2個(gè)機(jī)器周期(24個(gè)振蕩周期)以上,則CPU就可以響應(yīng)并將系統(tǒng)復(fù)位。單片機(jī)系統(tǒng)的復(fù)位方式有:手動(dòng)按鈕復(fù)位和上電復(fù)位。
1、手動(dòng)按鈕復(fù)位
手動(dòng)按鈕復(fù)位需要人為在復(fù)位輸入端RST上加入高電平(圖1)。一般采用的辦法是在RST端和正電源Vcc之間接一個(gè)按鈕。當(dāng)人為按下按鈕時(shí),則Vcc的+5V電平就會(huì)直接加到RST端。手動(dòng)按鈕復(fù)位的電路如所示。由于人的動(dòng)作再快也會(huì)使按鈕保持接通達(dá)數(shù)十毫秒,所以,完全能夠滿足復(fù)位的時(shí)間要求。
圖1
圖2
2、上電復(fù)位
AT89C51的上電復(fù)位電路如圖2所示,只要在RST復(fù)位輸入引腳上接一電容至Vcc端,下接一個(gè)電阻到地即可。對(duì)于CMOS型單片機(jī),由于在RST端內(nèi)部有一個(gè)下拉電阻,故可將外部電阻去掉,而將外接電容減至1μF。上電復(fù)位的工作過(guò)程是在加電時(shí),復(fù)位電路通過(guò)電 容加給RST端一個(gè)短暫的高電平信號(hào),此高電平信號(hào)隨著Vcc對(duì)電容的充電過(guò)程而逐漸回落,即RST端的高電平持續(xù)時(shí)間取決于電容的充電時(shí)間。為了保證系統(tǒng)能夠可靠地復(fù)位,RST端的高電平信號(hào)必須維持足夠長(zhǎng)的時(shí)間。上電時(shí),Vcc的上升時(shí)間約為10ms,而振蕩器的起振時(shí)間取決于振蕩頻率,如晶振頻率為10MHz,起振時(shí)間為1ms;晶振頻率為1MHz,起振時(shí)間則為10ms。在圖2的復(fù)位電路中,當(dāng)Vcc掉電時(shí),必然會(huì)使RST端電壓迅速下降到0V以下,但是,由于內(nèi)部電路的限制作用,這個(gè)負(fù)電壓將不會(huì)對(duì)器件產(chǎn)生損害。另外,在復(fù)位期間,端口引腳處于隨機(jī)狀態(tài),復(fù)位后,系統(tǒng)將端口置為全“l(fā)”態(tài)。如果系統(tǒng)在上電時(shí)得不到有效的復(fù)位,則程序計(jì)數(shù)器PC將得不到一個(gè)合適的初值,因此,CPU可能會(huì)從一個(gè)未被定義的位置開(kāi)始執(zhí)行程序。
3、積分型上電復(fù)位
常用的上電或開(kāi)關(guān)復(fù)位電路如圖3所示。上電后,由于電容C3的充電和反相門的作用,使RST持續(xù)一段時(shí)間的高電平。當(dāng)單片機(jī)已在運(yùn)行當(dāng)中時(shí),按下復(fù)位鍵K后松開(kāi),也能使RST為一段時(shí)間的高電平,從而實(shí)現(xiàn)上電或開(kāi)關(guān)復(fù)位的操作。
根據(jù)實(shí)際操作的經(jīng)驗(yàn),下面給出這種復(fù)位電路的電容、電阻參考值。
圖3中:C:=1uF,Rl=lk,R2=10k
圖3 積分型上電復(fù)位電路
專用芯片復(fù)位電路
上電復(fù)位電路 在控制系統(tǒng)中的作用是啟動(dòng)單片機(jī)開(kāi)始工作。但在電源上電以及在正常工作時(shí)電壓異常或干擾時(shí),電源會(huì)有一些不穩(wěn)定的因素,為單片機(jī)工作的穩(wěn)定性可能帶來(lái)嚴(yán)重的影響。因此,在電源上電時(shí)延時(shí)輸出給芯片輸出一復(fù)位信號(hào)。上復(fù)位電路另一個(gè)作用是,監(jiān)視正常工作時(shí)電源電壓。若電源有異常則會(huì)進(jìn)行強(qiáng)制復(fù)位。復(fù)位輸出腳輸出低電平需要持續(xù)三個(gè)(12/fc s)或者更多的指令周期,復(fù)位程序開(kāi)始初始化芯片內(nèi)部的初始狀態(tài)。等待接受輸入信號(hào)(若如遙控器的信號(hào)等)。
圖4 上電復(fù)位電路原理圖
上電復(fù)位電路原理分析
5V電源通過(guò)MC34064的2腳輸入,1腳便可輸出一個(gè)上升沿,觸發(fā)芯片的復(fù)位腳。電解電容C13是調(diào)節(jié)復(fù)位延時(shí)時(shí)間的。當(dāng)電源關(guān)斷時(shí),電解電容C13上的殘留電荷通過(guò)D13和MC34064內(nèi)部電路構(gòu)成回路,釋放掉電荷。以備下次復(fù)位啟用。
上電復(fù)位電路的關(guān)鍵性器件
關(guān)鍵性器件有:MC34064 。
圖6 內(nèi)部結(jié)構(gòu)框圖
輸入輸出特性曲線
上電復(fù)位電路關(guān)鍵點(diǎn)電氣參數(shù)
MC34064的輸出腳1腳的輸出(穩(wěn)定之后的輸出)如下圖所示:
三極管欠壓復(fù)位電路
欠壓復(fù)位電路工作原理(圖6)w 接通電源,+5V電壓從“0V”開(kāi)始上升,在升至3.6V之前,穩(wěn)壓二極管DH03都處于截止?fàn)顟B(tài),QH01(PNP管)也處于截止?fàn)顟B(tài),無(wú)復(fù)位電壓輸出。w 當(dāng)+5V電源電壓高于3.6V以后,穩(wěn)壓二極管DH03反向擊穿,將其兩端電壓“箝位”于3.6V。當(dāng)+5V電源電壓高于4.3V以后,QH01開(kāi)始導(dǎo)通,復(fù)位電壓開(kāi)始形成,當(dāng)+5V電源電壓接近+5V時(shí),QH01已經(jīng)飽和導(dǎo)通,復(fù)位電壓達(dá)到穩(wěn)定狀態(tài)。
圖6 欠壓復(fù)位電路圖
看門狗型復(fù)位電路
看門狗型復(fù)位電路主要利用CPU正常工作時(shí),定時(shí)復(fù)位計(jì)數(shù)器,使得計(jì)數(shù)器的值不超過(guò)某一值;當(dāng)CPU不能正常工作時(shí),由于計(jì)數(shù)器不能被復(fù)位,因此其計(jì)數(shù)會(huì)超過(guò)某一值,從而產(chǎn)生復(fù)位脈沖,使得CPU恢復(fù)正常工作狀態(tài)。典型應(yīng)用的Watchdog復(fù)位電路如圖7所示。此復(fù)位電路的可靠性主要取決于軟件設(shè)計(jì),即將定時(shí)向復(fù)位電路發(fā)出脈沖的程序放在何處。一般設(shè)計(jì),將此段程序放在定時(shí)器中斷服務(wù)子程序中。然而,有時(shí)這種設(shè)計(jì)仍然會(huì)引起程序走飛或工作不正常。原因主要是:當(dāng)程序“走飛”發(fā)生時(shí)定時(shí)器初始化以及開(kāi)中斷之后的話,這種“走飛”情況就有可能不能由Watchdog復(fù)位電路校正回來(lái)。因?yàn)槎〞r(shí)器中斷一真在產(chǎn)生,即使程序不正常,Watchdog也能被正常復(fù)位。為此提出定時(shí)器加預(yù)設(shè)的設(shè)計(jì)方法。即在初始化時(shí)壓入堆棧一個(gè)地址,在此地址內(nèi)執(zhí)行的是一條關(guān)中斷和一條死循環(huán)語(yǔ)句。在所有不被程序代碼占用的地址盡可能地用子程序返回指令RET代替。這樣,當(dāng)程序走飛后,其進(jìn)入陷阱的可能性將大大增加。而一旦進(jìn)入陷阱,定時(shí)器停止工作并且關(guān)閉中斷,從而使Watchdog復(fù)位電路會(huì)產(chǎn)生一個(gè)復(fù)位脈沖將CPU復(fù)位。當(dāng)然這種技術(shù)用于實(shí)時(shí)性較強(qiáng)的控制或處理軟件中有一定的困難
圖7 看門狗型復(fù)位電路
比較器型復(fù)位電路
比較器型復(fù)位電路的基本原理如圖8所示。上電復(fù)位時(shí),由于組成了一個(gè)RC低通網(wǎng)絡(luò),所以比較器的正相輸入端的電壓比負(fù)相端輸入電壓延遲一定時(shí)間。而比較器的負(fù)相端網(wǎng)絡(luò)的時(shí)間常數(shù)遠(yuǎn)遠(yuǎn)小于正相端RC網(wǎng)絡(luò)的時(shí)間常數(shù),因此在正端電壓還沒(méi)有超過(guò)負(fù)端電壓時(shí),比較器輸出低電平,經(jīng)反相器后產(chǎn)生高電平。復(fù)位脈沖的寬度主要取決于正常電壓上升的速度。由于負(fù)端電壓放電回路時(shí)間常數(shù)較大,因此對(duì)電源電壓的波動(dòng)不敏感。
但是容易產(chǎn)生以下二種不利現(xiàn)象:
(1)電源二次開(kāi)關(guān)間隔太短時(shí),復(fù)位不可靠;
(2)當(dāng)電源電壓中有浪涌現(xiàn)象時(shí),可能在浪涌消失后不能產(chǎn)生復(fù)位脈沖。為此,將改進(jìn)比較器重定電路,如圖9所示。這個(gè)改進(jìn)電路可以消除第一種現(xiàn)象,并減少第二種現(xiàn)象的產(chǎn)生。為了徹底消除這二種現(xiàn)象,可以利用數(shù)字邏輯的方法與比較器配合,設(shè)計(jì)如圖9所示的比較器重定電路。此電路稍加改進(jìn)即可作為上電復(fù)位與看門狗復(fù)位電路共同復(fù)位的電路,大大提高了復(fù)位的可靠性。
圖8 比較器型復(fù)位電路
圖9 改進(jìn)型比較器型復(fù)位電路
單片機(jī)在可靠的復(fù)位之后,才會(huì)從0000H地址開(kāi)始有序的執(zhí)行應(yīng)用程序。同時(shí),復(fù)位電路也是容易受到外部噪 聲干擾的敏感部分之一。因此,復(fù)位電路應(yīng)該具有兩個(gè)主要的功能:
1. 必須保證系統(tǒng)可靠的進(jìn)行復(fù)位;
2. 必須具有一定的抗干擾的能力;
復(fù)位電路應(yīng)該具有上電復(fù)位和手動(dòng)復(fù)位的功能。以MCS-51單片機(jī)為例,復(fù)位脈沖的高電平寬度必須大于2個(gè)機(jī)器周期,若系統(tǒng)選用6MHz晶振,則一個(gè)機(jī)器周期為2us,那么復(fù)位脈沖寬度最小應(yīng)為4us。在實(shí)際應(yīng)用系統(tǒng)中,考慮到電源的穩(wěn)定時(shí)間,參數(shù)漂移,晶振穩(wěn)定時(shí)間以及復(fù)位的可靠性等因素,必須有足夠的余量。圖1是利用RC充電原理實(shí)現(xiàn)上電復(fù)位的電路設(shè)計(jì)。實(shí)踐證明,上電瞬間RC電路充電,RESET引腳出現(xiàn)正脈沖。只要RESET端保持10ms以上的高電平,就能使單片機(jī)有效的復(fù)位。
單片機(jī)在可靠的復(fù)位之后,才會(huì)從0000H地址開(kāi)始有序的執(zhí)行應(yīng)用程序。同時(shí),復(fù)位電路也是容易受到外部噪 聲干擾的敏感部分之一。因此,復(fù)位電路應(yīng)該具有兩個(gè)主要的功能:
1. 必須保證系統(tǒng)可靠的進(jìn)行復(fù)位;
2. 必須具有一定的抗干擾的能力;
一、復(fù)位電路的RC選擇
復(fù)位電路應(yīng)該具有上電復(fù)位和手動(dòng)復(fù)位的功能。以MCS-51單片機(jī)為例,復(fù)位脈沖的高電平寬度必須大于2個(gè)機(jī)器周期,若系統(tǒng)選用6MHz晶振,則一個(gè)機(jī)器周期為2us,那么復(fù)位脈沖寬度最小應(yīng)為4us。在實(shí)際應(yīng)用系統(tǒng)中,考慮到電源的穩(wěn)定時(shí)間,參數(shù)漂移,晶振穩(wěn)定時(shí)間以及復(fù)位的可靠性等因素,必須有足夠的余量。圖1是利用RC充電原理實(shí)現(xiàn)上電復(fù)位的電路設(shè)計(jì)。實(shí)踐證明,上電瞬間RC電路充電,RESET引腳出現(xiàn)正脈沖。只要RESET端保持10ms以上的高電平,就能使單片機(jī)有效的復(fù)位。
圖 1
對(duì)于圖1-a中的電容C兩端的電壓(即復(fù)位信號(hào))是一個(gè)時(shí)間的函數(shù):u(t)=VCC*[1-exp(-t/RC)]
對(duì)于圖1-b中的電阻R兩端的電壓(即復(fù)位信號(hào))也是一個(gè)時(shí)間的函數(shù)u(t)=VCC*exp(-t/RC)
其中的VCC為電源電壓,RC為RC電路的時(shí)間常數(shù)=1K*22uF=22ms。有了這個(gè)公式,我們可以更方便的對(duì)以上電路進(jìn)行透徹的分析。
圖1-a中非門的最小輸入高電平UIH=2.0v,當(dāng)充電時(shí)間t=0.6RC時(shí),則充電電壓u(t)=0.45VCC=0.45*5V,約等于2V,其中t即為復(fù)位時(shí)間。圖a中時(shí)間常數(shù)=22ms,則t=22ms*0.6=13ms。
二、復(fù)位電路的可靠性與抗干擾性分析
單片機(jī)復(fù)位電路端口的干擾主要來(lái)自電源和按鈕傳輸線串入的噪聲。這些噪聲雖然不會(huì)完全導(dǎo)致系統(tǒng)復(fù)位,但有時(shí)會(huì)破壞CPU內(nèi)的程序狀態(tài)字的某些位的狀態(tài),對(duì)控制產(chǎn)生不良影響。
1.電路結(jié)構(gòu)形式與抗干擾性能
以圖1為例,電源噪聲干擾過(guò)程示意圖如圖2種分別繪出了A點(diǎn)和B點(diǎn)的電壓擾動(dòng)波形。
有圖2可以看出,圖2(a)實(shí)質(zhì)上是個(gè)低通濾波環(huán)節(jié),對(duì)于脈沖寬度小于3RC的干擾有很好的抑制作用;圖2(b)實(shí)質(zhì)上是個(gè)高通濾波環(huán)節(jié),對(duì)脈沖干擾沒(méi)有抑制作用。由此可見(jiàn),對(duì)于圖1所示的兩種復(fù)位電路,a的抗干擾電源噪聲的能力要優(yōu)于b。
2. 復(fù)位按鈕傳輸線的影響
復(fù)位按鈕一般都是安裝在操作面板上,有較長(zhǎng)的傳輸線,容易引起電磁感應(yīng)干擾。按鈕傳輸線應(yīng)采用雙絞線(具有抑制電磁感應(yīng)干擾的性能),并遠(yuǎn)離交流用電設(shè)備。在印刷電路板上,單片機(jī)復(fù)位端口處并聯(lián)0.01-0.1uF的高頻電容,或配置使密特電路,將提高對(duì)串入噪聲的抑制能力。
圖 2
3. 供電電源穩(wěn)定過(guò)程對(duì)復(fù)位的影響
單片機(jī)系統(tǒng)復(fù)位必須在CPU得到穩(wěn)定的電源后進(jìn)行,一次上電復(fù)位電路RC參數(shù)設(shè)計(jì)應(yīng)考慮穩(wěn)定的過(guò)渡時(shí)間。
為了克服直流電源穩(wěn)定過(guò)程對(duì)上電自動(dòng)復(fù)位的影響,可采用如下措施:
(1) 將電源開(kāi)關(guān)安裝在直流側(cè),合上交流電源,待直流電壓穩(wěn)定后再合供電開(kāi)關(guān)K,如圖3所示。
圖 3
(2) 采用帶電源檢測(cè)的復(fù)位電路,如圖4所示。合理配置電阻R3、R4的阻值和選擇穩(wěn)壓管DW的擊穿電壓,使VCC未達(dá)到額定值之前,三極管BG截止,VA點(diǎn)電平為低,電容器C不充電;當(dāng)VCC穩(wěn)定之后,DW擊穿,三極管BG飽和導(dǎo)通,致使VA點(diǎn)位高電平,對(duì)電容C充電,RESET為高電平,單片機(jī)開(kāi)始復(fù)位過(guò)程。當(dāng)電容C上充電電壓達(dá)到2V時(shí),RESET為低電平,復(fù)位結(jié)束。
圖 4
4. 并聯(lián)放電二極管的必要性
在圖1復(fù)位電路中,放電二極管D不可缺少。當(dāng)電源斷電后,電容通過(guò)二極管D迅速放電,待電源恢復(fù)時(shí)便可實(shí)現(xiàn)可靠上電自動(dòng)復(fù)位。若沒(méi)有二極管D,當(dāng)電源因某種干擾瞬間斷電時(shí),由于C不能迅速將電荷放掉,待電源恢復(fù)時(shí),單片機(jī)不能上電自動(dòng)復(fù)位,導(dǎo)致程序運(yùn)行失控。電源瞬間斷電干擾會(huì)導(dǎo)致程序停止正常運(yùn)行,形成程序“亂飛”或進(jìn)入“死循環(huán)”。若斷電干擾脈沖較寬,可以使RC迅速放電,待電源恢復(fù)后通過(guò)上電自動(dòng)復(fù)位,使程序進(jìn)入正常狀態(tài);若斷電干擾脈沖較窄,斷電瞬間RC不能充分放電,則電源恢復(fù)后系統(tǒng)不能上電自動(dòng)復(fù)位。
I/O接口芯片的延時(shí)復(fù)位
在單片機(jī)系統(tǒng)中,某些I/O接口芯片的復(fù)位端口與單片機(jī)的復(fù)位端口往往連在一起,即統(tǒng)一復(fù)位。接口芯片由于生產(chǎn)廠家不同,復(fù)位時(shí)間也稍有不同;復(fù)位線較長(zhǎng)而又較大的分布電容,導(dǎo)致這些接口的復(fù)位過(guò)程滯后于單片機(jī)。工程實(shí)踐表明,當(dāng)單片機(jī)復(fù)位結(jié)束立即對(duì)這些I/O芯片進(jìn)行初始化操作時(shí),往往導(dǎo)致失敗。因此,當(dāng)單片機(jī)進(jìn)入0000H地址后,首先執(zhí)行1-10ms的軟件延時(shí),然后再對(duì)這些I/O芯片進(jìn)行初始化。
-
單片機(jī)
+關(guān)注
關(guān)注
6032文章
44525瀏覽量
633264 -
接口芯片
+關(guān)注
關(guān)注
0文章
86瀏覽量
16766 -
復(fù)位電路
+關(guān)注
關(guān)注
13文章
322瀏覽量
44545
原文標(biāo)題:?jiǎn)纹瑱C(jī)復(fù)位電路總結(jié)
文章出處:【微信號(hào):EngicoolArabic,微信公眾號(hào):電子工程技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論