610 likes | 773 Views
第 13 章. 第 13 章 模拟接口. 教学重点 DAC 0832 及其与主机的连接 ADC 0809 及其与主机的连接. 模拟 / 数字转换器 ADC. DAC 数字 / 模拟转换器. 模拟量与数字量. 模拟量 —— 连续变化的物理量. 数字量 —— 时间和数值上都离散的量. 模拟信号. 现场信号 1. 多 路 开 关. 低通滤波. 传感器. 放大器. 采样保持器. A/D 转换器. 现场信号 2. 数字信号. 低通滤波. 传感器. 放大器. …. 微型 计算机. 现场信号 n. 低通滤波. 传感器. 放大器.
E N D
第13章 模拟接口 教学重点 DAC 0832及其与主机的连接 ADC 0809及其与主机的连接
模拟/数字转换器 ADC DAC 数字/模拟转换器 模拟量与数字量 • 模拟量——连续变化的物理量 • 数字量——时间和数值上都离散的量
模拟信号 现场信号1 多 路 开 关 低通滤波 传感器 放大器 采样保持器 A/D转换器 现场信号2 数字信号 低通滤波 传感器 放大器 … 微型 计算机 现场信号n 低通滤波 传感器 放大器 模拟信号 控制信号 数字信号 放大驱动电路 D/A转换器 受控对象 13.1 模拟输入输出系统 • 传感器 • 将各种现场的物理量测量出来 • 并转换成电信号(模拟电压或电流) • 放大器 • 把传感器输出的信号放大到ADC所需 • 的量程范围 • 低通滤波器 • 用于降低噪声、滤去高频干扰, • 以增加信噪比 • 多路开关 • 把多个现场信号分时地接通到A/D转换器 • 采样保持器 • 周期性地采样连续信号, • 并在A/D转换期间保持不变
DAC 数字/模拟转换器 13.2 D/A转换器 模拟量 数字量
1101B = 1×23+1×22+0×21+1×20 = 13 13.2.1 D/A转换的基本原理 数字量 → 按权相加 → 模拟量
c b R R 电阻网络 a d R VREF 电子开关 2R 2R 2R Rfb Rfb S3 S0 _ Iout1 I3 I0 Iout2 + Vout D3 D0 基准电压 2R 2R S1 S2 I2 I1 D1 D2 D/A转换器的原理图(1)
c b R R 阻抗=2R a d R 运算放大器 VREF 2R 2R 2R Rfb Rfb S3 S0 _ Iout1 I3 I0 Iout2 + Vout D3 D0 虚地 2R 2R S1 S2 I2 I1 D1 D2 D/A转换器的原理图(2)
D/A转换器的原理图(3) Va=VREF Vb=VREF/2 Vc=VREF/4 Vd=VREF/8 I0=Vd/2R=VREF/(8×2R) I1=Vd/2R=VREF/(4×2R) I2=Vd/2R=VREF/(2×2R) I3=Vd/2R=VREF/(1×2R)
D/A转换器的原理图(4) Iout1=I0+I1+I2+I3 =VREF/2R×(1/8+1/4+1/2+1) Rfb=R Vout=-Iout1×Rfb =-VREF×[(20+21+22+23)/24] Vout=-(D/2n)×VREF
VREF 输入 寄 存 器 DAC 寄 存 器 D/A 转 换 器 Rfb DI0~DI7 Iout1 Iout2 LE1 LE2 AGND ILE Vcc DAC0832 DGND 13.2.2 DAC0832芯片 • DAC0832是典型的8位电流输出型通用DAC芯片
VREF 输入 寄 存 器 DAC 寄 存 器 D/A 转 换 器 Rfb DI0~DI7 Iout1 Iout2 LE1 LE2 AGND ILE CS Vcc WR1 DAC0832 DGND WR2 XFER DAC0832的内部结构
1. DAC0832的数字接口 • 8位数字输入端 • DI0~DI7(DI0为最低位) • 输入寄存器(第1级锁存)的控制端 • ILE、CS*、WR1* • DAC寄存器(第2级锁存)的控制端 • XFER*、WR2*
输入 寄 存 器 DAC 寄 存 器 D/A 转 换 器 DI0~DI7 Iout1 DAC0832 LE1 LE2 直通锁存器的工作方式 两级缓冲寄存器都是直通锁存器 • LE=1,直通(输出等于输入) • LE=0,锁存(输出保持不变)
输入 寄 存 器 DAC 寄 存 器 D/A 转 换 器 DI0~DI7 Iout1 DAC0832 LE1 LE2 DAC0832的工作方式:直通方式 • LE1=LE2=1 • 输入的数字数据直接进入D/A转换器
输入 寄 存 器 DAC 寄 存 器 D/A 转 换 器 DI0~DI7 Iout1 DAC0832 LE1 LE2 DAC0832的工作方式:单缓冲方式 • LE1=1,或者LE2=1 • 两个寄存器之一始终处于直通状态 • 另一个寄存器处于受控状态(缓冲状态)
输入 寄 存 器 DAC 寄 存 器 D/A 转 换 器 DI0~DI7 Iout1 DAC0832 LE1 LE2 DAC0832的工作方式:双缓冲方式 • 两个寄存器都处于受控(缓冲)状态 • 能够对一个数据进行D/A转换的同时;输入另一个数据
2. DAC0832的模拟输出 • Iout1、Iout2——电流输出端 • Rfb——反馈电阻引出端(电阻在芯片内) • VREF——参考电压输入端 • +10V~-10V • AGND——模拟信号地 • VCC——电源电压输入端 • +5V~+15V • DGND——数字信号地
VREF Rfb DI _ Iout1 A Vout + Iout2 AGND 单极性电压输出 Vout=-Iout1×Rfb =-(D/28)×VREF
单极性电压输出:例子 Vout=-(D/2n)×VREF 设 VREF=-5V • D=FFH=255时,最大输出电压: Vmax=(255/256)×5V=4.98V • D=00H时,最小输出电压: Vmin=(0/256)×5V=0V • D=01H时,一个最低有效位(LSB)电压: VLSB=(1/256)×5V=0.02V
R2(2R) R3(2R) VREF I1 Rfb DI _ R1(R) Iout1 _ A1 Iout2 Vout1 + A2 I2 Vout2 + AGND I1+I2=0 双极性电压输出:电路
双极性电压输出:公式 取 R2=R3=2R1 得 Vout2=-(2Vout1+VREF) 因 Vout1=-(D/28)×VREF 故Vout2=[(D-27)/27)]×VREF
双极性电压输出:例子 Vout=[(D-27)/27)]×VREF 设 VREF=5V • D=FFH=255时,最大输出电压: Vmax=[(255-128)/128]×5V=4.96V • D=00H时,最小输出电压: Vmin=[(0-128)/128]×5V=-5V • D=81H=129时,一个最低有效位电压: VLSB=[(129-128/128]×5V=0.04V
5V 1K VREF 调满刻度 电位器 Rfb DI 1M _ Iout1 A Vout + Iout2 10K 调零 电位器 AGND 电源 3. 输出精度的调整
模拟电路 ADC DAC 数字电路 模拟电路 数字电路 AGND DGND 公共接地点 数字地 模拟地 4. 地线的连接
13.2.3 DAC芯片与主机的连接 • DAC芯片相当于一个“输出设备”,至少需要一级锁存器作为接口电路 • 考虑到有些DAC芯片的数据位数大于主机数据总线宽度,所以分成两种情况: 1. 主机位数等于或大于DAC芯片位数 2. 主机位数小于DAC芯片位数
_ LS273 DAC D0~D7 A + CLK Vout IOW AB 译码 1. 主机位数大于或等于DAC芯片的连接 mov al,buf mov dx,portd out dx,al
+5V 5V Vcc VREF ILE Rfb AB _ 译码 CS Iout1 A WR1 IOW + Iout2 Vout DI0~D17 D0~D7 WR2 XFER DGND AGND DAC0832单缓冲方式
DAC CPU 8位 12位 2. 主机位数小于DAC芯片的连接 • 数字数据需要多次输出 • 接口电路也需要多个(级)锁存器保存多次输出的数据 • 并需要同时将完整的数字量提供给DAC转换器
4位 锁存器 12位 DAC 4位 锁存器 模拟输出 8位 锁存器 8位 锁存器 D0~D7 第1级高4位锁存控制 第1级低8位锁存控制 关键的一级锁存 第2级12位锁存控制 由同一个信号控制 无需输出数据 两级锁存电路
4位 锁存器 12位 DAC 模拟输出 8位 锁存器 8位 锁存器 D0~D7 第1级低8位锁存控制 关键的一级锁存 第2级12位锁存控制 由同一个信号控制 需要输出高4位数据 简化的两级锁存电路 mov dx,port1 mov al,bl out dx,al mov dx,port2 mov al,bh out dx,al
13.2.4 DAC芯片的应用 mov dx,portd mov al,0 repeat: out dx,al inc al jmp repeat
2LSB 255LSB 锯齿波周期 0 2次数据输出的时间间隔 1LSB 254LSB 输出正向锯齿波
模拟/数字转换器 ADC 13.3 A/D转换器 模拟量 数字量
13.3.1 A/D转换的基本原理 • 存在多种A/D转换技术,各有特点,分别应用于不同的场合 • 4种常用的转换技术 • 计数器式 • 逐次逼近式 • 双积分式 • 并行式
转换结束 比较器 模拟输入 D/A转换器 数字输出 时钟 复位 计数器 1. 计数器式 以最低位为增减量 单位的逐步计数法
比较器 模拟输入 D/A转换器 数字输出 时钟 复位 寄存器 转换结束 2. 逐次逼近式 从最高位开始 的逐位试探法
数字输出 固定时间 斜率可变 Vc 固定斜率 时间可变 T1 T2 Vin V/I 积分器 Iin 比较器 VREF IREF 转换结束 V/I 计数器 时钟 启动计数 3. 双积分式 两个积分阶段 实质是电压/时间变换
VREF R/2 比较器 Vin 编 码 电 路 R R R R 数字输出 R R R/2 4. 并行式 速度快成本高 直接比较法
13.3.2 ADC0809芯片 • 具有A/D转换的基本功能 • CMOS工艺制作 • 8位逐次逼近式ADC • 转换时间为100 s • 包含扩展部件 • 多路开关 • 三态锁存缓冲器
START CLOCK EOC 定时和控制 1N0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 通道 选择 开关 8位 三态 锁存 缓冲器 D0 D1 D2 D3 D4 D5 D6 D7 逐次逼近 寄存器SAR 比较器 DAC 地址锁存 和译码 ADDA ADDB ADDC OE ALE ADC0809 Vcc GND VREF(+) VREF(-) ADC0809的内部结构图
1. ADC0809的模拟输入 • 提供一个8通道的多路开关和寻址逻辑 • IN0~IN7:8个模拟电压输入端 • ADDA、ADDB、ADDC:3个地址输入线 • ALE:地址锁存允许信号 • ALE的上升沿用于锁存3个地址输入的状态,然后由译码器从8个模拟输入中选择一个模拟输入端进行A/D转换
转换启动信号 转换结束信号 START/ALE ADDA/B/C EOC OE D0~D7 DATA 100s 200ns (最小) 2s+8T (最大) 2. ADC0809的转换时序
3. ADC0809的数字输出 • ADC0809内部锁存转换后的数字量 • 具有三态数字量输出端D0~D7 • 配合输出允许信号OE • 当输出允许信号OE为高电平有效时,将三态锁存缓冲器的数字量从D0~D7输出
输入模拟电压 输出数字量 基准电压正极 基准电压负极 4. ADC0809的转换公式
单极性转换示例 • 基准电压VREF(+)=5V,VREF(-)=0V • 输入模拟电压Vin=1.5V N =(1.5-0)÷(5-0)×256 =76.8≈77=4DH
双极性转换示例 • 基准电压VREF(+)=+5V,VREF(-)=-5V • 输入模拟电压Vin=-1.5V N =(-1.5+5)÷(5+5)×256 =89.6≈90=5AH
13.3.3 ADC芯片与主机的连接 • ADC芯片相当于“输入设备”,需要接口电路提供数据缓冲器 • 主机需要控制转换的启动 • 主机还需要及时获知转换是否结束,并进行数据输入等处理
1. 数据输出线的连接 • 与主机的连接可分成两种方式 • 直接相连:用于输出带有三态锁存器的ADC芯片 • 通过三态锁存器相连:适用于不带三态锁存器的ADC芯片,也适用带有三态锁存缓冲器的芯片 • ADC芯片的数字输出位数大于系统数据总线位数,需把数据分多次读取
2. A/D转换的启动(1) • 启动信号一般有两种形式 • 脉冲信号启动转换 • 电平信号启动转换 转换启动 转换结束