AVR复位引脚隔离应使用哪些电阻和电容值?


15

背景...

我是AVR应用程序的新手。我最近建立了两个基于ATTINY13的电路(发光的LED指示灯),这些电路在面包板上正确(独立地)工作。当我将它们结合在具有共享电源的焊料挡板上时,事情就一团糟了。经过大量调查,看来他们一直在重置。

我没有连接每个微型的引脚1(复位)。我研究了处理复位引脚的正确方法,并从中实现了以下内容:

  1. 在电源上并联了一个100uF电解电容器,以帮助吸收任何潜在的电流,电源将太“慢”以致无法处理。

  2. 增加了一个4.7K电阻从VCCRESET

  3. 加入0.1uF的陶瓷电容器从GNDRESET

这些步骤完全解决了问题。

问题:

我上面链接的页面正在提供我尚未做的ISP(系统内编程)时的建议。(我正在分别对微控制器进行编程,而没有其他组件与其连接。)

我已经看到电容器(10nF,0.1uF等)和电阻(4.7K,10K等)的几个不同值,并且不确定是什么因素改变了这些值。谁能阐明复位引脚隔离的工作原理以及如何计算要使用的组件值?如果没有系统内编程标头,您能解释使用哪些值?

AVR复位引脚隔离原理图

Answers:


15

Atmel AVR042:AVR硬件设计注意事项告诉我们,复位引脚上不需要电容器。我个人认为这太过分了。您没有理由继续制造数十个AVR电路,每个电路都使用该冗余电容器。

至于复位上拉电阻:

复位线具有一个内部上拉电阻,但是如果环境嘈杂,它可能会不足,因此会偶尔发生复位。有关特定器件上拉电阻的值,请参见数据手册。连接RESET,以便可以同时输入高压编程和普通的低电平复位,这可以通过在RESET线上施加上拉电阻来实现。该上拉电阻可确保复位不会意外降低。上拉电阻理论上可以是任意大小,但如果应使用例如STK500 / AVRISP编程Atmel®AVR®,则上拉电阻不应过强,以至于编程器无法通过拉低RESET线来激活RESET。推荐的上拉电阻为4.7kΩ或使用STK500进行编程时更大。为使debugWIRE正常工作,上拉电阻不得小于10kΩ。

如果您看一下结合了AVR微控制器的专业产品,例如Arduino,其众多克隆产品,数十个开发套件,您会发现大多数产品都使用4.7kΩ或10kΩ电阻器。

特别是对于ATtiny13,其数据表规定上拉电阻的理想范围应为[20kΩ,80kΩ]。


1
20k到80k,还是20k除以80k?:)
耶尔顿

感谢“硬件设计注意事项”链接。我不知道这个文件!
耶尔顿

哈哈,我使用了该符号,因为每个人都在使用减号。负面抵抗也没有任何意义:)
乔尼·B·古德

我通常会看到代字号(〜)表示“通过”,也表示“近似”。我想这取决于上下文。感谢您指出数据表中列出了复位上拉电阻,但我还没有意识到它会包含该信息。我的数据表显示了复位引脚的上拉电阻在30k至80k之间。至少我知道现在要看哪里。谢谢!
耶尔顿(JYelton)2012年

4
20ķΩ80ķΩ

7

我总是只在/ Reset引脚上使用一个10k上拉电阻至Vcc,从来没有任何问题。通常,在Vcc和GND之间的Vcc引脚附近包括一个100nF电容器也是一个好主意,以使芯片稳定工作。在我看来,复位引脚上的电容器不是必需的,也就是说,我从未在自己开发的AVR电路(而且我已经开发了很多)中包括一个电容器,也从未使我感到悲伤。


您能解释(或指向一个好的新手教程)这些微型电容器除了与电源并联的更大的电解槽以外,还可以提供帮助吗?
JYelton 2012年

1
它处理“纹波频率”问题,可能比实际情况复杂得多,但对于旁路电容器,最低100nF是公认的经验法则。这是一篇(可能很多)参考文章,可能是您感兴趣的:seattlerobotics.org/encoder/jun97/basics.html。您还可以通过搜索“绕过”或“解耦”在此站点上找到相关的帖子
vicatcu 2012年

大型电解电容器可处理低频,但在高频下无效。小型陶瓷电容器(0.1uF)可处理高频,但在低频下无效。
Technophile

因此,同时使用两者,供应源无论如何都应有一个大的供应,而本地则应有一个小的供应。感应和高频可能是一个问题,但极端。有趣的是,HSVP考虑因素也没有与该复位引脚电阻器串联的二极管。
mckenzm
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.