一.前言
大家對于最小系統(tǒng)都再熟悉不過了,最小系統(tǒng)中不可少的一部分就是復位電路,為什么需要復位電路呢?這是因為MCU因為各種原因比如軟件BUG,可能會出現(xiàn)“跑飛的情況”,所謂跑飛指的是MCU處于失控狀態(tài),復位電路的存在就是為了讓MCU跑飛時重新從一個已知的狀態(tài)重新啟動,舉個例子就像比如你本來在沿著一條固定的路線去一個地方,走到一半時你大腦開小差走錯了路,你又不知道該怎么往下走,這時候復位一下,就相當于把你重新放回出發(fā)的起點,重新走一遍。復位會使得內(nèi)部的寄存器以及IO口都重新回到一個確定的初始狀態(tài)。如果使能了看門狗,那么看門狗也會重啟。

二.原理講解以及器件選型計算
一般來說,當電路中噪聲較小時,選用RC阻容復位電路即可,電阻Rres和電容Cres的值決定了復位時間,那我們對復位時間有什么要求呢?我們的主要考量點是在復位時間內(nèi),VDD能達到MCU所需的最低正常工作電壓,MCU能進入穩(wěn)定狀態(tài),同時當電源下電時,電容中的電量能盡快釋放掉。

對于C51單片機,MCU達到穩(wěn)定狀態(tài)的條件一般有兩個,一個是晶振穩(wěn)定起振,另一個是VDD電壓滿足MCU規(guī)格書要求的額定值,當這兩個條件都達到后,復位狀態(tài)再保持兩個機器周期的時間確保MCU內(nèi)核穩(wěn)定工作,一個周期相當于12個時鐘周期。當復位信號結(jié)束后,程序就會開始運行。

確定了需要的復位時間,我們就能根據(jù)復位時間來確認復位電路電阻和電容值。根據(jù)電容充電的公式我們可以得到充電時間和充電電壓的關(guān)系:
t=RxCxLn[(VCC-V0)/(VCC-Vt)]
舉個例子:比如某芯片的復位電壓是2V,復位電阻是10K,復位電容是100nF,那么上電復位持續(xù)的時間計算如下:
t=(10x103)x(0.1x10-6)xLn[(3.3-0)/(3.3-2.0)]=0.931ms;
然后可以根據(jù)需要的復位時間調(diào)整電容,電容值即可。
三.總結(jié)
復位電路很重要,復位電路決定了復位時間,復位時間又決定了你的MCU能不能順利重啟,所以不要簡單的抄別人的復位電路,要弄懂其中的緣由才是最重要的。
-
mcu
+關(guān)注
關(guān)注
146文章
17699瀏覽量
357864 -
復位電路
+關(guān)注
關(guān)注
13文章
324瀏覽量
44980 -
器件選型
+關(guān)注
關(guān)注
3文章
17瀏覽量
11116
發(fā)布評論請先 登錄
相關(guān)推薦
常用的MCU復位電路介紹

器件選型的講究:如何設(shè)計合格的電源外圍電路?
【免費福利】還在為元器件選型苦惱?飛利浦技術(shù)專家8分鐘教你選型方法和技巧
NXP(恩智浦)外圍器件選型指南
復位電路設(shè)計選型指南
RC復位電路復位時間的計算

硬件設(shè)計——外圍電路(復位電路)

評論