9.数模和模数转换(DAC0832)

数模转换

一、基本工作原理

要求:

**输出模拟电压uo输入数字量Dn**之间成正比关系

uo = DnUref

方法:

将输入的每一位二进制代码按其权值大小转换成相应的模拟量,将代表各位的模拟量相加。即输出电压uo等于代码为1的各位所对应的各部分模拟电压之和

image-20220523112813214

组成:

D/A转换器一般由数码缓冲寄存器、模拟电子开关、参考电压、解码网络和求和电路组成。

  • 数字量输入存储在数码缓冲寄存器
  • 寄存器输出的每位数码驱动对应数位上的模拟电子开关
  • 将在解码网络中获得的相应数位权值送入求和电路
  • 求和电路将各位权值相加,得到与数字量对应的模拟量
image-20220508102719297

二、主要电路形式

1.权网络D/A转换器

image-20220508103708639
  • 权电阻的排列顺序和权值的排列相反
  • u= -UREFD/ 2n ∈0 ~ -(2n-1)UREF / 2n
特点:
  1. 优点:结构简单,电阻元件数较少
  2. 缺点:阻值相差较大,制造 工艺复杂

2.倒T型电阻网络D/A转换器

  • image-20220508105809987
  • 各节点向上看与向右看的等效电阻都是2R,整个网络的等效输入电阻为R
  • uo = -UREFDn / 2n
特点:
  1. 优点:电阻种类少,只有R与2R,提搞了制造精度
  2. 应用:转换速度较高,使用较多

三、D/A转换器的主要技术指标

1.分辨率

用于表征D/A转换器对输入微小量变化的敏感程度

  • 分辨率 = ∆U / Um = 1/(2n - 1)

2.转换精度

输出模拟电压的实际值与理想值之差,即最大静态转换误差

3.转换速度

输入的数字量发生突变开始,到输出电压进入与稳定值相差±0.5LSB范围内的时间,称为建立时间tset

4.温度系数

输入不变,输出模拟电压随温度变化产生的变化量。一般用鳗科杜输出条件下温度每升高1℃,输出电压变化的百分比作为温度系数

四、8位集成DAC0832

1.结构

由一个8位输入寄存器、一个8位DAC寄存器、一个8位D/A转换器大部分组成,采用倒T型R-2R电阻网络

image-20220508152705488

2.工作方式

工作过程

  1. ILE、/CS、/WR1同时有效,输入数据DI7 ~ DI0进入输入寄存器,在/WR1上升沿锁存**
  2. /XFER、/WR1同时有效,输入寄存器的数据进入DAC寄存器,在/WR2上升沿锁存
  3. 8位D/A转换器随时将DAC寄存器的数据转换为模拟信号(IOUT1 + IOUT2)输出

工作方式(/WR1与/WR2是否接地)

  • 双缓冲方式:输出同时可以采集下一个数据,提高了转换速度;在多个转换器同时工作时,实现多通道D/A的同步转换输出
  • 单缓冲方式:不要求多片D/A同时输出时。只需一次写操作,就开始转换,提高了D/A的数据吞吐量
  • 直通方式:输出随输入的变化随时转换

输出电压

  • 单极性输出电路 VOUT = - (D * VREF ) / 256
  • 双极性输出电路VOUT = (D -128)* VREF / 128

3.应用

例2:要求DAC输出一三角波,波形下限电压为0.5V,上限电压为2.5V。
  • 下限电压 = 0.5 * 256 / 5 = 26 = 1AH
  • 上限电压 = 2.5 * 256 / 5 = 128 = 80H
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
MOV AL,1AH
UP: OUT 80H,AL
INC AL
CMP AL,81H
JNZ UP
DEC AL
DEC AL

DOWN: OUT 80H,AL
DEC AL
CMP AL,19H
JNZ DOWN
INC AL
INC AL
JMP UP
例4:用8255A控制DAC0832进行、D/A转换,控制8253产生方波

(1)试根据图所示的连线,给出8255A和8253的端口地址,并为8253选择合适的工作方式,确定计数初值。

(2)编程要求:设8255工作在方式0,需转换的数字量在BL中存放,试编写程序段,使得DAC0832产生模拟量输出,8253产生所要求的方波。image-20220508163807995

分析:

  • 8255A地址:10 0001 1000 ~ 10 0001 1011 :218H~21BH
  • 8253 地址:10 0011 1000 ~ 10 0011 1000:238H~23BH
  • 8253工作于方式3,0.03 * 200k = 6000
  • 8253 工作方式字 10110110
  • 8255 控制字 10000000
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
MOV DX,21BH
MOV AL,80H
OUT DX,AL

