200 likes | 371 Views
第十一章 数模( D/A )转换与模数( A/D )转换. 习题: 11 - 4 , 11 - 8. 第一节 概 述. 一、实时控制系统的结构及组成. 第二节 D/A 转换. 一、数 / 模转换器的原理 ( 组成). 二、八位 D/A 转换器 DAC0832. 三、 12 位 D/A 转换器 DAC1210. 第三节 A/D 转换. 一、逐次逼近式模 / 数( A/D )转换器原理. 二、逐次逼近式 A/D 转换器基本组成. 三、典型模 / 数转换器 ADC0809. 控 制 对 象. 计 算 机. 多 路 开
E N D
第十一章 数模(D/A)转换与模数(A/D)转换 习题:11-4,11-8 第一节 概 述 一、实时控制系统的结构及组成 第二节 D/A转换 一、数/模转换器的原理(组成) 二、八位D/A转换器DAC0832 三、12位D/A转换器DAC1210 第三节 A/D转换 一、逐次逼近式模/数(A/D)转换器原理 二、逐次逼近式A/D转换器基本组成 三、典型模/数转换器ADC0809
控 制 对 象 计 算 机 多 路 开 关 MUX 采 样 保 持 器 S/H A/D 转 换 器 I/O 接 口 传感器 放大滤波 传感器 放大滤波 执 行 部 件 多 路 开 关 MUX D/A 转 换 器 I/O 接 口 包括A/D和D/A的实时控制系统 第一节 概 述 一、实时控制系统的结构及组成
2. 放大器:把传感器输出的信号(一般为mV或 V)放大到 A/D转换所需的量程范围。 1. 传感器:把控制对象的各种参数的物理量用传感器测量 出来,并转换成电信号。 3. 低通滤波器:抑制干扰,提高信躁比。 4. 多路开关:对传感器输出的多路信号进行切换,用一路装 置进行测量和控制。 5. 采样保持电路:对模拟信号进行采样并保持以保证A/D转 换的正确性。
d1 d2 。 d3 d4 VR =5V I2 I3 I4 I1 R 2R 4R 8R Rf = R/2 If S1 S2 S3 S4 - Vo Io Σ + 第二节 D/A转换 一、数/模转换器的原理(组成) 若d1d2d3d4=1000
R D3 D2 D1 D0 I _ V0 + I3 I2 I1 I0 2R 2R 2R 2R VR R R R 2R VR = (23D3+22D2+21D1+20D0) 24R I=I3D3+I2D2+I1D1+I0D0 T型电阻解码网络:
8 13 VREF DI7 8 位 输 入 寄 存 器 14 DI6 主要技术指标: 分辨率: 8位 转换时间: 1 S 满量程误差:±1LSB 参考电压: ±10V 单电源: +5V~+15V 12 15 8位 DAC 寄存器 DI5 8位 D/A 转换器 IOUT2 16 DI4 4 11 DI3 IOUT1 5 DI2 R1b 6 DI1 Rfb 7 9 DI0 19 ILE IE IE CS 3 AGND 1 2 20 Vcc WR1 18 10 17 DGND XFER WR2 DAC0832的内部结构图 二、8位D/A转换器DAC0832 1. 芯片介绍
i i R 0832 数 字 量 输 入 0832 数 字 量 输 入 VOUT - - R + + VOUT R1 R2 VOUT = - iR VOUT = iR(1+R2 / R1) VREF R1 0832 数 字 量 输 入 IOUT1 R4 R3 - R2 - IOUT2 + + VOUT 2. 芯片的输出电路 双极性输出
①直通方式:ILE接高电平; CS、WR1、WR2、XFER直接接地。D/A转换器的输出随着总线数据的变化而变化。 ②单缓冲方式: ILE接高电平; CS、WR1、WR2、XFER接控制输出端(连接方式有多种形式); 当对DAC0832进行写操作时(执行OUT指令选中端口),数字量被转换成模拟量。 D A C 0 8 3 2 Vcc +5V 地址 译码 WR2 WR1 CS XFER 地址 总线 WR IO/M IOUT1 - Vo A IOUT2 + AGND D7-D0 +5V ILE VREF DGND DAC0832与8位数据总线微机的连接图 3. DAC0832的三种工作方式
单缓冲方式的应用 例2 要求DAC输出一三角波,波形下限电压为0.5V,上限电压为2.5V。 例1 设DAC的口地址为80H,要求输出0~4.98V的周期性锯齿波 下限电压对应的数字量为: 0.5*256/5=26=1AH 上限电压对应的数字量为: 2.5*256/5=128=80H BEGIN: MOV AL,1AH UP : OUT 80H,AL INC AL CMP AL,81H JNZ UP DEC AL DOWN: OUT 80H,AL DEC AL CMP AL,19H JNZ DOWN JMP BEGIN START: MOV AL,0FFH AGAIN: INC AL OUT 80H,AL CALL DELAY JMP AGAIN 阶梯的宽度由延时时间决定
地址 总线 +5V Vcc 地址 译码 320H 321H IOUT1 - Vo A + IOUT2 AGND D7-D0 DAC0832 +5V ILE DGND VREF DAC0832与8位数据总线微机的连接图 WR1 WR2 CS XFER IOWR MOV DX,320H MOV AL,DATA OUT DX,AL INC DX OUT DX,AL ③双缓冲方式: 第一种应用情况:在前一个数据转换的同时,CPU将下一个数据先输入至输入寄存器,然后再在某个时刻启动D/A转换。
- DAC1 ILE WR1 VO1 + CS XFER WR2 CS1 译码器 CS2 AB CS3 - DAC2 XFER ILE WR1 + V O2 XFER WR2 - DAC3 ILE WR1 + V O3 CS XFER WR2 IO/M WR 第二种应用情况:在多路DAC系统中,需要同步D/A转换时,采用双缓冲方式。 在不同的时刻把要转换的数据分别打入各DAC的输入寄存器,然后由一个转换命令同时启动多个DAC转换。
10 15 VREF D11 8 位 输 入 寄 存 器 16 D10 14 主要技术指标: 分辨率: 12位 转换时间:1 S 满量程误差:±1LSB 参考电压范围: ±25V 单电源范围: +5V~+15V 17 12位 DAC 寄存器 D9 12位 D/A 转换器 IOUT2 18 D8 13 19 D7 IOUT1 20 D6 Rfb 4 D5 Rfb 5 11 D4 6 D3 4位 输入 寄存 器 7 3 AGND D2 CS 控制引脚CS、 B1/B2、WR1作为输入寄存器的输入控制; WR2 、XFER作为DAC寄存器的输入控制 8 D1 9 24 Vcc D0 23 B1/B2 LE LE 12 WR1 DGND 1 2 21 XFER 22 WR2 LE DAC1210的内部结构图 三、12位D/A转换器DAC1210 1. 芯片介绍
D7 D0 D11 D0 DAC 1210 控制DAC1210的转换共要用到3个I/O端口,CS引脚的口地址为220H-221H,其中220H选通8位输入寄存器,221H选通4位输入寄存器;XFER引脚的口地址为222H-223H,任一个地址都可启动D/A转换。若待转换的数字量在BX寄存器的低12位,则完成一次D/A转换的程序如下 i R RFB - IOUT1 IOW + WR1 WR2 IOUT2 VOUT A0 B1/B2 地址译码 AB CS XFER 2. DAC1210与8位CPU接口方式 START: MOV DX,220H MOV CL,4 SHL BX,CL MOV AL,BH OUT DX,AL INC DX MOV AL,BL OUT DX,AL INC DX OUT DX,AL
第三节 A/D 转换 一、逐次逼近式模/数(A/D)转换器原理 实现A/D转换的方法有多种,而逐次逼近式A/D转换具有速度快,分辨率高等优点获得了广泛的应用。这种A/D转换器的比较过程与天平的称重的过程相似。若一台天平具有32克、16克、 8克、 4克、 2克和1克等6种砝码,需要称量的物体重量为27.4克。称量从最重的砝码试起,过程如下表所示。 M=D5*32+D4*16+D3*8+D2*4+D1*2+D0*1=27(克)
Vi CLK + - 控制逻辑 SAR 输 出 数 据 缓冲器 DAC VR 逐次逼近式A/D转换器原理框图 二、逐次逼近式A/D转换器基本组成 控制逻辑(SAR):移位寄存器、数据寄存器、时序电路及去留码逻辑电路; DAC:产生电子砝码; 比较器:对输入电压与电子砝码进行比较,并由控制逻辑决定该砝码的去留。 设转换器的位数n=4,相应的电子砝码分别为2.5V、1.25V、0.625V、0.3125V。Vi=3V,则转换过程及结果如表所示。
START CLK EOC 控制与时序 8路 模拟 开关 IN7 三态 输出 锁存 缓冲 器 D7 SAR IN0 树状开关 D0 ADDA ADDB ADDC ALE 地址 锁存 与 译码 电阻网络 Vcc GND VREF+ VREF- OE ADC0809功能方框图 三、典型A/D转换器ADC0809 1. 芯片简介 主要技术指标 分辨率:8位 转换误差: ±1/2LSB~±1LSB 转换时间:100 µS 时钟频率: 640KHZ 测量路数:8路 输出:三态缓冲 单一5V供电,对应输入模拟电压范围0~5V
START ALE 通道地址 64CLK EOC OE DATA 2. ADC0809工作时序 ①选择当前转换的通道,即将通道编码送地址锁存器; ②通过执行OUT指令在START,ALE上产生一个正脉冲,锁存通道编码并启动A/D; ③A/D转换开始后,EOC变低,经过64个时钟周期后,转换结束,EOC变高; ④转换结束后,通过执行IN指令设法在OE脚上产生一个正脉冲,打开输出缓冲器的三态门读入转换数据。
OE Vcc +5V ADC0809具有三态输出缓冲器,可以与CPU直接连接。 若地址译码器的输出Y1的地址为84H~87H,则采用无条件传送方式从输入通道IN7读入一个模拟量的程序为: VREF+ ALE START 译码 VREF- GND ADDC ADDB ADDA D7~D0 EOC CLOCK A7~A0 D7~D0 IN7 IN0 ADC 0809 Nc 8分频 CLK IOR ADC0809直接与微处理器的连接 Y1 IOW 3. ADC0809与微处理器的连接 ⑴ 直接连接 MOV AL,07H OUT 84H,AL CALL DELAY120 IN AL,84H 若采用中断方式,可用ADC0809的EOC输出端作为CPU的中断申请信号,在中断服务程序中读入转换后的数据。
8分频 CLOCK +5V CLK D7~D0 Vcc VREF+ IOWR IORD D7 ~ D0 A0 A1 A7 ~ A2 8 2 5 5 A WR RD DB A0 A1 ALE START PB4 PB2 PB1 PB0 PA PC7 VREF- GND ADDC ADDB ADDA EOC OE 8088 总线 IN7 IN0 Y0 Y1 ADC 0809 译码 CS Y0地址为80H~83H Y1 地址为84H~87H ⑵ 通过并行接口芯片同CPU连接 问题:用一片8255A并行接口芯片控制ADC0809的转换过程; 分析:8255A有三个8位的并行口,可用PB口输出0809的通道选择编码和控制ADC的启动,PC口输入ADC的状态。 PA口作为他用, 实现:首先完成CPU与8255的连接,然后根据分析完成ADC与8255的连接 ADC 0809通过8255A的接口原理图
例:对ADC0809的IN0至IN7巡回进行采样一次,并将采样的数据存放在以DATA开始的内存单元中。例:对ADC0809的IN0至IN7巡回进行采样一次,并将采样的数据存放在以DATA开始的内存单元中。 MOV AL,98H ;8255方式0,PA口输入, OUT 83H,AL ;PB口输出,PC口高四位输入 MOV SI,OFFSET DATA ;置内存首址 MOV AX,0H ;开关初始编码 MOV CX,8 AGA:MOV AL,AH ;输出开关编码 OUT 81H,AL ADD AL,10H ;启动ADC OUT 81H,AL SUB AL,10H OUT 81H,AL 第一步:程序初始化 第二步:输出通道号 启动ADC LOP: IN AL,82H ;检查EOC TEST AL,80H JZ LOP ;EOC=0,继续查询 IN AL,84H ;EOC=1,读入数据 MOV [SI],AL ;存入内存 第三步:判ADC转换 结束否?结束则读入数据,存入内存。否则再判 INC SI ;修改指针 INC AH ;修改开关编码 LOOP AGA ;未完继续 第四步:修改循环变量 判测量完否?未完继续