51、AVR、PIC、MSP430等单片机的复位电路详解
51单片机复位电路
复位是使CPU和系统中其他部件都处于一个确定的初始状态,并从这个状态开始工作。
80C51复位结构如上图所示,此处的复位引脚只是单纯地称为RST而不是RST/VPD,因为CHMOS型单片机的备用电源也是由VCC引脚提供的。
无论是HMOS型还是CHMOS型的单片机,在振荡器正在运行的情况下,复位是靠在RST/VPD引脚加持续2个机器周期(即24个振荡周期)的高电平来实现的。在RST引脚出现高电平后的第二个周期执行内部复位,以后每个周期重复一次,直至RST端变低电平。
51单片机复位电路及复位操作
单片机的复位有上电复位和按钮手动复位两种。如下图2所示为上电复位电路,图(b)所示为上电按键复位电路。
上电复位是利用电容充电来实现的,即上电瞬间RST端的电位与VCC相同,随着充电电流的减少,RST的电位逐渐下降。图2 (a)中的R是施密特触发器输入端的一
个10K?下拉电阻,时间常数为10×10-6×10×103=100ms。只要VCC的上升时间不超过1ms,振荡器建立时间不超过10ms,这个时间常数足以保证完成复位操作。上电复位所需的最短时间是振荡周期建立时间加上2个机器周期时间,在这个时间内RST的电平应维持高于施密特触发器的下阈值。
上电按键复位2(b)所示。当按下复位按键时,RST端产生高电平,使单片机复位。
在复位有效期间(即高电平),80C51单片机的ALE引脚和PSEN引脚均为高电平,且内部RAM不受复位的影响。
AVR单片机复位电路
Mega16已经内置了上电复位设计。并且在熔丝位里,可以控制复位时的额外时间,故AVR 外部的复位线路在上电时,可以设计得很简单:直接拉一只10K的电阻到VCC即可(R0)。为了可靠,再加上一只0.1uF的电容(C0)以消除干扰、杂波。D3(1N4148)的作用有两个:作用一是将复位输入的最高电压钳在Vcc+0.5V 左右,另一作用是系统断电时,将R0(10K)电阻短路,让C0快速放电,让下一次来电时,能产生有效的复位。当AVR在工作时,按下S0开关时,复位脚变成低电平,触发AVR芯片复位。
重要说明:实际应用时,如果你不需要复位按钮,复位脚可以不接任何的零件,AVR芯片也能稳定工作。即这部分不需要任何的外围零件。
PIC单片机复位电路
当PIC16F87X系列单片机使用低频振荡方式时,单片机的外接引脚MCLR连接如图所示中(a)和(b)所示。
其中,MCLR引脚的漏电流最大值为5μA,电阻R取值应小于40kΩ,以保证其压降不大于0.2V;R1用作限流电阻,取值1.0Ω,用于保护MCLR引脚内部电路。
PIC单片机复位电路
二极管D使电容C能够在电源掉电时快速放电。电容C的充电过程对于我们有用,而放电过程不仅无用,而且在一次掉电之后,C还有积累电荷时,如果再次上电,就会造成RC延时电路失去延时作用,从而不能可靠复位。
MSP430单片机复位电路
只要电源接通,那么这个电容就会“逐渐充满电”,这个过程必须要有,正是这个过程保证了CPU正确地“RESET”。
当电容充满电之后我们把电源开关断开了,这个电容中的电“何去何从”呢?VCC和GND之间接了N多的器件,所有的器件都对它说:“把你那点电给我吧,我还能坚持一下。”电容说:“给你们没问题,可是我他娘脑袋上有个电阻挡我的财路,你们先别急,我慢慢把电放给你们。”
当电容刚刚要把电通过那个上拉电阻放出来,电源开关突然又接通了。CPU开始冲电容吼:“孙子!你Y的那个充电过程怎么没啦?我还要复位呢!”电容不干了:“废话,我上次充的电还没放呢这他妈电源又通啦!”CPU急了:“那我怎么办?我得复位啊!”电容眼珠一翻:“管你Y怎么办,死去吧你!”
如果有了这个二极管就可以快速将电容上的电压释放,保证复位信号正确无误。这个才是该二极管起到的真正作用。
小5带你飞(4)—AVR(ATmega 328P)单片机中断的原理和使用(1)
在这里还是先说了一个大前提,这里讲解avr单片机,为啥我选择了使用atmega 328p这个芯片,那是应为现在arduino很火,而arduino 用的就是atmega 328p这个芯片,特别是在创客教育、STEAM教育和一些开发公司都在大量的使用arduino这个开源硬件。了解好atmega 328p了,arduino基本上就游刃有余了,avr系列也基本上熟悉了。
先看几个基本的概念:
atmega 328p有26个中断源,每一个中断源都有一个独立的唯一的中断向量作为中断服务程序的入口地址。
所有的中断源都有自己独立的使能位。
全局中断和相应的中断使能位都被置位了,在中断标志位置位时,才执行中断服务程序。
来看看datasheet:
简单的说一下:328p有2个外部中断,分别是INT0和INT1,两个中断都是由单片机的外部引脚触发的,具体是哪两个引脚,自己去搜一下芯片就知道了。如果允许外部中断的话,即使你把这两个引脚设置为输出,外部中断也会被触发,这个地方要注意一下,好多人都弄不明白。可选择的触发方式为:The INT0 and INT1 interrupts can be triggered by a falling or rising edge or a low level(这是datasheet上的原话,关于不明白啥时上升沿触发,下降沿触发,低电平触发的,可以评论,看情况,出一个教程)。
下面主要看来一下涉及到的寄存器:
MCUCR:MCU控制寄存器。作用是,其实就是控制中断向量表的位置的。
说明一下:
bit 1 :中断向量的选择,就是选择把中断向量发在哪个位置,在flash还是bootloader。
bit 2 :中断向量改变使能
示例代码:
2. EICRA:外部中断控制寄存器A。作用:外部触发方式的选择
说明一下:
bit 3、2:INT 1的触发方式选择
bit1、0:INT 0的触发方式选择
3.EIMSK:外部中断屏蔽寄存器。作用:其实就是中断使能位的控制。
说明一下:
bit 1:状态寄存器的第七位置位,bit 1 置位,INT1中断使能。
bit 0:同理,INT0 中断使能。
4.EIFR:外部中断标志寄存器。作用:可以用来检测是不是触发中断请求了。
说明一下:
bit 1:INT 1触发了中断请求,该位置位。
bit 0:INT 0触发了中断请求,该位置位。
下面还有几个寄存器:就不详细的介绍了,可直接查看datasheet,弄明白我上面讲的那些也就差不多了。
5.PCICR :引脚改变中断控制寄存器
6. PCIFR :引脚改变中断标志寄存器
7.PCMSK2 : 引脚改变屏蔽寄存器 2
8.PCMSK1 : 引脚改变屏蔽寄存器 1
9.PCMSK0 : 引脚改变屏蔽寄存器 0
关于外部引脚中断的示例程序,我们将在下一个教程中给出。欢迎大家关注、点赞。
相关问答
avr单片机 和51的区别?①AVR单片机(ATmega16)的时钟源(晶振、内部RC等)可以不经过分频直接提供给CPU使用,而51的CPU主频等于晶振的12分频,ATmega16外部提供16M的晶振,所以AVR单...
单片机 EA 引脚 接什么啊_作业帮[最佳回答]这个你要区分是什么单片机,51系列,EA=0时,访问外部ROM,EA=1时,CPU访问内部存储器或访问地址超过存储容量时自动执行外部程序存储器的程序.一般EA直...
AVR单片机 刚刚上电的时候未控制的I/O口将默认为高还是低电平?默认是输入状态,高低电平由管脚引出的外围电路决定。默认是输入状态,高低电平由管脚引出的外围电路决定。
串口和 引脚 什么区别?1、arduino中的USB和tx、rx关系tx和rx是串口通信的引脚,usb是通用串行总线的协议,现在电脑上多数只有usb口,一般不会有串口,而arduino使用的是avr芯片,单片...
单片机 有哪些型号?型号多了去了。只能跟你说类型的。1:51结构的有Atmel的AT89CXX系列、AT89Sxx系列、AT89C20系列(20引脚);STC的所有单片机都是51结构的。还有合泰的,笙泉的...
AVR ATmega8 单片机 下载程序的过程-ZOL问答目前的AVR芯片基本上都具备ISP接口,可通过ISP接口进行编程。它一共使用了两条电源线:VCC、GND,三条信号线:SCK、MOSI、MISO,以及复位线:RESET。由于仅仅使用了...
单片机 芯片之间的区别?单片机芯片和普通芯片之间存在显著的区别。1.功能不同:单片机芯片是集成电路芯片,通过超大规模集成电路技术将CPU、RAM、ROM、多种I/O和中断系统等功能集成...
有哪位知道,销售预缩机系列的厂家,预缩机系列排行榜?[回答]容词、副词等定语去掉。巨大的就是形容词,也是副词缩完之后:森林是空调器如果缩成“森林是器”就失去了原本的意思了,所以不能缩到这样状...巨大的...
Arduino,C51,STM32和ARM等有什么联系和区别?ARM是指架构,这是指代用ARM架构开发的一类单片机或者SOC。例如手机处理器,也比如后面要说的STM32。ARM架构分很多种,比如COTEXA系列也就是高端系列,基本上...二...
寻找8 引脚单片机 -ZOL问答寻找8引脚单片机方法:SINOWEALTH提供了丰富的8引脚单片机,程序空间从1K至4K,有些型号内建多达5路A/D转换器,有些提供了高速PWM功能,有些内建振荡器时钟电路...