详解MCU外围复位电路原理以及器件选型计算

描述

一.前言

大家对于最小系统都再熟悉不过了,最小系统中不可少的一部分就是复位电路,为什么需要复位电路呢?这是因为MCU因为各种原因比如软件BUG,可能会出现“跑飞的情况”,所谓跑飞指的是MCU处于失控状态,复位电路的存在就是为了让MCU跑飞时重新从一个已知的状态重新启动,举个例子就像比如你本来在沿着一条固定的路线去一个地方,走到一半时你大脑开小差走错了路,你又不知道该怎么往下走,这时候复位一下,就相当于把你重新放回出发的起点,重新走一遍。复位会使得内部的寄存器以及IO口都重新回到一个确定的初始状态。如果使能了看门狗,那么看门狗也会重启。

mcu

二.原理讲解以及器件选型计算

一般来说,当电路中噪声较小时,选用RC阻容复位电路即可,电阻Rres和电容Cres的值决定了复位时间,那我们对复位时间有什么要求呢?我们的主要考量点是在复位时间内,VDD能达到MCU所需的最低正常工作电压,MCU能进入稳定状态,同时当电源下电时,电容中的电量能尽快释放掉。

mcu

对于C51单片机,MCU达到稳定状态的条件一般有两个,一个是晶振稳定起振,另一个是VDD电压满足MCU规格书要求的额定值,当这两个条件都达到后,复位状态再保持两个机器周期的时间确保MCU内核稳定工作,一个周期相当于12个时钟周期。当复位信号结束后,程序就会开始运行。

mcu

确定了需要的复位时间,我们就能根据复位时间来确认复位电路电阻和电容值。根据电容充电的公式我们可以得到充电时间和充电电压的关系:

t=RxCxLn[(VCC-V0)/(VCC-Vt)]

举个例子:比如某芯片的复位电压是2V,复位电阻是10K,复位电容是100nF,那么上电复位持续的时间计算如下:

t=(10x103)x(0.1x10-6)xLn[(3.3-0)/(3.3-2.0)]=0.931ms;

然后可以根据需要的复位时间调整电容,电容值即可。

三.总结

复位电路很重要,复位电路决定了复位时间,复位时间又决定了你的MCU能不能顺利重启,所以不要简单的抄别人的复位电路,要弄懂其中的缘由才是最重要的。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分