• AD7792/AD7793 备忘


    AD7792/AD7793 是一款 ∑-Δ ADC,3 通道、低噪声,内部集成仪表放大器和参考源。AD7792 为 16 位,AD7793为 24 位。

    • 供电电压:2.7 ~ 5.25 V,并不支持负电压。
    • 转换速率:4.17 Hz ~ 470 Hz
    • 内置参考基准:1.17 V
    • 内置运放增益:1 ~ 128
    • 内置温度传感器
    • 输出电流源:10 uA、210 uA 和 1000 uA
    • SPI 通讯接口,使用 最大通讯速率 5 MHz
    • 封装:TSSOP-16

    功能框图

    在这里插入图片描述

    模拟输入

    在设计原理图之前,必须确认输入信号的约束条件

    差分输入电压范围

    增益为1 ~ 128范围内,差分输入电压范围为:±VREF/Gain,单位是 V
    这个式子表明:选择的增益越大,差分输入电压范围越小。换句话说,内部 ∑-Δ ADC 的输入电压不能超过 VREF

    无缓冲模式

    ADC 内部有缓冲放大器(BUF),当增益为 1~2 时,可以选择旁路缓冲放大器。

    • 先说好处,绝对模拟输入电压限值范围最大,可以达到:(GND-30) mV ≤ VAIN ≤ (AVDD+30) mV;然后,它可以检测相对于 GND 的小的双极性信号(- 30mV)。
    • 然后是缺点,由于旁路掉了缓冲放大器,输入模拟电流变大;其次,ADC 的输入阻抗变低,所以被测信号的内阻和电容会导致增益误差,这取决于被测信号的内阻和电容的大小。如果想在 20 位分辨率下不引入增益误差,可被允许的被测信号链路的阻抗和电容如下图所示:
      在这里插入图片描述
      从图中可以看出,这对被测信号的要求相当高,因此,缓冲放大器需要尽可能开启。

    缓冲模式

    当 ADC 的内部缓冲放大器被激活后,其输入阻抗显著提升,可以视为高阻抗输入。因此,ADC 的输入能够接纳具有显著高内阻的被测信号。适合直接连接到外部电阻型传感器,比如应变计或者 RTD 测温。

    代价就是绝对模拟输入电压限值范围变小了,为:(GND + 100) mV ≤ VAIN ≤ (AVDD - 100) mV
    这是因为缓冲放大器的输入输出并不能达到轨到轨,当输入信号电压接近电源轨时,会有显著的失真。

    仪表放大器模式

    当增益 ≥4 时,ADC 自动启用内部 缓冲放大器和仪表放大器。使用这种模式时,允许测量非常小的输入信号,但也带来了新的问题,绝对模拟输入电压限值范围更小了,为:(GND + 300) mV ≤ VAIN ≤ (AVDD - 1.1) V
    同时,因为引入了仪表放大器,仪表放大器要求的共模电压条件同样也引入了:VCM ≥ 0.5V

    共模电压 VCM = (AIN(+) + AIN(-)) / 2

    输出噪声差

    对于ADC 器件,输出均方根噪声(RMS Noise)可以表征 ADC 的精度和性能。输出均方根噪声越小,表明 ADC 的输出信号中的噪声和干扰越低,因此 ADC 的转换结果更接近理想的模拟输入信号,即精度更高。

    理想的 ADC 是没有输出噪声的,当输入接地,无论转换多少次,得到的 输出码(output code) 总是 0 。但实际上, ADC 内部有热噪声,转换过程中还会有量化噪声,实际转换的输出码并不总是为 0,而是如下图所示:
    在这里插入图片描述
    这个图一般称为 噪声直方图,该图提供了有关直流噪声性能的重要图形信息。噪声直方图具有高斯分布特性,ADC 的数据手册中通常会给出输出 均方根噪声 数据,这里均方根噪声定义为噪声直方图中 1 个标准差范围内的噪声,如下图所示,红色部分为均方根噪声:
    在这里插入图片描述

    标准差是一种衡量数据分布散度的度量值,用于描述数据相对于平均值的波动程度。它以符号σ表示。
    具体来说,标准差的计算方法是求每个数据点与平均值的差的平方的平均数,然后取平方根。这个计算方法反映了数据相对于平均值的差异程度,即数据分布的离散程度。
    标准差越小,数据相对比较紧凑,波动程度越小;标准差越大,数据相对比较分散,波动程度越大。

    下面给出输入为 0V 差分电压、不同的增益和转换速率条件下,AD7792/AD7793 典型的输出均方根噪声(单位 uV)。

    使用外部参考源

    使用 2.5V 的外部参考源。

    在这里插入图片描述
    从图中可以看出:

    • 增益越大,均方根噪声越小,低增益(1~4)均方根较大,增益达到 64 时,均方根噪声趋于稳定。
    • 转换速率越高,均方根噪声越大。在使用时,尽可能的使用低转换速率

    使用内部参考源

    使用 1.17V 的内部参考源。

    在这里插入图片描述
    从图中可以看出:

    • 均方根噪声与增益和转换速率的关系同上(使用外部参考源)
    • 增益和转换速率相同的条件下,使用内部参考源的均方根噪声稍稍变大,特别是增益为 1 时,比如转换速率为 4.17Hz 时,使用内部参考源的均方根噪声比使用外部参考源高出 26.5% 。但在增益大于等于 4 时,区别就没有那么明显,比如增益为 4 时,同样转换速率为 4.17Hz,使用内部参考源的均方根噪声比使用外部参考源只高出 10.3%。

    有效分辨率和峰峰分辨率

    上节介绍了 输出噪声,知道噪声不可避免,给出了各种条件下的 均方根噪声 数据。

    峰峰噪声 (peak-to-peak noise)是另一种衡量输出噪声大小的方法,对很多应用来说,这种衡量方法更加有效,因为落在峰峰噪声范围内的有效模拟信号可能会被 ADC 的底噪所掩盖,导致输出码非常快速的抖动,称为 输出代码闪动(code flicker)。峰峰噪声是用均方根噪声计算而来的,即:
    峰峰噪声 = 6.6 ∗ 均方根噪声 峰峰噪声 = 6.6 * 均方根噪声 峰峰噪声=6.6均方根噪声
    这是因为噪声直方图具有高斯分布特性,高斯曲线的分布是从负无穷大到正无穷大。然而,99.99%的码字出现在 6.6 倍均方根噪声范围内。因此,峰峰值噪声为均方根噪声的 6.6 倍,等效于所有码字,如下图所示,蓝色部分为峰峰噪声:
    在这里插入图片描述
    额外的过采样将有助于降低峰峰噪声,但代价是采样时间更长。

    这与有效分辨率和峰峰分辨率有什么关系呢?

    • 有效分辨率 (effective resolution)是通过均方根噪声计算出的;
    • 峰峰分辨率 (peak-to-peak resolution)是通过峰峰噪声计算出来的。

    因此,评估ADC时,应当认识到有效分辨率与峰峰分辨率的计算方法不同,与有效分辨率相比,峰峰分辨率更加严苛,不存在输出代码闪动。

    有效分辨率和峰峰分辨率是如何计算的,这里给出过程。
    首先,信噪比为:
    S N R = 20 l o g ( n o i s e f u l l   s c a l e   i n p u t ) = 6.02 N + 1.76 SNR = 20log(\frac{noise}{full \, scale \, input}) = 6.02N + 1.76 SNR=20log(fullscaleinputnoise)=6.02N+1.76
    其中,N 为 ADC 的分辨率位数

    下面给出不同的增益和转换速率条件下,AD7792AD7793 的有效分辨率和峰峰分辨率(在括号内显示)。

    使用外部参考源

    在这里插入图片描述
    从图中可以看出:

    • 增益越大,有效分辨率和峰峰分辨率越差
    • 转换速率越高,有效分辨率和峰峰分辨率越差
    • 使用 16 位的 AD7792 时,增益和转换速率对分辨率的影响不明显
    • 使用 24 位的 AD7793 时,要注意增益和转换速率的选择,以便获取所需的分辨率。
    • 当使用 24 位的 AD7793 时,有效分辨率并不能达到 24 位,峰峰分辨率就更低了。

    使用内部参考源

    在这里插入图片描述

    单极/双极配置

    AD7792/AD7793 的模拟输入端可接受单极或双极的输入电压范围。然而,需要注意的是,双极输入范围的接纳并不意味着该部件可以承受相对于系统 GND 的负电压。在 AIN(+) 输入端上的信号,无论是单极还是双极,都是以 AIN(-) 输入端的电压为基准的。举个例子,假设 AIN(-) 的电压为 2.5 V,当 ADC 配置为单极模式且增益设为 1 时,AIN(+) 引脚上的输入电压范围就会是 2.5 V 至 5 V。如果 ADC 配置为双极模式,那么 AIN(+) 输入上的模拟输入范围则会变为 0 V 至 5 V。

    这种灵活性是通过编程配置寄存器中的 U/B 位来实现的,从而轻松选择在双极或单极模式下运行。

    数据输出编码

    单极配置

    当 ADC 配置为单极模式时,输出代码是直接二进制代码,零差分输入电压的输出代码为 0000…00、中间输入电压输出代码为 1000…00、满量程输入电压输出代码为 1111…11。模拟输入电压与输出代码满足:
    C o d e = 2 N ∗ A I N ∗ G A I N V R E F Code = \frac{2^{N} * AIN * GAIN}{V_{REF}} Code=VREF2NAINGAIN
    其中

    • N 为分辨率,对于 AD7792 ,N = 16, 对于AD7793,N = 24。
    • AIN 为模拟输入电压
    • GAIN 为仪表放大器增益

    双极配置

    当 ADC 配置为双极模式时,输出代码是偏移二进制代码,负满量程输入电压的输出代码为 0000…000,零差分输入电压的输出代码为 1000…000,正满量程输入电压的输出代码为 1111…111。模拟输入电压与输出代码满足:
    C o d e = 2 N − 1 ∗ ( A I N ∗ G A I N V R E F + 1 ) Code = 2^{N-1} *(\frac{AIN * GAIN}{V_{REF}} + 1) Code=2N1(VREFAINGAIN+1)
    其中

    • N 为分辨率,对于 AD7792 ,N = 16, 对于AD7793,N = 24。
    • AIN 为模拟输入电压
    • GAIN 为仪表放大器增益

    运行模式

    在这里插入图片描述

    连续转换模式

    默认模式。
    ADC 连续执行转换并将结果放入数据寄存器。转换完成后,RDY 引脚变低。
    需要注意的是:在上电、通道改变、切换到该转换模式、写配置寄存器、写 IO 寄存器之后的第一次转换,转换时间是设置转换时间的一倍!如果上电第一次得到的转换结果不正确,原因可能在这里。

    寄存器

    通讯寄存器

    与设备的所有通讯 必须 以写通讯寄存器开始。写入通讯寄存器的数据决定下一次操作是读操作还是写操作,以及此操作发生在哪个寄存器。当后续读写操作完成后,通讯接口自动返回默认状态(等待对通讯寄存的写入操作),以便进行下一次与设备通讯。

    如果在这个过程中出错,需要将 DIN 置高 至少 32 个串行时钟周期,以便将通讯接口返回默认状态。

    bit7:写使能位。必须写入 0,设备将忽略非零值,直到第一个 0 出现,然后接下来的 7 位数据也会被写入通讯寄存器。
    bit6:读写标志。0 表示下一个操作是 写操作,1 表示下一个操作是 读操作
    bit2:数据寄存器 连续读,1 有效。bit2 = 1 且选中数据寄存器,则可以连续读取数据寄存器。退出连续读取数据寄存器需要向通讯寄存器的 bit2 写入 0。
    连续读取模式时,ADC 会检测 DIN 脚信号,以便接收退出连续读取数据寄存器指令。但是通讯接口的复位条件是至少连续 32 个串行时钟周期内,DIN 为高电平,因此连续读模式期间,DIN 应保持为低电平






    读后有收获,资助博主养娃 - 千金难买知识,但可以买好多奶粉 (〃‘▽’〃)
    千金难买知识,但可以买好多奶粉

  • 相关阅读:
    【微信小程序】后台数据交互于WX文件使用
    Python初级教程-廖雪峰Python教程
    华为云云服务器评测|基于华为云云耀云服务器L实例开展性能评测,例如 MySQL、Clickhouse、Elasticsearch等等
    「Python实用秘技16」快速提取字体子集
    使用pr的8大技巧 优漫动游
    佐助题库1228答案
    sqlite sql 异常 near “with“: syntax error
    jQuery源码学习
    【FFMPEG】从视频文件中抽取aac数据写成文件
    数据中心蓄电池监控,这个技术太高级了!
  • 原文地址:https://blog.csdn.net/zhzht19861011/article/details/134218887