MOV DX,218H
MOV AL,BL
OUT DX,AL

MOV DX,21BH
MOV AL,00001011B
OUT DX,AL
DEC AL
OUT DX,AL

MOV DX,23BH
MOV AL,10110111B
OUT DX,AL
MOV AX,6000H
OUT DX,AL
MOV AL,AH
OUT DX,AL

MOV DX,219H
MOV AL,00010000B
OUT DX,AL

模数转换

一、基本工作原理

将模拟信号转换为数字信号,转换过程通过取样保持量化编码四个步骤完成

  • 取样:将时间上连续变化的信号,转换为时间上离散的信号,即一系列间隔的脉冲—样值脉冲,脉冲的幅度取决于输入模拟量
  • 保持:暂时保持取得的样值脉冲幅度,以便进行转换,需要保持电路
  • 量化:模拟电压经取样保持后为阶梯波,仍然连续。对阶梯波进行四舍五入(归平)到与之接近的离散电平
    • 只舍不入: εmax = Δ
    • 有舍有入:| εmax | = Δ / 2
  • 编码:用二进制数码表示各个量化电平

二、A/D转换器的主要电路形式

A/D转换器有直接转换法间接转换法两类

直接法将一套基准电压与取样保持电压进行比较直接将模拟量转换成数字量。特点是工作速度高,转换精度容易保证,调准也比较方便。有计数型、逐次比较型、并行比较型

间接法将模拟信号先转换成中间变量t频率f,再将tf转换成数字量。特点是工作速度低,但转换精度可以做得较高,且抗干扰性强。间接A/D转换器有单次积分型、双积分型等。

1.并行比较型A/D转换器

  • 依据有舍有入划分为7个电平

  • 量化单位:Δ=(2/15)UREF

  • | εmax | = (1/15)UREF

  • 0~1/15、1/15~3/15

特点:

  • 优点:转换速度很快,故又称高速A/D转换器。含有寄存器的A/D转换器兼有取样保持功能,所以它可以不用附加取样保持电路
  • 缺点:电路复杂,对于一个n位二进制输出的并行比较型A/D转换器,需2n-1个电压比较器和2n-1个触发器。且转换精度还受分压网络和电压比较器灵敏度的限制。
  • 适用于高速,精度较低的场所

2.逐次逼近式模/数(A/D)转换器

原理:

  1. 将逐次逼近寄存器SAR清“0”
  2. 最高位置1,经D/A转换器转换成uo,比较uiuo- Δ/2,若ui较大,则保留该位,否则该位清0
  3. 将次高位置1

时间:

  • 一个8位转换器完成一次转换需要64个时钟周期
  • 若为多通道采集,如8通道,转换时间为单通道的8倍

三、A/D转换器的主要技术指标

1.分辨率

A/D转换器对输入模拟信号的分辨能力,最小差异为 FSR / 2n(满量程输入的1 / 2n

2.转换时间

速度:

  • 并行比较>逐次逼近>双积分型

3.转换误差

它表示A/D转换器实际输出的数字量和理论上输出的数字量之间的差别。常用最低有效位的倍数表示。

四、8位集成ADC0809

1.工作原理

  1. ALE脉冲下降沿地址锁存,经译码选通某一通道后进入比较器
  2. 发出A/D转换启动信号START,START的上升沿将SAR清0,转换结束标志EOC变为低电平START下降沿开始转换
  3. 转换过程再时钟脉冲CLK的控制下进行
  4. 转换结束后,EOC跳为高电平。在OE输入高电平,从而输出转换结果

2.性能指标

  1. 输出值D与模拟量输入值VIN 的关系

    D = (VIN - VREF(-) ) / ( VREF(+) - VREF(-) ) * 256,通常 VREF(-) = 0V

3.应用

image-20220509094426197

  • 芯片 a8 A7 A6 A5 A4 A3 A2 A1 A0
    8255A 1 1 1 0 0 0 0 X X
    0809 1 1 1 0 0 1 X X X
  • PA输出,PB输入,状态字 10010010B/92H

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
MOV AL,92H
MOV DX,1C3H
OUT DX,AL

MOV SI,2000H
MOV BL,8H
MOV DX,1C8H //xuan

LOP1:
MOV CX,24

LOP2:
IN AL,DX
PUSH DX
MOV DX,1C1H

LOP3:
IN AL,DX
TEST AL,00000001B
JZ LOP3

MOV DX,1C0H
IN AL,DX
MOV [SI],AL
INC SI
POP DX
LOOP LOP2

INC DX
DEC BL
JNZ LOP1
HLT