问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

小小的“复位电路”,大有门道

创作时间:
作者:
@小白创作中心

小小的“复位电路”,大有门道

引用
CSDN
1.
https://blog.csdn.net/peiorrong/article/details/143872337

经常看到很多51单片机和STM32的开发板上都会设计有“复位电路”,如下图所示:

图1

图2

以上图1和图2是51和32系统中最常用的复位电路,思考问题如下:

(1)就这几个器件,怎么实现复位的?按键的作用是啥?
(2)图中的电阻电容大小怎么来的?

先记住一点:图1是51单片机上用的复位电路(高电平复位),图2是STM32上用的复位电路(低电平复位)。

那都是复位电路,为什么不一样?我们先看51单片机和STM32的手册,如下图3和图4所示:

图4

从图3和图4很明显可以看出,STC89C51单片机是高电平复位的,STM32是低电平复位的,至于时间我们后面再算,我们暂时先不看,我们先处理第一个问题。

一、几个器件怎么实现复位的

(1)STC89C51
(2)STM32

二、电阻电容的大小怎么选?

由图1和图2可以看出其实复位电路就是RC充放电电路。根据RC的时间常数:

τ=RC (τ发音tao第四声)

RC电路的充电放电公式如下:

其中Vt表示t时刻电容上的电压
V0为电容初始状态的电压值
V1为电容充满电的电压值或者放完的电压值
E 为电源电压;

当t= 1RC时,电容电压=0.63V1;
当t= 2RC时,电容电压=0.86V1;
当t= 3RC时,电容电压=0.90V1;
当t= 4RC时,电容电压=0.98V1;
当t= 5RC时,电容电压=0.99V1;

经过3~5个RC后,充电过程基本结束。

在充电时,电源电压E通过电阻R向C进行充电(电容的初始值V0=0,V1=E)则可得到充电公式:

在放电时,初始值电压为E通过R进行放电,此时V0=E,V1=0。则可得到放电公式:

51单片机复位条件:RST高电平持续24个时钟加10us,约为12us(按照单片机的晶振频率12MHZ来计算的话一个时钟为1/12us,24个时钟就是2us),看51单片机的手册也可知,如下图3:

51单片机复位电压:大于3V,那也就是说上电瞬间RST的电压大于3V,且继续时间大于12us就行,那这个12us就是RC电路需要的充放电时间

我们根据图1可知RST电压等于电阻R1的电压VR,而VR我们需要3V以上才能保证单片机正常复位,所以我们只需要求C1的电压被充电到超过2V的这段时间即可,说白了就是VR(RST的电压)从5V降到3V以下而且满足时间12us即可。

图1

我们用图1中的C1=10uF,R1=10K,来计算一下:

RC=10uF*10K=0.1s 我们套用公式:T=RCln(V1/V1-Vt)

V1=5V,Vt=2V。RC=0.1s 可以得到:

T=0.1ln(5/5-2)=51ms 远远超过12us 满足单片机复位条件。

所以电阻R=10K,电容C=10uF,是完全满足51单片机复位条件的,也可以从手册中看出这个取值是没有问题的,如下图所示:

好了,学会计算51单片机的复位电路电阻电容的取值,相信小伙伴们对于STM32的复位电路的取值也是能计算出来的,在此就不在重复计算过程了,小伙们可以尝试计算一下。

最后,再看另一个复位电路,如下:

上图中加上D1的作用是什么呢?这个就留给小伙伴们思考了,知道原因的小伙伴可以评论区聊聊

好了,今天就先写到这吧!

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号