1 / 38

第 12 章 模数( A/D )和数模 (D/A) 转换

第 12 章 模数( A/D )和数模 (D/A) 转换. 12.1 概述 12.2 D/A 转换器 12.3 A/D 转换器 . 12.1 概 述. 控 制 对 象. 计 算 机. 多 路 开 关 MUX. 采 样 保 持 器 S/H. A/D 转 换 器. I/O 接 口. 传感器. 放大滤波. 传感器. 放大滤波. 执 行 部 件. 多 路 开 关 MUX. D/A 转 换 器. I/O 接 口. 包括 A/D 和 D/A 的实时控制系统.

jemma
Download Presentation

第 12 章 模数( A/D )和数模 (D/A) 转换

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第12章 模数(A/D)和数模(D/A)转换 12.1 概述 12.2 D/A转换器 12.3 A/D转换器

  2. 12.1 概 述 控 制 对 象 计 算 机 多 路 开 关 MUX 采 样 保 持 器 S/H A/D 转 换 器 I/O 接 口 传感器 放大滤波 传感器 放大滤波 执 行 部 件 多 路 开 关 MUX D/A 转 换 器 I/O 接 口 包括A/D和D/A的实时控制系统 一、实时过程控制控制系统的结构及组成

  3. 2. 放大器:把传感器输出的信号(一般为mV或 V)放大到 A/D转换所需的量程范围。 1. 传感器:把控制对象的各种参数的物理量用传感器测量       出来,并转换成电信号。 3. 低通滤波器:抑制干扰,提高信噪比。 4. 多路开关:对传感器输出的多路信号进行切换,用一路装置进行测量和控制。 例: 8选1双向多路开关CD4051,教材:P404 ADC0809芯片带有多路转换开关。 5. 采样保持电路:对模拟信号进行采样并保持以保证A/D转 换的正确性。 教材: P409,快变输入信号需要使用采样保持器。

  4. 二、采样、量化和编码 处理后得到的几伏量级的模拟信号必须经过采样、量化和编码的过程才能成为数字量。 1、采样和量化 采样:按相等的时间间隔t从电压信号上截取一个个离散的电压瞬时值,即时间上的离散化。 量化:将采样的实际值按幅度大小分层的过程。量化单位越小,一定范围内的电压值被分的层就越多,精度就越高。 例:8位A/D转换器,分层数=28=256,设:电压量程:0~5V 量化单位: q=电压量程范围/ 2n=5v/2560.019v=19mv LSB=1时对应的电压值 n可表示A/D转换分辨率

  5. 2、编码 编码就是考虑用一种代码将量化得到的数字量表示出来。 编码形式:二进制码、BCD码、ASCII码等。 例:自然二进制码 设满量程为1,输入模拟量与满量程相比总小于1,故用二进制小数形式表示数字量。 小数: N=d12-1+ d22-2 +…+dn2-n 教材: P407 表12-1 MSB,权最大 LSB,量化单位

  6. d1 d2 。 d3 d4 VR =5V I2 I3 I4 I1 R 2R 4R 8R Rf = R/2 If S1 S2 S3 S4 - Vo Io Σ + 12.2 D/A转换器 一、数/模转换器的原理(组成) 权电阻网络DAC 虚地点 若d1d2d3d4=1000,Rf=R/2

  7. 数模转换器主要性能指标 1、输入数字量 大多为TTL电平,接受自然二进制编码。 2、输出模拟量 多数是电流输出型,例:DAC0832为差动电流输出(IOUT1+IOUT2=常数),输出要设计I/V转换电路。 3、分辨率 指输入数据发生1LSB变化时所对应的输出模拟量的变化。与数字量位数n的关系:分辨率=满度值/2n * 分辨率可用位数n表示。 4、转换时间 指从数字量输入到建立稳定的输出电流的时间。有ns和us级的转换器。

  8. 8 13 VREF DI7 8 位 输 入 寄 存 器 14 DI6 12 15 8位 DAC 寄存器 DI5 8位 D/A 转换器 IOUT2 16 DI4 4 11 DI3 IOUT1 5 DI2 R1b 6 DI1 R1b 7 9 DI0 19 ILE IE IE CS 3 AGND 1 2 20 Vcc WR1 18 10 17 DGND XFER WR2 DAC0832的内部结构图 二、八位D/A转换器DAC0832 1. 芯片介绍 主要技术指标: TTL电平输入 分辨率: 8位 转换时间: 1 S 满量程误差:±1LSB 参考电压: ±10V 单电源: +5V~+15V

  9. V +5 V 数 字 量 输 入 R REF DAC R DB FB 0830 V I - O 0831 OUT2 I + 0832 OUT1 A GND 2. 芯片的输出电路 单极性输出方式

  10. ①直通方式:ILE接高电平;CS、WR1、WR2、XFER直接接地。D/A转换器的输出随着总线数据的变化而变化。 ①直通方式:ILE接高电平;CS、WR1、WR2、XFER直接接地。D/A转换器的输出随着总线数据的变化而变化。 ②单缓冲方式: ILE接高电平; CS、WR1、WR2、XFER接控制输出端(连接方式有多种形式); 当对DAC0832进行写操作时(执行OUT指令),数字量直接被转换成模拟量。 WR M/IO 3. DAC0832与CPU接口方式 D A C 0 8 3 2 Vcc +5V 地址 译码 WR2 WR1 CS XFER 地址 总线 IOUT1 - A IOUT2 + Vo AGND D7-D0 +5V ILE VREF DGND DAC0832与8位数据总线微机的连接图

  11. 例2 要求DAC输出一三角波,波形下限电压为0.5V,上限电压为2.5V。 单缓冲方式的应用 例1 设DAC的口地址为80H, 要求输出0~5V的锯齿波 下限电压对应的数字量为: 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 阶梯的宽度由延时时间决定

  12. +5V Vcc 地址 译码 320H 321H IOUT1 - A + IOUT2 AGND D7-D0 DAC0832 ILE DGND VREF +5V DAC0832与8位数据总线微机的连接图 WR1 WR2 CS XFER IOWR MOV DX,320H MOV AL,DATA OUT DX,AL INC DX OUT DX,AL 地址 总线 Vo ③双缓冲方式: 第一种应用情况:在前一个数据转换的同时,CPU将下一个数据先输入至输入寄存器,然后再在某个时刻启动D/A转换。

  13. - DAC1 ILE WR1 VO1 + CS XFER WR2 CS1 译码器 CS2 AB CS3 - DAC2 XFER ILE WR1 + V cs O2 XFER WR2 - DAC3 ILE WR1 + V O3 CS XFER WR2 IO/M WR 第二种应用情况:在多路DAC系统中,需要同步D/A转换时,采用双缓冲方式。 在不同的时刻将要转换的数据分别打入各DAC的输入寄存器,然后由一个转换命令同时启动,各个DAC转换。

  14. 12.3 模拟/数字(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(克)

  15. Vi CLK + - 控制逻辑 SAR 输 出 数 据 缓冲器 DAC VR 逐次逼近式A/D转换器原理框图 二、逐次逼近式A/D转换器基本组成 控制逻辑(SAR):移位寄存器、数据寄存器、时序电路及去留码逻辑电路; DAC:产生电子砝码; 比较器:对输入电压与电子砝码进行比较,并由控制逻辑决定该砝码的去留。 设转换器的位数n=4,相应的电子砝码分别为2.5V、1.25V、0.625V、0.3125V。Vi=3V,则转换过程及结果如表所示。

  16. 逐次逼近式A/D转换所需的时间: 一个8位转换器完成一次转换大致需要88=64个时钟周期 例:ADC0809是8位逐次逼近式A/D转换器,典型工作时钟频率为640kHz.完成一次转换的时间大约为: tc=64 (1/640 103秒)=100us 若为多通道采集,如8通道,转换时间则是单通道的8倍。

  17. START CLK EOC 控制与时序 8路 模拟 开关 IN7 三态 输出 锁存 缓冲 器 D7 SAR IN0 树状开关 D0 ADDA ADDB ADDC ALE 地址 锁存 与 译码 电阻网络 Vcc GND VREF+ VREF- OE ADC0809功能方框图 三、典型模/数转换器ADC0809 1. 芯片简介 主要功能 分辨率:8位 转换误差: ±1/2LSB~±1LSB 转换时间:100 µS 时钟频率: 640KHZ 测量路数:8路 输出:三态缓冲 单一5V供电,对应输入模拟电压范围0~5V

  18. START ALE 通道地址 64CLK EOC OE DATA 2. ADC0809工作时序 ①选择当前转换的通道,即将通道编码送地址锁存器; ②通过执行OUT指令在START,ALE上产生一个正脉冲,锁存通道编码并启动A/D; ③A/D转换开始后,EOC变低,经过64个时钟周期后,转换结束,EOC变高; ④转换结束后,通过执行IN指令设法在OE脚上产生一个正脉冲,打开输出缓冲器的三态门读入转换数据。

  19. 3. ADC0809与微处理器的连接 OE Vcc +5V ADC0809具有三态输出缓冲器,可以与CPU直接连接。 若地址译码器的输出Y1的地址为84H~87H,则采用无条件传送方式从输入通道IN7读入一个模拟量的程序为: VREF+ ALE START 译码 VREF- GND ADDC ADDB ADDA D7~D0 EOC CLOCK A7~A2 D7~D0 IN7 IN0 ADC 0809 Nc 8分频 CLK IOR ADC0809直接与微处理器的连接 Y1 IOW ⑴ 直接连接 MOV AL,07H OUT 84H,AL CALL DELAY120 IN AL,84H 若采用中断方式,可用ADC0809的EOC输出端作为CPU的中断申请信号,在中断服务程序中读入转换后的数据。

  20. 8分频 CLOCK +5V CLK D7~D0 Vcc VREF+ 8 2 5 5 A IOWR IORD D7 ~ D0 A0 A1 A7 ~ A2 ALE START WR RD DB A0 A1 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的接口原理图

  21. MOV AL,98H ;8255方式0,PA口输入, OUT 83H,AL ;PB口输出,PC口高四位输入 MOV SI,OFFSET DATA ;置内存首址 MOV AX,0H ;开关初始编码 MOV CX,8 例:对ADC0809的IN0至IN7巡回进行采样一次,并将采样的数据存放在以DATA开始的内存单元中。 AGA:MOV AL,AH ;输出通道编码 OUT 81H,AL ADD AL,10H ;启动ADC OUT 81H,AL SUB AL,10H OUT 81H,AL CALL DELAY ; 延时 第一步:程序初始化 8255控制字:10011000B 第二步:输出通道号 启动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 ;未完继续 第四步:修改循环变量 判测量完否?未完继续

  22. 四、 12位A/D转换器ADC574 • ADC574是12位逐次逼近式A/D转换器,转换时间为25us,28引脚。 ADC 574

  23. 28 +5V 1 STS 27 12/8 2 DB11 26 3 CS DB10 25 A0 4 DB9 24 R/C 5 DB8 DB7 23 CE 6 +15V 22 7 DB6 21 REFOUT 8 DB5 20 AGND 9 DB4 ADC 19 REFIN 10 DB3 -15V 11 DB2 574A 18 BIP 12 DB1 17 10VIN 13 DB0 16 20VIN 14 15 DGND 1、ADC574引脚功能 • 分辨率为12位。 • 模拟量输入方式:2种:单极性、双极性 • 模拟输入范围:单极性为0~5V或0~10V ;双极性为-5V~5V或10V -10V ~10V 。 • +5V、 +15V、 -15V供电。 • 具有锁存三态输出,输出与TTL兼容。 • 片内有电压基准和时钟电路。 • 必须进行零点和满度调整。

  24. CS(-)、CE(+): CS(-)片选信号Chip Select,低电平有效;CE(+)片使能信号Chip Enable,高电平有效。 • R/C(-):读/启动AD转换信号。高电平时读AD转换结果;低电平时启动AD转换。 • 12/8(-):输出数据长度控制。高电平时输出12位,低时输出8位。 • A0:当R/C为低时, A0若为高,启动8位AD转换; A0若为低,启动12 位AD转换。当R/C为高时, A0若为高,输出低4位数据; A0若为低,输出高8位数据。 • STS:STS为转换结束信号脉冲输出端口,低表示转换结束,高表示正在转换。 • REF IN:基准输入线;REF OUT:基准输出线;BIP OFF:单极性补偿。 • DB0~DB11:12位数字量输出端口。 • 10Vin,20Vin:模拟量输入端口。

  25. 表11.5 AD574的控制状态表: AD574的8位输出数据格式

  26. 图11.22 ADC574A单极性和双极性输入接法

  27. 单极性模拟输入方式接线的调整 • 单极性模入方式(图2-9)中, 10VIN输入电压范围为0V~+10V, 1LSB对应的模拟电压为2.44mV;2 0VIN输入电压范围为0V~20V,1LSB对应的模拟电压为4.88mV。R1用于零点调整,R2用于满刻度校准。方法为: • 如输入电压接10VIN端,调整R1,使输入模拟电压为1.22mV(即 1/2LSB)时,输出数字量从0000 0000 0000变到0000 0000 0001; • 调整R2,使得输入电压为9.9963V时,数字量从1111 1111 1110变到1111 1111 1111。

  28. 双极性模拟输入方式的调整 • 对于双极性模入方式,把REF IN, REF OUT,和 BIP OFF三个引脚的接线按图2-10重新安排,双极性模入方式零点与满刻度校准方法与单极性方式近似。需要注意的是,输入模拟量与输出数字量之间的对应关系为: • 10VIN端输入时:- 5V→0V→十5V 对应 000H→800H→FFFH • 20VIN端输入时:一10V→0V→十10V 对应 000H →800H→FFFH

  29. 图 AD574双极性模拟输入接线方式

  30. 图11.23 AD574A启动转换和读数据时序

  31. ADC574A D7~D0 DB11~DB4 Vcc -15V D3~D0 DB3~DB0 Vee +15V PC总线 STS 10Vin Vin 译 码 器 AEN 20Vin CS A9~A0 REFin REFout A0 IOW R/C BIPOFF DC CE IOR AC 12/8 图 AD574与PC系统总线相连 ADC574 与 PC系统总线连接 电路中译码器对A9~A1进行译码,Y0=210H、Y1=212H~213H,因此,ADC574A的CS=211H~213H分另用于高位和低位数据的读取

  32. A/D574转换器接口电路设计 -----查询方式 一、12位A/D转换器接口设计 1、要求 进行12位转换,转换结果分两次输出,以左对齐方式存放在首址为400H的内存区。共采集64个数据。ADC与CPU之间采用查询方式交换数据,采用AD574A作为A/D转换器。 2、分析 AD574A是具有三态输出锁存器的A/D转换器,它可以作12位转换,也可作8位转换。 3、设计 (1)硬件连接

  33. D0~D7 Vcc +15V DB4~11 D7 Vee -15V PC DB0~3 10VIN 扩展槽 74LS125 STS 20VIN Y0 译 码 & AD574A AEN Y1 CS- REFIN AO~9 Y2 REFOUT A0 A0 IOW R/C BIPOFF & CE DG IOR AG 12/8 图 AD574与CPU连接原理图

  34. AD574内部有三态输出锁存器,故数据输出线可直接与系统数据线相连,将AD574A的12条输出数据线的高8位接到系统总线的D0~D7,而把低4位接到数据总线的高4位,低4位补0,以实现左对齐。AD574内部有三态输出锁存器,故数据输出线可直接与系统数据线相连,将AD574A的12条输出数据线的高8位接到系统总线的D0~D7,而把低4位接到数据总线的高4位,低4位补0,以实现左对齐。 • 转换结束状态信号STS,通过三态门74LS125接到数据线D7上。要求分两次传送,故将12/8接数字地。CE接VCC,允许工作。 • 图中I/O端口地址译码有三个端口地址: Y0=310,为状态口;Y1=311H,为数据口(低4位); Y2=312上,为转换启动控制口/数据口(高8位)。 • 例如:转换启动端口设置为312H,其中包含A0=0,以实现12 位转换。读数据端口设置了两个,一个是312H,包含A0=0,读 高字节;一个是311H,包含A0=1,读低字节。

  35. (2)软件编程 根据题目的要求和信号的时序关系,其数据采集的程序段如下: MOV CX,40H ;采集次数 MOV SI,400H ;存放数据内存首址 START:MOV DX,312H ;12位转换(A0=0) MOV AL,0H ;写入的数据可以取任意值 OUT DX,AL ;转换启动(CS,及R/C均置0, CE置1) MOV DX,310H ;读状态,Y0=0,打开三态门 L: IN AL,DX AND AL,80H ;检查D7=STS=0? JNZ L ;不为0,转换已结束,则等待 MOV DX,311H ;为0,转换已结束,先读低4位 (A0=1)

  36. IN AL, DX AND AL, 0F0H ;屏蔽低4位 MOV [SI] ,AL ;送内存 INC SI ;内存地址加1 MOV DX, 312H ;再读高8位(A0=0) IN AL, DX MOV [SI],AL ;送内存 INC SI ;内存地址+1 DEC CX ;采集次数减1 JNZ START ;未完,继续 MOV AX,4C00H ;已完,程序退出 INT 21H

  37. 表2.2 AD574系列产品主要性能比较 C: Commercial I: Industry M: Military

  38. 作业 P408 3、4、5

More Related