上电复位电路参数分析
01絮絮叨叨
今天在焊接完板子后,发现用ST-Link可以检测到芯片,但是下载却失败。
后面使用STM32CubeProgrammer连接芯片的时候提示,复位失败,看到这里赶紧检查原理图,发现 复位电路电阻和电容画反了 !!!
找到这个问题后,有点不能接受,这么简单的电路就没使用之前的电路了,直接动手画,结果真的栽在这里了!
反思之后决定详细分析复位电路的原理,弄清楚原理之后,以后就算从头开始也不会出错了!于是有了这篇文章。
02复位电路简述
复位电路的应该称为 上电复位电路 ,其主要是在单片机上电后产生一个稳定的低电平脉冲信号,使单片机复位到默认状态。
下图是一个经典的STM32复位电路,电路非常简单:由一个10K的电阻和一个100nF的电容构成。芯片复位脚接到RST,系统上电后产生一个 低电平脉冲。 手动复位只需在电容两端并联一个按键即可。
03复位电路原理
上面的复位电路的实质就是一个 RC重放电电路 。在系统上电时,电源电压从零逐渐加到VCC,由于电容两端电压不能突变。电流通过电阻限流缓慢给电容充电,充电时间由R1和C1参数决定。
在充电过程中,RST电压逐步增加经过一段时间后,系统进入稳态,RST引脚处于高电平。
RST引脚在上电时逐渐上升的电压经过内部的施密特触发器后,低于其阈值为低电平,当电容逐渐充电,电压高于触发阈值时为高电平,系统启动。
04复位电路参数计算
在上面提到,复位电路的原理是通过RC电路给电容充电,RST两端的电压变化,经过施密特触发器后进入单片机进行处理。
我们只需要知道上面的施密特触发阈值和复位最低时间即可计算出复位电路参数。
查找手册,STM32复位时间最低为20us,引脚低电平触发阈值(VIL最大值)为0.8V。假设电源电压为3.3V,带入数据到电容充放电公式。
可计算出RC乘积大于 3.6*10^-5 即可满足要求。
在文章最开头的复位电路中,RC值为10^-3,远大于RC要求最小值。经过计算上述电路,在3.3V条件下,升到0.8V需要的时间为1.417ms。完全满足设计要求,我们也可以使用其他相近参数的元件进行替代,可以达到同样的效果。
05结语
需要注意的是对于STM32是低电平复位,但是 有的芯片是高电平复位 (比如51单片机),其复位原理与上面相同,只是把电阻和电容的位置换一下。
-
芯片
+关注
关注
452文章
50150浏览量
420483 -
单片机
+关注
关注
6030文章
44482浏览量
631737 -
STM32
+关注
关注
2264文章
10852浏览量
354173 -
复位电路
+关注
关注
13文章
320浏览量
44498 -
低电平
+关注
关注
1文章
113浏览量
13221
发布评论请先 登录
相关推荐
评论