MCU 上的 ADC 输入阻抗

电器工程 微控制器 ADC 阻抗
2022-01-04 14:54:35

典型 MCU ADC 的输入阻抗是多少?在这种情况下,我正在使用 PIC24FJ64GA004。我不需要高速采样 - 每秒最多 100 个样本。

我希望用一个 100k 电阻和一个 10k 电阻连接一个电阻分压器,所以阻抗应该高于 1M,否则阻抗会开始扭曲读数。

4个回答

MCU ADC 输入可能会遇到可变输入阻抗,具体取决于采样保持电容是否连接到引脚。使用运算放大器缓冲信号可能是值得的。运算放大器还有一个额外的好处,就是允许您滤除高于奈奎斯特的频率,这也是一种很好的做法。

输入漏电流

要确定您的电阻器从栅极压降,您需要使用数据表中的漏电流。Microchip 在其数据表中指定了“输入漏电流”。[我查阅的数据表][1] 指定输入泄漏电流为 1uA。这可能会导致 0.1V 或 100mV,这只是 Robert 计算的两倍,可能对您的信号没有问题。

现在请记住,如果您将 30V 信号分解为 30/11 (2.7v) 伏特满读数,则将 100mV 添加到其中,从而导致 30V 信号出现高达 3% 的误差。

如果您需要 1V 的分辨率,请将其除以 11,然后加上 100mV。这个 100mV 可能大于 1V 信号。

输入电容

罗伯特是正确的,会有一个电容,但这确实指定了进行 ADC 测量所需的时间。这也与您选择的输入电阻相结合,创建了一个低通滤波器;如果您想测量更高频率的信号,您将无法捕获它们。

减少错误

最简单的方法是减少分压器上的电阻,或缓冲信号。当您缓冲信号时,您将用运算放大器的泄漏电流替换 PIC 的泄漏电流,您可以得到非常低的泄漏电流。

这个 1uA 是最坏的情况,除非您花费大量成本来对设计进行微小的更改、制造您的设计并测试它对您有多糟糕。

请让我知道是否有什么我可以做的让这更容易阅读。

尚未提及的一点是输入端的开关电容。许多 ADC 会在进行测量时将一个电容器连接到输入端,然后稍后再将其断开。此电容的初始状态可能是最后一次测量的电压、VSS 或不一致的情况。为了准确测量,输入端要么在连接电容时不移动,要么在断开电容之前反弹并恢复;在实践中,这意味着要么输入电容必须高于某个值,要么输入电容和源阻抗形成的 RC 时间必须低于某个值。

例如,假设开关输入电容为 10pF,采集时间为 10uS。如果输入阻抗为100K,除了ADC的电容外没有输入电容,且启动电容电压与被测电压的差值为R,则RC时间常数为1uS(10pF * 100K) ,因此采集时间为 10 个 RC 时间常数,误差为 R/exp(10)(约 R/22,000)。如果 R 可能是满量程电压,那么误差对于 16 位测量将是一个问题,但对于 12 位测量则不会。

假设除了 10pF 的开关电容外,板上还有 10pF 的电容。在这种情况下,初始误差将减半,但 RC 时间常数将加倍。因此,误差将是 R/2/exp(5)(大约 R/300)。勉强够用 8 位测量。

再增加一点电容,情况会变得更糟。将电容推至 90pF,误差为 R/10/exp(1)(约 R/27)。另一方面,如果上限变得比这大得多,则错误将回落。对于 1000pF 的电容,误差约为 R/110;在 10,000pF (0.01uF) 时,约为 R/1000。在 0.1uF 时,约为 R/10,000,在 1uF 时,约为 R/100,000。

看看数据表的第 198 页。引脚上有 6-11pF,固定帽上有 4.4pF。