微机原理与接口技术:8 - 数模D/A模数A/D的基本原理和典型芯片(DAC0832, ADC0809)

发布于:2025-02-10 ⋅ 阅读:(48) ⋅ 点赞:(0)

模拟量的输入输出

Goal:

  1. 了解 模拟量输入输出通道及其各主要部件的功能
  2. 理解 D/A converter的基本工作原理及DAC0832芯片的应用
  3. 了解 A/D converter的基本工作原理
  4. 掌握 ADC0809芯片与系统的连接方法及数据采集程序的设计

8.1 模拟量的输入输出通道

请添加图片描述
请添加图片描述

模拟量的输入通道

  1. 传感器(Sensor) - 将现场的某些非电物理量转换为电信号量

  2. 变送器 - 将传感器的输出信号转换成统一单位/范围的电信号

  3. 信号处理环节

  4. 多路模拟开关 - 就是个 multiplexer

  5. 采样保持电路(sample holder) - input模拟信号连续变化, A/D转换需要时间, 要保证在转换过程中输入信号保持在其采样时的值不变.

  6. A/D 转换器

模拟量的输出通道

同样在D/A转换的过程中要求整个转换过程中带转换的数字量不变, 要用锁存器锁存DB来的数字信号.

8.2 D/A 转换器

DAC的抽象结构:

请添加图片描述

首先 callback 一下运放的一些性质:

请添加图片描述

对于运放来说, 输入电压 V o V_o Vo 与输入电压 V i V_i Vi 之间的关系:

V o = − R f R i V i V_o = - \frac{R_f}{R_i}V_i Vo=RiRfVi

若输入端有n个支路, 构成多路输入,如图所示, 其输出电压变成:

请添加图片描述

V o = − R f ∑ j = 1 n 1 R j V i V_o = - R_f \sum_{j=1}^{n} \frac{1}{R_j} V_i Vo=Rfj=1nRj1Vi

工业中直接制造高阻值的精密电阻比较困难, 一般用 R-2RT型电阻网络 来代替 权电阻网络, 如图所示:

请添加图片描述

输入电压 V o V_o Vo 为:

V o = − D 2 j × R f R × V r e f V_o = \frac{-D}{2^j} \times \frac{R_f}{R} \times V_{ref} Vo=2jD×RRf×Vref

DAC的主要技术指标

  1. 分辨率 Resolution : 一个 n 位的DAC, 分辨率为:
    1 / ( 2 n − 1 ) 1/(2^n-1) 1/(2n1)

  2. 转换精度 Conversion accuracy : maximum deviation of the actual output value and the theoretical value.

  3. 转换时间 Conversion time :

DAC 工作方式

  1. 单缓冲工作方式 : 单缓冲工作方式是使输入寄存器或DAC寄存器中的任意一个工作在直通状态, 而另一个工作在受控锁存状态.

  2. 双缓冲工作方式 : 数据接收和启动转换可以异步进行, 可以在D/A转换的同时接收下一个数据, 提高了模/数转换的速度.

8.3 A/D 转换器

ADC 其实与DAC相关性很大, 一个ADC芯片的核心往往就是一个DAC, 一个ADC的工作方式有点类似逆向DAC的一个作用来从模拟量转换成数字量.

working principal

请添加图片描述

逐位反馈型 ADC 的工作原理类似于用天平称重. 在转换开始前, 复位SAR, 然后设其最高位为1(e.g. [10000000B]) 就像天平称重时先放上最重的砝码一样

然后经D/A转换输出相应的模拟量 V c V_c Vc , 与模拟输入电压 V i V_i Vi 相比较, 若 V i > V C V_i > V_C Vi>VC -> 保留该位1. 继续进行下一位的比较, 直到SAR的所有位都被确认.

e.g. 以一个12位 ADC 为例:

请添加图片描述
请添加图片描述

这样, 4.5V模拟量就转换成了数字量 111001100101B

ADC 的主要技术指标

  1. 精度 Accuracy

    1. 量化误差

    如图所示一个3位的A/D转换器的转换特性:

    请添加图片描述

    当模拟量的值在0~0.5V范围内 -> 数字量输出为000B; 而在0.5~1.5V范围内 -> 数字量输出为001B

    这样在给定数字量情况下, 实际模拟量与理论模拟量之差最大为 ±0.5V

    这种误差是由转换特性造成的, 是一种原理性误差, 也是无法消除的误差. 从图中可以发现,数字量的每个变化间隔为1V,就是说模拟量在1V内的变化,不会使数字量发生变化.

    这个间隔称为量化间隔(也称为当量),用 Δ \Delta Δ 表示, 在数学上的定义为

    Δ = 输入满度电压值 A / D 转换器的最大数字量输出 = V m a x 2 n − 1 \begin{aligned} \Delta & = \frac{输入满度电压值}{A/D转换器的最大数字量输出} \\ & = \frac{V_{max}}{2^n - 1} \end{aligned} Δ=A/D转换器的最大数字量输出输入满度电压值=2n1Vmax

    量化误差就等于一般的量化间隔 Δ \Delta Δ.

    量化误差 = . 5 × 量化间隔 量化误差 = .5 \times量化间隔 量化误差=.5×量化间隔

    E.g. 对于一个 12位 ADC, 它的量化间隔 Δ \Delta Δ 为:

    Δ = 5 V 4095 = 1.22 m V \Delta = \frac{5V}{4095} = 1.22 mV Δ=40955V=1.22mV

    一个 ADC 的量化间隔 由该 ADC 的位数决定.

  2. 转换时间 Conversion time : 指完成一次转换所需要的时间.

  3. 输入动态范围 Input dynamic range : 量程, 就是能转换的模拟电压的范围.

典型 A/D 转换器芯片 ADC0809

1 - ADC0809 的引线及内部结构

请添加图片描述

  1. D 0   ˜ D 7 D_0 \~~ D_7 D0 ˜D7 : output data wire(tri-state)
  2. I N 0   ˜ I N 7 IN_0 \~~ IN_7 IN0 ˜IN7 : 8 channel analog input.
  3. A D D A , A D D B , A D D C ADDA, ADDB, ADDC ADDA,ADDB,ADDC : 通道地址选择, 用于选择8路中的一路输入.
  4. S T A R T START START : start convension, falling-edge trigger
  5. E O C EOC EOC : Convension end flag signal, can be used for query or interrupt.
  6. A L E ALE ALE : channel addr latch, used to latch ADDX 端的地址输入, 上升沿有效
  7. O E OE OE : output enable,
  8. C L K CLK CLK : (10KHz ~ 1.2MHz)

ADC0809内部结构框图:
请添加图片描述

2 - ADC与系统的连接

请添加图片描述
请添加图片描述


网站公告

今日签到

点亮在社区的每一天
去签到