單片機目前已被廣泛地應(yīng)用于家電、醫(yī)療、儀器儀表、工業(yè)自動化、航空航天等領(lǐng)域。市場上比較流行的單片機種類主要有Intel公司、Atmel公司和Philip公司的8051系列單片機,Motorola公司的M6800系列單片機,Intel公司的MCS96系列單片機以及Microchip公司的PIC系列單片機。無論用戶使用哪種類型的單片機,總要涉及到單片機復(fù)位電路的設(shè)計。而單片機復(fù)位電路設(shè)計的好壞,直接影響到整個系統(tǒng)工作的可靠性。許多用戶在設(shè)計完單片機系統(tǒng),并在實驗室調(diào)試成功后,在現(xiàn)場卻出現(xiàn)了“死機”、“程序走飛”等現(xiàn)象,這主要是單片機的復(fù)位電路設(shè)計不可靠引起的。圖1是一個單片機與大功率LED八段顯示器共享一個電源,并采用微分復(fù)位電路的實例。在這種情況下,系統(tǒng)有時會出現(xiàn)一些不可預(yù)料的現(xiàn)象,如無規(guī)律可循的“死機”、“程序走飛”等。而用仿真器調(diào)試時卻無此現(xiàn)象發(fā)生或極少發(fā)生此現(xiàn)象。又如圖2所示,在此圖中單片機復(fù)位采用另外一種復(fù)位電路。在此電路的應(yīng)用中,用戶有時會發(fā)現(xiàn)在關(guān)閉電源后的短時間內(nèi)再次開啟電源,單片機可能會工作不正常。這些現(xiàn)象,都可認為是由于單片機復(fù)位電路的設(shè)計不當引起的。
目前為止,單片機復(fù)位電路主要有四種類型:(1)微分型復(fù)位電路;(2)積分型復(fù)位電路;(3)比較器型復(fù)位電路;(4)看門狗型復(fù)位電路。另外,Maxim等公司也推出了專用于復(fù)位的專用芯片。
1 復(fù)位電路的數(shù)學(xué)模型及可靠性分析
1.1 微分型復(fù)位電路
微分型復(fù)位電路的等效電路如圖3所示。以高電平復(fù)位為例。建立如下方程:
電源上電時,可以認為Us為階躍信號,即。其中U0是由于下拉電阻R在CPU復(fù)位端引起的電壓值,一般為0.3V以下。但在實際應(yīng)用中,Us不可能為理想的階躍信號。其主要原因有兩點:(1)穩(wěn)壓電源的輸出開關(guān)特性;(2)設(shè)計人員在設(shè)計電路時,為保證電源電壓穩(wěn)定性,往往在電源的輸入端并聯(lián)一個大電容,從而導(dǎo)致了Us不可能為階躍信號特征。由于第一種情況與第二種情況在本質(zhì)上是一樣的,即對Us的上升斜率產(chǎn)生影響,從而影響了的URST的復(fù)位特性。為此假Us的上升斜率為k,從0V~Us需要T時間,即:
當T《《τ時,Us上電時可等效為階躍信號。與前相同,當T》》τ時,令A(yù)=T/τ,則:
即此時的復(fù)位可靠性較前面的好。
另一種情況就是設(shè)計人員將一些開關(guān)性質(zhì)的功率器件,如大功率LED發(fā)不管與單片機系統(tǒng)共享一個穩(wěn)壓電源,而單片機系統(tǒng)的復(fù)位端采用微分復(fù)位電路,由此也將造成復(fù)位的不正?,F(xiàn)象。具體分析如圖4所示。
將器件等效為電阻RL,其中開關(guān)特性即RL很小或RL很大兩種工作狀態(tài)。而穩(wěn)壓電源的基本工作原理是:ΔRL→ΔI→ΔU→-ΔI→-ΔU。從中可以看出,負載的變化必然引電流的變化。為了分析簡單,假設(shè)R》RL,并且R》》R0.這樣,可以近似地鈄以上電路網(wǎng)絡(luò)看作兩個網(wǎng)絡(luò)的組合,并且網(wǎng)絡(luò)之間的負載效應(yīng)可以忽略不計。
第一個電路網(wǎng)絡(luò)等效為一個分壓電路。當RL從RLmin→Rlmax時,使其變化為階躍性持,則UA為一個賦的階躍信號。
UA(t)=[Rlmax/(Rlmax+R0)]U t≥0
UA(t)=[Rlmin/(Rlmin+R0)]U t《0
用此階躍信號作為第二個電路網(wǎng)絡(luò),一階微分電路的輸入,則可得下式:
(d/dt)UA(t)=(1/RC)URST(t)+(d/dt)URST(t)
URST(0)=0
解之得:
從上式可以看出,由于負載的突變和穩(wěn)壓電源的穩(wěn)壓作用,將在復(fù)位端引入一個類脈沖,從而導(dǎo)致CPU工作不正常。
1.2 積分型復(fù)位電路
此電路的等效電路如圖5所示。仍以高電平復(fù)位為例,同樣可以建立如下方程:
當系統(tǒng)上電時,假設(shè)Us(t)=AU(t)為階躍函數(shù),U0=0,則:
當反相器正常工作后,Uc若仍能保持在VIL以下,則其輸出就可以為高電平;而且如果從反相器正常工作后開始,經(jīng)過不小于復(fù)位脈沖寬度的時間TR后,Uc才能達到VIL以上,那么上電復(fù)位就能保證可靠。所以在實際應(yīng)用中,設(shè)計人員常常將R、CF的值增大以提高時間常數(shù),并且應(yīng)用具有斯密特輸入的CMOS反相器以提高抗干擾性。然而此復(fù)位電路常常在二次電源開關(guān)相對較短的時間間隔情況下出現(xiàn)異常。這主要是由于放電回路與充電回路相同,導(dǎo)致放電時間常數(shù)較大,從而導(dǎo)致UC電壓下降過度。為此有文獻[2]介紹如圖6所示的改進電路。
從圖6可以看出放電回路的時間常數(shù)一般遠遠小于充電時間常數(shù)。這時,上面所提到的重復(fù)開關(guān)電源而造成上電復(fù)位不可靠的現(xiàn)象就可以得到控制。然而,由于放電時間常數(shù)過短,降低了此復(fù)位電路在工作中對電源電壓波動的不敏感性。例如,當電源電壓有波動時,此時由于放電過快,從而有可能造成Uc低于反相器的VIL電壓值,帶來不必要的復(fù)位脈沖。此現(xiàn)象在單片機工作于Sleep方式與Active方式切換,而電源輸出功率又相對較弱時可能出現(xiàn)。為此提出針對以上現(xiàn)象的改進積分型復(fù)位電路(如圖7所示)。圖7中,R1《《R2,適當調(diào)整R1值的大小就可避免以上情況發(fā)生。
1.3 比較器型復(fù)位電路
比較器型復(fù)位電路的基本原理如圖8所示。上電復(fù)位時,由于組成了一個RC低通網(wǎng)絡(luò),所以比較器的正相輸入端的電壓比負相端輸入電壓延遲一定時間。而比較器的負相端網(wǎng)絡(luò)的時間常數(shù)遠遠小于正相端RC網(wǎng)絡(luò)的時間常數(shù),因此在正端電壓還沒有超過負端電壓時,比較器輸出低電平,經(jīng)反相器后產(chǎn)生高電平。復(fù)位脈沖的寬度主要取決于正常電壓上升的速度。由于負端電壓放電回路時間常數(shù)較大,因此對電源電壓的波動不敏感。但是容易產(chǎn)生以下二種不利現(xiàn)象:(1)電源二次開關(guān)間隔太短時,復(fù)位不可靠;(2)當電源電壓中有浪涌現(xiàn)象時,可能在浪涌消失后不能產(chǎn)生復(fù)位脈沖。為此,將改進比較器重定電路,如圖9所示。這個改進電路可以消除第一種現(xiàn)象,并減少第二種現(xiàn)象的產(chǎn)生。為了徹底消除這二種現(xiàn)象,可以利用數(shù)字邏輯的方法與比較器配合,設(shè)計如圖10所示的比較器重定電路。此電路稍加改進即可作為上電復(fù)位與看門狗復(fù)位電路共同復(fù)位的電路,大大提高了復(fù)位的可靠性。
1.4 看門狗型復(fù)位電路
看門狗型復(fù)位電路主要利用CPU正常工作時,定時復(fù)位計數(shù)器,使得計數(shù)器的值不超過某一值;當CPU不能正常工作時,由于計數(shù)器不能被復(fù)位,因此其計數(shù)會超過某一值,從而產(chǎn)生復(fù)位脈沖,使得CPU恢復(fù)正常工作狀態(tài)。典型應(yīng)用的Watchdog復(fù)位電路如圖11所示。此復(fù)位電路的可靠性主要取決于軟件設(shè)計,即將定時向復(fù)位電路發(fā)出脈沖的程序放在何處。一般設(shè)計,將此段程序放在定時器中斷服務(wù)子程序中。然而,有時這種設(shè)計仍然會引起程序走飛或工作不正常[3]。原因主要是:當程序“走飛”發(fā)生時定時器初始化以及開中斷之后的話,這種“走飛”情況就有可能不能由Watchdog復(fù)位電路校正回來。因為定時器中斷一真在產(chǎn)生,即使程序不正常,Watchdog也能被正常復(fù)位。為此提出定時器加預(yù)設(shè)的設(shè)計方法。即在初始化時壓入堆棧一個地址,在此地址內(nèi)執(zhí)行的是一條關(guān)中斷和一條死循環(huán)語句。在所有不被程序代碼占用的地址盡可能地用子程序返回指令RET代替。這樣,當程序走飛后,其進入陷阱的可能性將大大增加。而一旦進入陷阱,定時器停止工作并且關(guān)閉中斷,從而使Watchdog復(fù)位電路會產(chǎn)生一個復(fù)位脈沖將CPU復(fù)位。當然這種技術(shù)用于實時性較強的控制或處理軟件中有一定的困難。
2 專用復(fù)位芯片簡介(MAX813L)
目前,在市場上有許多流行的專用復(fù)位芯片,了解它們的工作原理對電路可靠性的分析及設(shè)計至關(guān)重要。以Maxim公司生產(chǎn)的MAX813L為例,解剖專用復(fù)位芯片的一般工作原理。對于其它芯片,可根據(jù)本文所提供的四種復(fù)位電路一一對其分析即可求得結(jié)論。
MAX813L具有上電復(fù)位、Watchdog輸出、掉電電壓監(jiān)視、手動復(fù)位四大功能。具體原理框圖如圖12所示。本文局限于討論復(fù)位電路部分及看門狗定時器部分。從圖12中可以看出,WDI(Watchdog Input)主要是作為Watchdog計數(shù)器重定用的。在1.6秒內(nèi)若CPU不觸發(fā)復(fù)位看門狗定時器,則WDO(Watchdog Output)將輸出低電平。復(fù)位電路分為手工復(fù)位與上電復(fù)位。從原理圖12中可以看出,上電復(fù)位與本文圖10所提到的電路原理相同,即用比較器產(chǎn)生觸發(fā)信號觸發(fā)觸發(fā)器,以此產(chǎn)生復(fù)位信號。同時,對時基產(chǎn)生的脈沖進行定,當復(fù)位時間達140毫秒時,Reset發(fā)生器產(chǎn)生一脈沖使復(fù)位信號無效。上電復(fù)位時,只要電壓低于4.63V,復(fù)位信號Reset就有效;當電源電壓超過4.63V時,Reset信號仍將繼續(xù)保持140毫秒左右,以保證CPU復(fù)位可靠后無效。手動復(fù)位時,MR(Manual Reset)接地時間不小于150納秒,則可產(chǎn)生一個手動復(fù)位過程。即在復(fù)位端產(chǎn)生140毫秒的有效復(fù)位信號(高電平有效)。若將WDO端與MR連接,則可組成上電復(fù)位及看門狗復(fù)位電路。
3 復(fù)位電路設(shè)計時的注意點
本文所提到的各種復(fù)位電路中,微分復(fù)位電路簡單,但易引入干擾沒有監(jiān)控CPU運行的能力;積分復(fù)位電路簡單可靠,但由于對電源電壓波動不敏感,從而有可能出現(xiàn)CPU由于電源電壓的瞬間過低而造成工作不正常的情況;比較器復(fù)位電路電路較復(fù)雜,工作可靠;Watchdog復(fù)位電路電路較復(fù)雜,工作可靠并且具有監(jiān)控CPU運行的能力。在使用中應(yīng)根據(jù)電路板的空間、電源電壓特性、系統(tǒng)運行現(xiàn)場等情況,綜合考慮而定。般有以下幾條可供參考:
(1)在使用微分型復(fù)位電路并且使用穩(wěn)壓電源時,應(yīng)考慮在電容輸入端加入適當?shù)碾姼幸詼p少負載突變而引起的干擾復(fù)位脈沖的產(chǎn)生。在電路板空間有限的情況下可以選用此復(fù)位電路。
(2)在使用積分型復(fù)位電路時,一方面應(yīng)著重考慮上電復(fù)位時電源電壓的上升率,特別在電源電壓上升率較小時,應(yīng)考慮用較為復(fù)雜的比較型復(fù)位電路。另一方面應(yīng)考慮電路是否有降壓舉措以降低功耗,若有則應(yīng)考慮二極管的正向壓降對復(fù)位電路的影響。
(3)在設(shè)計比較器型復(fù)位電路時,應(yīng)著重考慮電源電壓的波動性。當系統(tǒng)工作在惡劣環(huán)境下時,外界干擾的竄入可能引起毛刺電壓,從而導(dǎo)致不正常的復(fù)位。為此有必要根據(jù)手刺電壓的峰峰值以及脈寬采取以下措施:(a)當毛剌電壓峰峰值沒有達到電源電壓的正常值與系統(tǒng)正常工作所需最低電壓值之差時,可適當降低比較器的復(fù)位電壓下限;(b)當毛刺電壓峰峰值超過電源電壓的正常值與系統(tǒng)正常工作所需電壓之差時,一方面應(yīng)采取措施降低毛刺電壓,另一方面應(yīng)采用較為復(fù)雜的比較器型上電復(fù)位電路(如圖10所示)。
(4)在選用或自己設(shè)計Watchdog型復(fù)位電路時,應(yīng)注意輸入Watchdog的“喂狗”信號應(yīng)該是沿信號,而不是電平信號,同時應(yīng)考慮撤銷復(fù)位電壓的電源電壓值應(yīng)大于系統(tǒng)最小正常電壓值。
評論
查看更多