ATMega328 外部 AREF 连接

电器工程 ADC 大气压 电压参考
2022-01-12 08:12:27

来自ATMega328 数据表,第 24.9.1 节:

如果将外部参考电压施加到 AREF 引脚,则可能无法使用内部参考电压选项。

从 Arduino参考页面

或者,您可以通过一个 5K 电阻将外部参考电压连接到 AREF 引脚,从而允许您在外部和内部参考电压之间切换。请注意,电阻器会改变用作参考的电压,因为 AREF 引脚上有一个内部 32K 电阻器。两者充当分压器,因此,例如,通过电阻器施加的 2.5V 将在 AREF 引脚产生 2.5 * 32 / (32 + 5) = ~2.2V。

ATMega328 数据表确认表 29.16 ADC 特性中的“内部 32k 电阻器”参考:参考输入电阻 = 32 kOhm。

话虽如此,上述两种说法似乎有些相互对立。我有一个应用程序,其中一些传感器输出 0-5V 满量程,其他传感器输出 0-1.8V 满量程。当对 1.8V 传感器进行采样并切换到 5V 传感器的内部 AVCC 参考时,该应用将受益于切换到 1.8V AREF 的更高分辨率。

Arduino 参考页面建议,如果您已通过 5kOhm 串联电阻耦合到 1.8V AREF,并考虑了内部 32kOhm 电阻的隐含分压器,那么这是一件好事。这只是来自 Arduino 参考的坏建议,还是实际上是做这种事情的一种常见做法?Atmel 的声明是否仅限于在没有外部限流电阻的情况下施加于 AREF 的外部电压(如果是,为什么,考虑到内部 32k 电阻)?

顺便说一句,显然,通过适当构造的运算放大器将 1.8V 信号缩放至 5V 可以达到类似的结果,但是如果板载 ADC 也能处理增加的复杂性和部件似乎很浪费通过利用可变电压基准。同样,如果您可以说服自己检测到的信号不会超过 1.1V,您可以利用内部电压基准。再一次,对我来说,使用我为低压传感器供电的 1.8V 稳压器来设置参考值似乎更优雅。

2个回答

我认为通过 5 kohm 电阻向 Arduino 参考输入施加外部电压没有任何问题。或者更好的是,使用电阻分压器,以便将 5 V 转换为所需的 AREF 电压,同时显示大约 5 kohm 的源电阻。第二个要求不必是准确的。这只是为了限制通过外部电路从 AVCC 流向地的电流。

示意图

如果您想在 MCU 的 AREF 输入端获得 1.8 V,只需选择 R1 和 R2,使得 \$ V_{AREF} = 5·\frac{R2||32000}{R1+(R2||32000)} =\$ 1.8 V 和 \$ R_{source} = R1||R2 \约\$ 5 kohm。

当您需要使用 [0, 1.8] V 范围时,禁用 ATMega 内部的参考,当您需要使用 [0, 5] V 时,启用内部 AVCC 参考(如果是 5 V) . 如果图 24-1 中所示的 MOSFET(将内部参考连接到 AREF 线)的导通电阻远低于 5 kohm(我想它有),则内部电路将看到 AVCC。在第二种情况下,从内部 AVCC(假设为 5 V)到外部电阻分压器的电流消耗将为 \$\leqslant\$ 1 mA,但这不是问题。

总而言之:如果某些东西可能会损坏,那将是一个不好的建议,但 1 mA 不会损坏任何东西。

关于 Aref PIN 的内部配置以及在使用 Arduino 的 ADC 时该引脚所起的作用的很好的解释。

这是我的两分钱。我刚刚修改了一点原理图,以澄清 32 kOhms 电阻是内部的。最重要的是,我加入了替代配置,以便更安全地使用外部 Vref。R1 和 R2 的方程式是在将通过它们的电流限制为 1mA 后获得的。为了获得 R1 和 R2 的公式,已经考虑了最坏的情况(内部开关意外关闭)。

干杯
在此处输入图像描述