Hello,大家好!單片機(jī)復(fù)位電路作為最小系統(tǒng)中核心三要素(電源、時(shí)鐘、復(fù)位)之一,在整個(gè)硬件電路設(shè)計(jì)中至關(guān)重要;其決定了系統(tǒng)能否正常、穩(wěn)定的工作;今天我們就一篇文章來說明白了。
單片機(jī)復(fù)位電路的類型
高電平復(fù)位
高電平復(fù)位是指單片機(jī)在正常工作狀態(tài)下復(fù)位引腳是保持低電平的,只有在上電瞬間,或者復(fù)位按鍵按下的瞬間,電平會(huì)被短暫拉高,單片機(jī)識(shí)別到高電平后,清空內(nèi)部寄存器進(jìn)行狀態(tài)歸零的過程。典型的是51單片機(jī);高電平復(fù)位電路如下圖所示:
下面使用multsim 搭建仿真電路如下:
仿真電壓波形如下:
低電平復(fù)位
同樣地,低電平復(fù)位是指單片機(jī)在正常工作狀態(tài)下復(fù)位引腳是保持高電平的,只有在上電瞬間,或者復(fù)位按鍵按下的瞬間,電平會(huì)被短暫拉低,單片機(jī)識(shí)別到低電平后,清空內(nèi)部寄存器進(jìn)行狀態(tài)歸零的過程,典型的是stm32單片機(jī);低電平復(fù)位電路如下圖所示:
multsim 仿真電路如下:
仿真電路電壓波形如下圖所示:
RST引腳的復(fù)位時(shí)間
以stm32單片機(jī)為例,根據(jù)查詢手冊(cè), 其復(fù)位時(shí)間最低為20us,引腳低電平觸發(fā)閾值(VIL最大值)為0.8V,假設(shè)電源電壓為3.3V,帶入數(shù)據(jù)到電容充放電公式進(jìn)行計(jì)算。
眾所周知,RC相乘所得的時(shí)間常數(shù),就是電容兩端電壓從0V充電到0.7倍的VCC電壓值;比如R= 10K,C=10UF,通過計(jì)算可以得到,單片機(jī)在上電啟動(dòng)時(shí),電容兩端的電壓從0V經(jīng)過0.1S充電增加到2.3V。0.1S 遠(yuǎn)大于20us,所以在開機(jī)0.1S內(nèi),單片機(jī)系統(tǒng)自動(dòng)復(fù)位(RST引腳接收到的高電平信號(hào)時(shí)間為0.1S左右)。
穩(wěn)定性設(shè)計(jì)
基于以上的復(fù)位電路工作原理,理想情況下,單片機(jī)正常工作沒有毛病。但是面對(duì)現(xiàn)實(shí)中各種復(fù)雜工況,單純按照以上電路進(jìn)行設(shè)計(jì),很難保證系統(tǒng)工作的可靠性與穩(wěn)定性;
1、不穩(wěn)定因素
系統(tǒng)電源
當(dāng)電源發(fā)生供電不穩(wěn)的時(shí)候,嚴(yán)重時(shí)會(huì)影響到復(fù)位電路的穩(wěn)定性,造成異常復(fù)位;
外部干擾
外部干擾會(huì)以傳導(dǎo)或者輻射的方式侵入到單片機(jī)的復(fù)位電路,影響到復(fù)位電路的穩(wěn)定性,造成系統(tǒng)異常復(fù)位;
2、原理圖設(shè)計(jì)措施
如上圖所示,以低電平復(fù)位電路為例,在原理圖設(shè)計(jì)中需要考慮的幾個(gè)點(diǎn)
1)、復(fù)位電路中的電容并聯(lián)ESD二極管;
當(dāng)靜電干擾從電源或地干擾復(fù)位引腳時(shí),通過添加ESD二極管進(jìn)行防護(hù),ESD二極管要滿足耐壓要求并且應(yīng)盡可能選擇雙向的,這樣可以很好的泄放不同極性的干擾;
2)、復(fù)位電路中與地之間串聯(lián)磁珠
當(dāng)有干擾從地線進(jìn)入復(fù)位引腳時(shí),通過磁珠對(duì)該高頻信號(hào)進(jìn)行衰減;
3)、RST引腳與復(fù)位電路之間串聯(lián)磁珠
與2)相同,使用磁珠消耗外部干擾;
3、PCB設(shè)計(jì)措施
1)、走線盡可能短,復(fù)位電路的阻容器件靠近單片機(jī)RST引腳;RST復(fù)位回路,作為敏感信號(hào)路徑,走線越短,那么可能受到的干擾就越少,所以應(yīng)該盡量縮短走線;如下圖所示:
2)、遠(yuǎn)離PCB板邊,金屬件、高速信號(hào)線等強(qiáng)干擾復(fù)雜環(huán)境。如果條件允許,或者考慮到周圍電磁環(huán)境干擾相對(duì)較多,可以對(duì)其進(jìn)行包地處理;
3)、如果有ESD防護(hù)器件,信號(hào)路徑應(yīng)該先過防護(hù)器件再連接到單片機(jī)RST引腳;干擾的泄放路徑應(yīng)該優(yōu)先于正常的信號(hào)路徑,泄放的路徑走線寬度也應(yīng)該大于正常的信號(hào)路徑;
此外,單片機(jī)復(fù)位也可以通過軟件指令進(jìn)行復(fù)位,還有欠壓復(fù)位,看門狗復(fù)位等。使用軟件指令復(fù)位是在單片機(jī)代碼中調(diào)用一條復(fù)位指令進(jìn)行復(fù)位的,在一些特定的功能或者調(diào)試中比較常用。在大多數(shù)的單片機(jī)中還集成了欠壓復(fù)位,當(dāng)電壓不穩(wěn)或短暫降低后,就會(huì)觸發(fā)欠壓復(fù)位;看門狗復(fù)位是由于程序bug或者外部環(huán)境的干擾,造成系統(tǒng)程序跑飛,在一定的周期內(nèi),沒有執(zhí)行喂狗程序,此時(shí)就會(huì)觸發(fā)產(chǎn)生復(fù)位動(dòng)作;以上這些,大家可以學(xué)習(xí)查閱其他資料,這里不再詳細(xì)說明;
單片機(jī)外部復(fù)位電路的可靠性設(shè)計(jì),包括但不限于以上提到的設(shè)計(jì)思路。理想狀態(tài)下,電路越簡(jiǎn)潔越好,只要符合物理原理就可以正常工作。但是現(xiàn)實(shí)情況并不盡如人意,所以在電路設(shè)計(jì)中,要流出足夠?qū)挼?ldquo;護(hù)城河”。如果在測(cè)試中發(fā)現(xiàn)有些設(shè)計(jì)是冗余的,后期可以不焊;但是如果沒有相應(yīng)的考慮,一旦出現(xiàn)問題,那將是始料未及的;就像我們的國家一樣,我們熱愛和平,但是并不能沒有應(yīng)對(duì)戰(zhàn)爭(zhēng)的能力。
以上內(nèi)容是本人學(xué)習(xí)思考與工作實(shí)踐的總結(jié)梳理,分享出來供大家學(xué)習(xí)思考,也歡迎留言討論。如有不妥,歡迎留言指出,一起學(xué)習(xí),共同進(jìn)步!