前幾周逗比君在調試時遇到了這樣一個現象,如下圖所示
藍色的是3.3V上電信號(除個別芯片使用其他電壓外,整板使用3.3V供電),粉紅色的復位信號(此處的復位信號是低電平有效的RC接反相器之后的輸出),橫軸每格為2ms,縱軸每格為1V。復位信號的產生使用RC上電復位,可是這里的上電復位信號竟然就這么隨著3.3V 就這么頭也不回的一起走了!其結果就是我的芯片并沒有收到期望中的復位信號,導致工作異常。
于是,逗比君就決定好好理一理RC上電復位里的各種門道!
依據復位信號的分類,RC復位電路又可分為高電平有效的RC復位(下圖左)和低電平有效的RC復位(下圖右)
以低電平有效的RC復位電路為例,我們首先對其原理進行分析:
在無窮遠時刻,電容C兩端電壓與VCC兩端電壓一致,對應RST為高電平
由此可知,隨著電容C兩端的電壓逐漸升高,RST對地的電壓幅值也在升高,對于普通的芯片而言,其識別到的低電平與高電平也總是一個范圍,因此在Vrst到達芯片復位管腳可識別到的高電平后,低電平有效的復位時間結束,此后該管腳均保持高點平狀態。
為了驗證上述的理論分析正確性,我們對C兩端的電壓值進行計算:
此時Uc的計算變成了一個關于Uc的一元微分方程組(我也沒想到這個地方會扯到高數,我也是服了我自己),那么我們就解一下這個東西
可以看到上述得到結果,在t=0時,電容兩端的電壓為0,在t趨近于無窮大時,電容兩端的電壓為Vcc,這個結果與我們的理論分析結果是一致的。
理解了這個之后,我們開始對復位時間進行分析,由上述的推導可知復位時間為
假設電容充電至0.9Vcc時認為復位完成,那么可以計算得到需要的時間為
通常將RC的乘積稱為時間常數,由此可計算得到對應電路中的RC值用于電路設計。
在實際的應用中,假設電源電壓為3V,芯片的復位管腳在大于2V時通常會認為是高電平,此時計算時間可知,僅在一倍的時間常數下,即可實現低電平RC復位的目的。
RC復位的基本原理我們到這里就算是說明白了,可以設想到實際應用中,如果僅用RC復位的話,其效果應同本文開頭圖中看到的現象一樣,復位信號隨著電源建立的過程逐漸上升,這與我們通常理解的電平由0到1的跳變過程是不一樣的,因此我們這里加入反相器,來實現一個更加“平滑”的復位信號。
先來看看包含反相器的RC復位電路
圖中的復位信號僅反向一次,事實上在我們實際使用中,需要反向三次來實現與原信號的一致
因此以某款反相器為例,繼續向后分析
在反相器電源電壓為3.3V時,由其手冊可知正躍變閾值電壓約為1.0V~2.0V之間,即未到達正躍變閾值電壓時,反相器輸出的總是一個低電平,到達正躍變閾值電壓后,反相器輸出的總是一個高電平,這樣即可得到一個“平滑”的低電平到高電平的復位信號。
(到這里我們從另一個角度去思考下,低電平有效的RC電路中,電容C由于其本生的充電過程,使得反相器先到達其3.3V的工作電壓,在反相器正常工作后,開始監控復位管腳上電壓值,到達正躍變閾值后,輸出的電平由低電平到達高電平,最終實現復位功能。)
接著我們為了使低電平有效的RC復位電路具有更強的魯棒性,我們加入二極管來增強其在放電階段的速度
二極管的作用可以理解為在電源斷電后,電容可通過二極管迅速放電,待下次電源上電時實現可靠的上電復位。這種情況通常出現在電源因某種干擾瞬間斷電時,電容C不能迅速將電荷放掉,在電源恢復后無法進行完整的充電造成芯片沒有復位,致使芯片異常。
到這里我覺得理論分析部分基本結束,繼續我們的故障討論,在本文開始的圖中,選用的電阻值為330K,電容為0.0224uF,計算可知時間常數約在7ms左右,通過觀察3.3V的建立時間約為8ms左右,使得我們懷疑上電時間過緩造成的電容C的充電過程過于緩慢,同時給到反相器正常工作時,復位管腳的電壓已經大于2V,造成復位管腳輸出總是為高電平,最終造成復位信號也在一直爬坡。
改進方法就是增長電容C的充電時間,我們將電容值擴大到0.1uF,將時間常數擴大到35ms左右,此時的狀態如下圖所示,橫軸每格為5ms,縱軸每格為1V,復位信號狀態有顯著改善,產品對應芯片復位引腳工作正常。
說到這里,RC復位電路,你好像也沒有那么煩了~
-
電路設計
+關注
關注
6675文章
2453瀏覽量
204366 -
反相器
+關注
關注
6文章
311瀏覽量
43320 -
RC電路
+關注
關注
2文章
162瀏覽量
30257 -
RC復位電路
+關注
關注
0文章
7瀏覽量
5763 -
復位信號
+關注
關注
0文章
54瀏覽量
6320
發布評論請先 登錄
相關推薦
評論