阻容复位与按键复位的区别是什么?

作者:陈俊直
链接:https://www.zhihu.com/question/21035836/answer/19153215
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

首先要理解为什么需要复位:
1:因为微处理器(如我们常说的电脑CPU芯片和高端ARM)和微控制器(单片机、低端ARM什么的)芯片都是数字电路芯片,其正常工作是只有0低电平和1高电平这两个电平状态,属于离散系统。而供给芯片的电源输入却是模拟电路,属于连续线性系统。合上开关,芯片的VDD和VSS之间的电压要达到数字芯片可正常工作的电压是需要几毫秒到十几毫秒的过程的。


2:而也因为微处理器和微控制器是数字电路芯片,其是需要时钟信号才能工作。不管是内部芯片自带的低频RC振荡器还是外接晶振或者其他时钟电路,从上电到时钟电路正常起振也是需要时间的。可以看下图我用示波器测到的:ARM9上电那几百毫秒内,电源输入VCC对地电压(黄线)、及18.492M时钟(绿线)引脚对地电压发生的情况。可以看到芯片在给电的10毫秒内电源开始升到正常供电水平,但至少500毫秒后晶振才开始正常输出时钟(之前的虽然有时钟信号,也可以让CPU工作,但波形不稳定,按此状态运行的CPU容易出错)


所以,需要在芯片上电的时候给复位端一个复位信号让微处理器和微控制器内部的CPU在刚上电那段时间不要工作。

阻容复位与按键复位的区别是什么?

这叫上电复位,上电复位是微处理器或微控制器都必须存在的一个重要操作,没有这个操作CPU直接上电工作的话非常容易出错(程序跑飞、寄存器数据错误……)。

所以,51一般都使用阻容复位来让其cpu在上电后在复位重启一次。如下图,去掉SW-PB和R6就是一个普通的51阻容复位,上电瞬间因为电容的压降不可突变的原理,电容等同导通。电容C23和电阻R27之间RESET点的电位就是VC5的电压,一直使能复位端。上电后VC5对C23充电,RESET点的电位降低趋近于GND的电平,后复位解除CPU开始正常工作。(其实这图的R27有点大,C23有点小)

阻容复位与按键复位的区别是什么?

(而很多的低电平复位的芯片、如AVR、PIC等,都之需要在复位引脚上拉一个4.7K~10K的电阻即可。而ARM的复位时间较长,一般用专用的复位芯片)

======================
按键复位:
51的按键复位则是在阻容复位的基础上增加了一个人工干预复位端的按钮和一个限流电阻。如下图,当正常工作的时候,复位端RST和+5V,等同于断开,通过R7接地。当复位按钮按下,复位端RST和+5V几乎连起来,高电平使能芯片复位。并且释放电容C的电能。
R6的作用是不让电源+5直接冲击芯片的复位端(直接冲击可能会损害芯片,特别是8051这种IO驱动能力较弱的芯片),并且防止电容C因短路放电过快而被损坏。

按键复位电路的目的一般是为了开发者在调试电路或程序时候使用,也有在成型的产品使用过程中使其硬复位的功能,比如一些电脑还带有复位按钮,按一下机器强行复位,就是这个原理,当然电脑的复位按键后面的电路远复杂于这个,不仅仅是复位一个芯片,主板上的其他芯片也会被强行复位)

阻容复位与按键复位的区别是什么?

(而且ARM和电脑CPU芯片一般不会直接用类似这种按键复位电路,使用专用复位芯片有自带的按键接口引脚接按键)


作者:HeleleMama
链接:https://www.zhihu.com/question/21035836/answer/37190772
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

题主所问的“阻容复位”,“按键复位”。应该是指低速单片机简单系统的。这里来自华工的

@陈俊直

先生已经回答得很完整了。我补充说一下“复位”这个事情:

复位的目的不仅仅是防止程序上电跑飞以及死机后复原。在多模块并存的系统中,不同模块、电源的启动顺序是有要求的。按指定顺序启动的目的是为了防止芯片接口和内部逻辑电路发生“栓锁”现象,以及避免可能的电流倒灌损坏芯片。这里就是我们在系统设计时常说的“上电时序”问题。
除时序问题外,一些芯片在非工作电压(欠压或过压)下启动可能发生损坏。而DCDC输出稳定需要一段时间。这就要求芯片在电源充分稳定后启动。

通过仔细设计的复位电路可以很好地控制各模块上电的相互关系。这种电路一般被叫做“Reset Chain”。

=======
除阻容和按钮复位外,业界用得最多的还是复位芯片(supervisor)。即便是手动复位(按钮),在系统中也要求经过复位芯片来实现。因为按钮复位以及阻容复位有很大的弊端。

按钮很难输出稳定复位电平,不信你示波器测一下你按按钮的波形,绝对是一串混乱的波形出来。

而阻容在对上升下降沿要求不高的芯片(阈值检测型)上用还好。对于没有内置复位电路的芯片,复位对复位时间以及边沿都有要求,用简单阻容不可能做到。

而复位芯片真是便宜到你难以想象,参考业界良心TI、NXP的官网。为了系统稳定,加一个吧。


作者:Charles Zhu
链接:https://www.zhihu.com/question/21035836/answer/104943735
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

一个不恰当但形象的说法:Reset可以理解是一个舞台剧的开始信号,比如大幕拉开的那一刻。大幕拉开之前,演员得到位,灯光音响得准备好,然后大幕拉开,你看到了一切井井有条,演出开始了。
前面有人说Arm需要时间长所以用复位芯片,我认为这个解释是错误的,RC也可以做到时间长。我个人的理解是RC电路过于简单,抗干扰能力,精确度都不如专用芯片,那么在复杂且对系统不敏感的系统中自然首选专用芯片。