840 likes | 1.01k Views
接口技术. 第十章 A/D 与 D/A 接口. 10.1 概述 10.2 D/A 转换器接口方法 10.3A/D 转换器接口基本原理与方法 10.4 查询方式的 A/D 转换器接口电路设计 10.5 中断方式的 A/D 转换器接口设计. 10.1 概述. 多 路 开 关 MUX. 采样保持器. A/D 转换器. 放大滤波. 传感器. I/O 接口. 控制对象. 传感器. 放大滤波. 计算机. 多 路 开 关 MUX. 执行部件. D/A 转换器. I/O 接口.
E N D
第十章 A/D与D/A接口 • 10.1 概述 • 10.2 D/A转换器接口方法 • 10.3A/D转换器接口基本原理与方法 • 10.4 查询方式的 A/D转换器接口电路设计 • 10.5 中断方式的A/D转换器接口设计
10.1 概述 多 路 开 关MUX 采样保持器 A/D 转换器 放大滤波 传感器 I/O接口 控制对象 传感器 放大滤波 计算机 多 路 开 关MUX 执行部件 D/A 转换器 I/O接口
传感器:把非电量模拟信号转换成电信号(电流、电压)传感器:把非电量模拟信号转换成电信号(电流、电压) • 放大滤波:把传感器产生的微信号放大成具有一定幅值的信号 可编程放大器(PGA)因为多数采集系统支持多路模拟通道,各通道之间电压范围可能有较大差异,因此最好是各个模拟通道采用不同的放大倍数,即要求放大器的放大倍数是可以实时控制改变的。采用这种可编程的放大器可以大大拓宽一个数据采集系统的适应面。
多路切换开关 在一个特定的时间间隔内只允许一个模拟通道通过,完成这 一功能的器件称为多路模拟开关MUX(Mutiplexer).通过MUX 可以实现一到多转换,多到一转换
采样保持器:在采样和转换之间加电压保持器 A/D转换器完成一次转换需要一定的时间在这段时间之内 希望A/D转换器的输入端电压保持不变,否则将使A/D转换 器的输出产生误差,为了使A/D转换器的输入端电压保持不 变,可以采用采样/保持单元来实现。加入采样/保持电路 后,可以大大提高数据采集系统的有效采集频率。
A/D转换器 A/D转换器是一个数据采集系统的前向通道(模拟至数字转 换通道)的核心,由A/D转换器决定前向通道的主要参数。 • D/A转换器 D/A转换器是后向通道(数字至模拟转换通道)的核心,决定 了后向通道的速度与精度。
数据缓冲与接口电路 A/D转换之后的结果通过数据锁存或缓冲以后,由接口电路控制将数据传入内存,或者在内存中已产生的数字序列,通过接口电路送入数据锁存或缓冲单元,再传送给D/A转换器进行模拟输出。
其操作时序分别为: (1)开始MUX开关切换 (2)开始PGA放大倍数切换 (3)开始采样/保持 (4)开始A/D转换 (5)A/D转换完成
10.2 D/A转换器接口方法 一、D/A转换器及其连接特性 1、实现D/A转换的基本思想 将二进制数N=(11001)B转换为模拟量 N =1×24+1×23+0×22+0×21+1×20 数字量是用代码按数位组合而成的, 对于有权码,每位代码都有 一定的权值,如能将每一位代码按其权的大小转换成相应的模拟 量, 然后,将这些模拟量相加,即可得到与数字量成正比的模拟 量, 从而实现数字量--模拟量的转换。
2、主要参数 (1)分辨率 分辨率:其定义为D/A转换器模拟输出电压可能被 分离的等级数。n位DAC最多有2n个模拟输出电压。 位数越多D/A转换器的分辨率越高。
(2)转换时间 指数字量从输入到完成转换,输出达到最终值并稳定为止所需要的时间 电流型的D/A速度较快,电压型的D/A 速度较慢
(3)转换精度 • 转换精度是指对给定的数字量,D/A转换器实际值与理论值之间的最大偏差。 • 产生原因:由于D/A转换器中各元件参数值存在误差,如基准电压不够稳定或运算放大器的零漂等各种因素的影响。
(4)线性度 指数字量变化时,D/A输出的模拟量按比例关系变 化的程度
3、连接特性 (1)输入缓冲能力(是否外加数据锁存器) (2)输入数据宽度(与系统数据总线宽度比较——数据几次输入) (3)输入码制(二进制、BCD码或补码) (4)输出模拟量的类型(电压型、电流型) (5)输出模拟量的极性(单极性、双极性)
二、D/A转换器与微处理器的接口设计 1、片内无三态输入缓冲器的8位D/A转换器 接口设计 要求 利用DAC0808构成直流数字电压表。端口地址 分配为:数据锁存的端口(/Y1)—318H,比较 器比较结果端口(/Y0)—319H
试探次数 试探增量 试探值 Vn Vi 试探结果 状态(D0) ① 80H 80H 偏大 0 0 ② 40H 40H 偏小 1 ③ 20H 60H 偏小 1 ④ 10H 70H 偏小 1 ⑤ 08H 78H 偏小 1 ⑥ 04H 7CH 偏大 0 78H ⑦ 02H 7AH 偏小 1 ⑧ 01H 7BH 相等 1 例:Vi=5V*7BH/256——结果应=7BH 采用逐次逼近的方法寻找数字量结果,二分搜索法 每次中确定区间的中间值去试探
MOV AX,020H MOV DX,319H MOV ES ,AX IN AL,DX MOV BX,00H AND AL,01H MOV CX,080H JNZ OK NEXT:MOV AH,CH MOV CH,AH MOV AL,AH OK: SHR CL,1 ADD AL,CL JNC NEXT MOV CH,AL MOV AL,CH MOV DX,318H MOV ES:[BX],AL OUT DX,AL
2、片内有三态缓冲的DAC接口 0832的功能 • 具有二级锁存的8位D/A转换器 • 采用R-2R梯形网络,CMOS工艺 • 电流型输出 • 可直接连至微处理器总线,并能满足时序要求
0832内部结构 VREF MSB OO OO OO OO OO OO OO OO D D D D D D D D D D D D D D D D DI7 DI6 DI5 DI4 DI3 DI2 DI1 DI0 IOUT2 8位 D/A 转换器 8位 输入 寄存器 IOUT1 8位 DAC 寄存器 RFB LSB LE1 LE2 AGND ILE VCC CS WR1 DGND WR2 XFER
0832的工作方式 • 直通方式 LE1、LE2输入为低,处于常通状态 • 单缓冲方式 把两个寄存器任何一个接成直通方式,或两个寄存器同 时打通 • 双缓冲方式 两个寄存器分别通过不同地址选中,第一条输入指令把 数据写入输入寄存器,第二条输入指令把输入寄存器的 内容写入DAC寄存器,实现D/A转换
举例1:通过8255接口和0832连接,并使0832工作 在直通方式,产生三角波
MOV DX,303H JNZ L1 MOV AL,1000000B MOV AL,0FFH OUT DX,AL L2: OUT DX,AL MOV DX,301H DEC AL MOV AL,00010000B JNZ L2 OUT DX,AL JMP L1 MOV DX,300H MOV AL,0 L1: OUT DX,AL INC AL
按上图输出正向和反向的三角波,上限为2.5V,下限为0.5V按上图输出正向和反向的三角波,上限为2.5V,下限为0.5V MOV DX,300H BEGIN: MOV AL,1AH UP: OUT DX,AL INC AL CMP AL,81H JNZ UP DEC AL DOWN:OUT DX,AL DEC AL CMP AL,19H JNZ DOWN JMP BEGIN MOV DX,303H MOV AL,1000000B OUT DX,AL MOV DX,301H MOV AL,00010000B OUT DX,AL
举例2:用总线方式和0832连接,并使0832工 作在单缓冲方式。
DAC0832 地址译码 320H 地址总线 +5V CS VCC XFER RFB WR1 WR2 IOUT1IOUT2 V0 IOW - + AGND DI0~7 +5V ILE VREF DGND
MOV DX,320H MOV AL,DATA OUT DX,AL
举例3:用总线方式和0832连接,并使0832工 作在双缓冲方式。
DAC0832 地址译码 320H 地址总线 +5V CS VCC 321H XFER RFB WR1 WR2 IOUT1IOUT2 V0 IOW - + AGND DI0~7 +5V ILE VREF DGND
MOV DX,320H MOV AL,DATA OUT DX,AL INC DX OUT DX,AL
+5V R =2R R =2R 2 3 V REF R R FB FB R R P1 P1 DAC0832 DAC0832 - R =R V I - I OUT1 1 OUT1 OU T V + I + V OUT OUT2 OUT2 OUT1 + R 0 (b) (a) I DAC0832的电压输出电路 (a) 单极性输出;(b) 双极性输出
D = - * V V OUT REF 256 单极性输出电路,输出电压为: 若VREF=+5 V,当D=0255(00HFFH)时,VOUT= −(04.98) V。
- D 128 = * V V OUT REF 128 双极性输出电路,输出电压的表达式为: 若VREF=+5 V 当D=0时,VOUT1=0,VOUT=−5 V; 当D=128(80H)时,VOUT1=−2.5 V,VOUT=0; 当D=255(FFH)时,VOUT1=−5.98 V,VOUT = 4.96 V。
3、片内无三态输入缓冲器的12位D/A转换器 接口设计 要求:对片内无输入缓冲的12位D/A转换器设 计接口,要求转换的数据按”右对齐”格式传送
BUF3 BUF1 Q0~7 D0~7 D0~7 D0~7 Q0~7 D0~7 C C Q0~7 D8~11 D0~7 C Y0 IOW 地址译码 20H 12位D/A AEN Y1 21H A0~9
MOV AL,DATA1 OUT 20H,AL MOV AL,DATA2 OUT 21H,AL
4、片内带有三态输入缓冲器的12位D/A转换器接口4、片内带有三态输入缓冲器的12位D/A转换器接口 使用DAC1210,并按“左对齐格式”传送数据
10 V REF (15 ~20) 14 I (4 ~5) OUT2 13 I OUT1 12位 12位 R LE DAC D/A FB 1 11 寄存器 转换器 R (6 ~9) FB 3 AGND 23 LE LE 24 1 2 B / B V & 1 2 CC 12 DGND 1 CS & 2 WR 1 22 WR2 & 21 XFER 8位输入 锁存器 4位输入 锁存器 DAC 1210内部结构
高8位,低4位写入条件:B1/B2=1且CS=WR1=0 低4位写入条件:CS=WR1=0 打开第2级缓冲:XFER=WR2=0 必须先写高8位 后写低4位(写入时令B1/B2=0)
XFER——D/A转换的控制信号,与WR2配合使用。 WR2——DAC寄存器的写信号,低电平有效。当XFER和WR2同时有效时,输入寄存器的数据装入DAC寄存器,并启动一次D/A转换。 IOUT1——D/A转换器输出电流1。 IOUT2——D/A转换器输出电流2。
IOW WR1WR2 IOW WR1WR2 Y0 地址译码器 Y0 地址译码器 1 或 CS B1/B2 Y1 Y1 & Y2 Y2 XFER XFER A0~A9 A0~A9 CS B1/B2 1 A0 接口电路
MOV DX,340H MOV AL,DATAH OUT DX,AL INC DX MOV AL,DATAL OUT DX,AL MOV DX,342H OUT DX,AL 假设Y0的地址是340H, Y1的地址是341H, Y2的地址是342H
10.3A/D转换器接口基本原理与方法 一、A/D转换器及其连接特性 A/D转换器(ADC):将模拟量转换成数字量的线性电路器件
1、A/D转换器的分类 超高速(330ns) 次超高速(330ns~3.3µs) 高速(3.3µs~20µs) 中速(20µs~300µs) 慢速(>300µs) • 按速度分 • 按分辨率分:4位、8位、10位、12位… 直接转换型:逐次逼近(较高分辨率及速度)、并联比较 间接转换型:积分型(抗干扰、高分辨率、但速度慢) 、电压/频率、电压/脉宽 • 按原理分
2、主要参数 • 分辨率 说明A/D转换器对输入信号的分辨能力。通常以输出二进制(或十进制)数的位数表示。 • 转换时间 指A/D转换器从转换控制信号到来开始,到输出端得到稳定的数字信号所经过的时间 • 精度、线性度同DAC
芯片型号 启动信号 转换结束状态 ADC0809 START EOC AD570 B/C=0 DR ADC0804 CS.WR INTR ADC7570 START BUSY=1 ADC1131J CONVCMD STATUS下降沿 ADC1210 SC CC AD574 CE.(R/C=0).CS STS=0 3、A/D的外部特性 • 模拟信号输入线(单通道输入与多通道输入之分) • 数字量输出线(分辨率) • 转换启动线 • 转换结束线
二、A/D转换器和微处理器的接口方法 1 、A/D转换器和CPU的连接 • A/D的分辨率(是否高于系统数据总线的宽度) • A/D转换器的输出信号(是否有三态缓冲功能) • A/D转换器的启动信号(脉冲启动(读写脉冲)/电平启动(经锁存)) • 数据传送方式(查询、中断、DMA、板上RAM方式)
2 、A/D转换器接口的主要操作 • 进行通道选择(多通道ADC) • 发转换启动信号 • 取回“转换结束”状态信号 • 读取转换的数据 • 发采样/保持(S/H)控制信号(高速变化信号) 必须完成