3

使用mcu ADC的阻抗匹配问题

 11 months ago
source link: https://titron.github.io/2023/10/09/mcu_adc_input/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

使用mcu ADC的阻抗匹配问题



单片机的基准电压一般为3.3V,如果外部信号超过了AD测量范围,可以采用电阻分压的方法,但是要注意阻抗匹配问题。

比如,SMT32的模数输入阻抗约为10K,如果外接的分压电阻无法远小于该阻值,则会因为信号源输出阻抗较大,AD的输入阻抗较小,从而输入阻抗对信号源信号的电压造成分压,最终导致电压读取误差较大。

因此,对于使用单片机读取外部信号电压,外接分压电阻必须选用较小的电阻,或者在对功耗有要求的情况下,可选用大阻值的电压分压后,使用电压跟随器进行阻抗匹配(电压跟随器输入阻抗可达到几兆欧姆,输出阻抗为几欧姆甚至更小)。如果信号源的输出阻抗较大,可采用电压跟随器匹配后再接电阻分压。

对于外置的ADC芯片,在选型时,要留意其类型(SAR型、开关电容型、FLASH型、双积分型、Sigma-Delta型),不同类型的ADC芯片输入阻抗不同——

Sigma-Delta型:这是目前精度最高的ADC类型,需要重点注意如下问题:

a. 测量范围问题:

SigmaDelta型ADC属于开关电容型输入,必须有低阻源。

所以为了简化外部设计,内部大多集成有缓冲器。

缓冲器打开,则对外呈现高阻,使用方便。

但要注意了,缓冲器实际是个运放。那么必然有上下轨的限制。

大多数缓冲器都是下轨50mV,上轨AVCC-1.5V。

在这种应用中,共莫输入范围大大的缩小,而且不能到测0V。

一定要特别小心!

一般用在电桥测量中,因为共模范围都在1/2VCC附近。不必过分担心缓冲器的零票,通过内部校零寄存器很容易校正的;

b. 输入端有RC滤波器的问题:

SigmaDelta型ADC属于开关电容型输入,在低阻源上工作良好。

但有时候为了抑制共模或抑制乃奎斯特频率外的信号,需要在输入端加RC滤波器,一般DATASHEET上会给一张最大允许输入阻抗和C和Gain的关系表。

这时很奇怪的一个特性是,C越大,则最大输入阻抗必须随之减小!

刚开始可能很多人不解,其实只要想一下电容充电特性久很容易明白的。还有一个折衷的办法是,把C取很大,远大于几百万倍的采样电容Cs(一般4~20PF),则输入等效纯电阻,分压误差可以用GainOffset寄存器校正。

c. 运放千万不能和SigmaDelta型ADC直连!

前面说过,开关电容输入电路电路周期用采样电容从输入端采样,每次和运放并联的时候,会呈现低阻,和运放输出阻抗分压,造成电压下降,负反馈立刻开始校正,但运放压摆率(SlewRate)有限,不能立刻响应。于是造成瞬间电压跌落,取样接近完毕时,相当于高阻,运放输出电压上升,但压摆率使运放来不及校正,结果是过冲。而这时正是最关键的采样结束时刻。

所以,运放和SD型ADC连接,必须通过一个电阻和电容连接(接成低通)。而RC的关系又必须服从datasheet所述规则。

d. 差分输入和双极性的问题:

SD型ADC都可以差分输入,都支持双极性输入。

但这里的双极性并不是指可以测负压,而是Vi+ Vi-两脚之间的电压。假设Vi-接AGND,那么负压测量范围不会超过-0.3V。

正确的接法是Vi+ Vi- 共模都在-0.3~VCC之间差分输入。

一个典型的例子是电桥。

另一个例子是Vi-接Vref,Vi+对Vi-的电压允许双极性输入。


Recommend

  • 4

    Capturing ADC data into DDR memory on the SDS7102 Aug 15, 2016 This is a post in a series about me poking at the insides of my OWON SDS7012 oscilloscope. You might want to start reading at the

  • 12
    • blog.weinigel.se 3 years ago
    • Cache

    Capturing data from the SDS7102 ADC

    Capturing data from the SDS7102 ADC Jul 8, 2016 This is a post in a series about me poking at the insides of my OWON SDS7012 oscilloscope. You might want to start reading at the

  • 13

    前言 在嵌入式开发中,ADC应用比较频繁,本文主要讲解ADC的基本原理以及如何编写基于ARM的裸机程序和基于Linux的驱动程序。

  • 9
    • www.taterli.com 3 years ago
    • Cache

    RP2040(树莓派Pico) ADC

    RP2040(树莓派Pico) ADC由 TaterLi2021年1月29日2021年1月29日 Pico模块有3个ADC通道,固定在4个引脚上,总共5个通道,其中一个内部通道...

  • 2
    • zhuanlan.zhihu.com 3 years ago
    • Cache

    电容基础3——阻抗和容抗

    电容基础3——阻抗和容抗皮特物联网技术顾问今天我们来学习电容在交流电情况下的特征表现...

  • 9

    电感基础3——RLC电路,帮助你轻松理解“阻抗”的概念皮特物联网技术顾问一、RLC(串联)电...

  • 6

    在本文中,我们将使用硬禾学堂的“基于iCE40UP5K的FPGA学习平台”开发板来实现一个Σ-Δ ADC采集,并制作一个简易的电压表。在了解相关内容与原理时,发现了许多学习过的知识,通信/电信人狂喜。 基于Lattice iCE40UP5K实现一个Σ-Δ ADC采集,采集后的电压将...

  • 8

    #579 – ADC Chip Design with Anthony Wall Podcast: Play in new window |

  • 8
    • www.cnblogs.com 2 years ago
    • Cache

    Pytorch实现波阻抗反演 - GeoFXR

    Pytorch实现波阻抗反演 地震波阻抗反演是在勘探与开发期间进行储层预测的一项关键技术。地震波阻抗反演可消除子波影响,仅留下反射系数,再通过反射系数计算出能表征地层物性变化的物理参数。常用的有道积分、广义线性反演、稀...

  • 3

    LAT1122 一个关于MCU反复重启的问题 v1.0.pdf LAT1122 一个关于MCU反复重启的问题 v1.0.pdf 某客户使用STM32U59,批量生产时发现有1%左右的机器存在反复...

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK