与传统的51单片机相比,AVR单片机内置复位电路,并且在熔丝位里,可以控制复位时间,所以,AVR单片机可以不设外部上电复位电路,依然可以正常复位。
但是实际应用中,外界干扰对于RST引脚的影响是最大的,很容易引起单片机的意外复位。如果RST引脚外接线路较长,或是此引脚与板子的外部端口相连(比如,RST引脚常需要连接在ISP编程口上),此时就比较容易受到干扰。为增强抗干扰能力,可在RST引脚上接100nF电容到地,并且在RST与外部端口直接通过3K电阻相连,这样构成一个RC滤波电路可有效过滤串入复位脚的干扰,电路如下图所示。
需要注意的是,滤波电路RC常数不要过大,否则会造成ISP_RST信号延迟时间过长影响编程器的正常时序造成编程失败。
二、带复位按键的复位电路设计:
若是系统需要设置按键复位电路,可在上图的基础上在输入端口处增加一个按键开关接地。如下图所示:
--------------------------------------------------------------------
AVR复位电路的设计
与传统的51单片机相比,AVR单片机内置复位电路,并且在熔丝位里,可以控制复位时间,所以,AVR单片机可以不设外部上电复位电路,依然可以正常复位,稳定工作。
若是系统需要设置按键复位电路,那么注意,AVR单片机是低电平复位,如下图,设计按键复位电路:
Mega16已经内置了上电复位设计。并且在熔丝位里,可以控制复位时的额外时间,故AVR外部的复位线路在上电时,可以设计得很简单:直接拉一只10K的电阻到VCC即可(R0)。
为了可靠,再加上一只0.1uF的电容(C0)以消除干扰、杂波。
D3(1N4148)的作用有两个:作用一是将复位输入的最高电压钳在Vcc+0.5V左右,另一作用是系统断电时,将R0(10K)电阻短路,让C0快速放电,让下一次来电时,能产生有效的复位。
当AVR在工作时,按下S0开关时,复位脚变成低电平,触发AVR芯片复位。
重要说明:实际应用时,如果你不需要复位按钮,复位脚可以不接任何的零件,AVR芯片也能稳定工作。即这部分不需要任何的外围零件。
-------------------------------------------------------------------
问:刚接触AVR单片机是看说明都是用10K上拉复位的,后用到M128,刚开始用10K复位不了,看PDF文档说用20K到30K,换20K果然能下载程序。但上电复位不了。只好用跳帽,下载用20K,上电复位用10K,很麻烦,偶然我用了4148代替电阻,结果无论是下载和上电都能复位,激动呢,可是不太明白,为什么用二极管代替复位电阻即可复位并正常使用,这样用有隐患么?
答:其实俺没用过AVR,连蒙带猜……
1、复位上拉电阻没有也行,因为芯片有内置上拉,不过外部再加上一个更稳定,推荐这么做。
2、下载器为了从外部复位CPU,要拉低复位脚,不过可能有的下载器驱动能力太弱,上拉电阻会使它拉不到复位要求的低电平,所以外接上拉阻值要选得大一点。上拉电阻越大则复位脉冲越宽,但下电后的放电时间也越长(在没有二极管的情况下)。
3、二极管的作用是下电后帮助快速释放充在电容上的电荷,否则若掉电→再上电时间间隔太短,CPU就失去了复位电平导致无法启动。换言之,没有二极管也行,但要求掉电后需等一小会儿再上电。二极管和上拉电阻是两码事,但又有些联系。
上一篇:AVR与RS232——一个简单易懂的串口通讯例子程序
下一篇:AVR M16 ADC应用设计要点
推荐阅读最新更新时间:2024-03-16 14:35