文 沙鸥 我这里经常会做到关于单片机系统及其电路板开发的项目(业务Q-Q2531263726),在不少的单片机最小系统中很重要的一个电路单元就是上电复位电路,如51、STM32F103单片机等。以前在做设计的时候其实没有多想,按照厂家推荐的电路依葫芦画瓢就可以了,也没有出过什么问题效果也不错。 不过最近看到一资料,有关于RC上电复位电路的介绍,讲了该电路的电压上升到某一个点位的时间的计算,觉得非常有用。比如对于单片机来说,假如复位时间过长,又有其他外设,比如显示屏的话,可能会导致显示屏在开机后闪一下屏,这给用户的体验可不怎么好。所以,还是分享一下这个RC电路中电压达到特定点的时间的计算方法,以方便各位设计师或者电子爱好者的设计。 在这RC电路中,接通电源的刚开始由于电源的不稳定和电容C的隔直通交效应,可以看做电容C是短路的,所以此时Vt=0V,如果此时Vt接到STM32单片机的NRST引脚,此时单片机就会复位。后来由于电源的逐步稳定和电容的充放电效应,电容逐渐由短路变成断路,最后Vt=VCC=3.3V。但是Vt从V0=0V到3.3V的过程不是一蹴而就的,而是一个渐变的上升过程,需要一定的时间。 做一个假设:要使Vt=2.0V,设Vt从接通电源的0V到2.0V所用的时间为t。 那么由公式: t=RxCxLn[(VCC-V0)/(VCC-Vt)] =(10x103)x(0.1x10-6)xLn[(3.3-0)/(3.3-2.0)] =0.931x10-3s=0.931ms 其中Ln是自然对数,是以常数e为底数的对数。这个可以在电脑上的计算器里面用“科学型”模式进行计算。 也就是说,此时单片机会在电路得电后马上进行复位,并在0.931秒后单片机正常工作。这个参数就是设计的依据,可以控制RC的值进行改变,从而优化设计。 来吧,欢迎关注一个有技术的有趣的微-信-公-众-号:yonkotech 参考:
【1】吴厚航 《深入浅出玩转FPGA》第3版
|