难逃魔掌系列!RC电路用作芯片复位电路原理
用的是线性时不变的电容。感慨,岁月不饶人,什么电容电感、微分方程早舍吾记忆而去。
本文引用地址:http://www.amcfsurvey.com/article/285060.htm1 电容充电过程
当电容器接通电源以后,在电场力的作用下,与电源正极相接电容器极板的自由电子将经过电源移到与电源负极相接的极板下,正极由于失去负电荷而带正电,负极由于获得负电荷而带负电,正、负极板所带电荷大小相等,符号相反。电荷定向移动形成电流,由于同性电荷的排斥作用,所以开始电流最大,以后逐渐减小,在电荷移动过程中,电容器极板储存的电荷不断增加,电容器两极板间电压 Uc等于电源电压 U时电荷停止移动,电流为0。
Figure1. 电容充电过程--自由电子流过电源的移动
如Figure 1所示,当给U一个电压值的一瞬间,电路必须要满足基尔霍夫电压定律,因而电容两端电压发生强迫跳变,其值变为U。所以,Figure 1的电路充电时间极短,几乎为0。
(1) RC电路充电
Figure2. RC电路电容充电过程
[1] U = 0时,电路无通路。nRst点与任何一点都不存在电位差。
[2] 在给U一个电压的瞬间,电容正极板上有电子通过点电源到达负极板从而形成回路,此时电源电压U的值将分配在电阻R和电容C之上。nRst点的电压与电容正极板的电压值相等。
[3] 随着自由电子的移动,电容充电完毕,不再有电流即电路中又无通路。此时V = U,电阻相当于导线。nRst点与电容负极的电位差为U。
RC电路电容的充电过程也很短,但比纯C电路的过程要长。这个时间可以通过基尔霍夫定律算出来:
R * I(t) + V(T) = U
I(t) = C * dV(t) / dt
得
R * C dV(t) / dt + V(T) = U (1)
这是一个一阶线性非齐次(U !=0)微分方程。
首先,先讨论(1)中对应的齐次方程
R * C dV(t) / dt + V(T) = 0
分离变量得
dV(t) / V(t) = - dt / RC
对两边积分得
lnV(t) = (- 1 / RC) Sdt + lnc
得
V(t) = e-(t/RC) + lnc
= A * e-(t/RC)
对方程两边进行微分,得:
dV(t) / dt = -(A/RC) * e-(t/RC)
然后将上式带入(1)中得
V(t) = U + A * e-(t/RC)
连抄再请教,终于将这个方程解出来了。当V(t) = U时,表示电容充电过程完毕。这个时间跟R * C值有关。
(2) RC电路用作芯片复位电路
通过复位引脚对芯片(如STM32103)进行复位要满足两点[具体要求以芯片的手册为准]:
复位引脚为低电平(电压小于3.3V)
保持足够长的时间(具体时间可查看其手册)
Figure3. RC电路用于复位电路图
[1]当3.3v电源加到图示位置时,RC电路导通,nRST与地的电位差为电容与地的电位差。nRST与地的电位差只有电容充电完毕后才会达到3.3V,所以在电容的充电过程中,给芯片引脚的信号都是低电平。根据RC电路充电方程式V(t) = U + A * e-(t/RC),只要合理的选择好R跟C的值就可以保证充电时间大于芯片复位所要求的时间。查看e-(t/RC)的衰减曲线:
Figure4. A * e-(t/RC)衰减过程
尽管A应该是负值,但上图可以表示其衰减过程。可以看到,当t = 4RC时,整个表达式的值就已经很接近于0。所以,只要电路中的4RC乘积大于芯片要求复位时间即可。考虑在电容充电过程中应尽量将U电压分配到电阻R上,所以应将电阻R的值选得大一些。图示中4RC = 4 * 10000 * 10^-5 s = 0.4s。这个比按键复位还有保障。
[2] 电路上电后即电容充电完毕后,若再想对芯片复位则只要按下P33即可,按下P33的过程中nRST接地。人按键的速度大于10ms(按键程序用10m s消抖动),而一般芯片复位要求的时间都比较小,应该远小于10ms。所以,按键复位能够保证芯片的复位。
这就是常见的利用RC电路作为芯片复位的原理。分为上电复位和按键复位。还是摆脱不了微分方程的魔掌啊~
评论