模拟量的输入输出
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设需要转换的数据为DATA,DAC0832 端口地址为PORT,工作在单 缓冲方式下,完成D/ A 转换的程序段如下:
MOV AL,DATA ;转换数据送AL
MOV DX,PORT ;端口地址送DX OUT DX,AL ;将数字量送到D/A 转换器进行转换
26
(2)双缓冲方式
双缓冲工作方式是指输入寄存器和DAC 寄存器分别受到控制,该方 式电路连接如图所示。 在双缓冲方式下,CPU 要对DAC0832 进行两步写操作,即首先将数 据写入输入寄存器,然后将输入寄存器的内容写入DAC 寄存器。设 需要转换的数据为DATA,输入寄存器的端口地址为Y1,在双缓冲方 式下,完成D/A 转换的程序段如下: MOV AL,DATA ;将转换数据送AL MOV DX,Y1 ;输入寄存器端口地址Y1 送DX OUT DX,AL ;数据送入寄存器 MOV DX,Y2 ;DAC 寄存器端口地址Y2 送DX OUT DX,AL ;启动D/A 转换
第 8章
模拟量的输入输出
1
2
主要内容:
模拟量输入输出通道的组成 D/A转换器的工作原理、连接及编程 A/D转换器的工作原理、连接及编程
3
一、模拟量的输入输出通道
4
5
放大器 把传感器输出的 信号放大到ADC 所需的量程范围 现场信号 传感器 1 现场信号 传感器 2 … 现场信号 传感器 n
21
DAC0832的内部结构
22
DAC0832的引脚功能
DAC0832 由8 位输入寄存器、8 位DAC 寄存器、8位DAC 转换器及 转换控制电路构成,DAC 转换器采用“T”型电阻网络
D0~D7:8位数据输入端
CS:片选信号线,低电平有效
ILE:数据锁存允许信号,高电平有效 WR1:输入寄存器的写入控制,低电平有效
30
设定地址译码输出端口为360H,该电路可输出3 种波形,分别描述 如下
(1) 矩形波。给DAC0832 持续256 次送数据0,然后256 次送数据 FFH,依次重复处理, DAC0832 就可输出一个矩形波。输出矩形波 的程序段如下:
MOV DX,360H ;设定地址译码输出端口 DD0: MOV CX,0FFH
18
转换精度(误差)
实际输出值与理论值之间的最大偏差
影响转换精度的因素: 分辩率 电源波动 温度变化
┇
19
转换时间
从开始转换到与满量程值相差±1/2 LSB所对应的模拟 量所需要的时间 V
VFULL
1/2 LSB
tC
t
20
3.典型D/A 转换器芯片DAC0832
特点:
8位电流输出型D/A转换器 T型电阻网络 差动输出
可用输入数字量的位数来表示,如8位、10位等; 也可用一个LSB (Least Significant Bit)使输出变化的程度 来表示。
17
分辩率例
一个满量程为5V的10位D/A变换器,±1 LSB的变化将使 输出变化: 5/(210-1) = 5/1023 = 0.04888V = 48.88mV
INC AL LOOP DD1 ;循环形成上升斜坡
MOV CX,0FFH
DD2:DEC AL OUT DX,AL
LOOP DD2 ;循环形成下降斜坡
JMP DD0 ;重复上述过程,形成多个三角波
33
三、A/D 转换器
A/D转换器是将连续变化的模拟信号转换为数字信号,以 便于计算机进行处理,是模拟系统与计算机之间的接口部件, 常用于数据采集系统。
MOV CX,0FFH
DD2:INC AL ;循环加1,以形成上升沿 OUT DX,AL LOOP DD2 MOV CX,0FFH
DD3:OUT DX,AL ;输出上底
LOOP DD3 MOV CX,0FFH DD4:DEC AL OUT DX,AL ;输出下降沿 LOOP DD4 JMP DDl ;重复上述过程,形成多个梯形波 32
34
A/D转换器类型
计数型A/D转换器
-------速度慢、价格低,适用于慢速系统
双积分型A/D转换器
-------分辩率高、抗干扰性好、转换速度慢,适用于中速 系统
逐次逼近式A/D转换器
-------转换精度高、速度快、抗干扰性差
35
A/D 转换器的工作原理
逐位逼近式A/D转换器
类似天平称重量时的尝试法,逐步用砝码的累积重量去逼近被称物体
VIN
VN
D/A转换器
VREF D7 D6 D5 D4 D3 D2 D1 D0 OE
36
START 控制 逻辑 EOC N位寄存器
锁 存 缓 存 器
A/D 转换器的主要性能指标
1. 分辨率
反映了A/D 转换器对输入微小信号变化的响应能力,即能够分辨 的最小模拟量。例如,对于8 位A/D 转换器,输入电压满刻度为 5V 时,则对应输入的模拟电压的分辨率为5V/255=19.5mV。
信号处理(Signal Processing)
放大、整形、滤波
多路转换开关(Multiplexer)
Βιβλιοθήκη Baidu
多选一
采样保持电路(Sample Holder,S/H)
保证变换时信号恒定不变
A/D变换器(A/D Converter)
模拟量转换为数字量
7
模拟量的输出通道
D/A变换器(D/A Converter)
27
双缓冲模式下,CS和XFER分别接到两个端口的地址译码 信号线,即0832占用两个端口地址
双缓冲工作方式优点是数据接收和启动转换可以异步进 行,可以在D/A转换的同时,接收下一个数据,提高了模 /数转换的速率。它还可以用于多个通道同时进行D/A转 换的场合。
28
(3)直通方式
直通工作方式是指两个寄存器的有关控制信号都预先置 为有效,两个寄存器都开通。只要数字量送到数据输入 端,就立即进入D/A 转换器进行转换。此时,CS、 WR1 、 WR2 、XFER 引脚都直接连接数字地,ILE 信号接高电平, 这种方式一般应用较少。
15
实际的D/A转换器 ——R-2R梯形电阻网络
Rf n-1 2 1 0 Vi + 2R R Vn-1 2R
...
V0
Vref
R V2
2R R V1
2R 2R V0
16
2.主要技术指标
分辨率(Resolution)
输入的二进制数每±1个最低有效位 (LSB)使输出变化的程度。
表示:
数字量
模拟开关 电阻网络
∑
VO Vref
10
基本变换原理
运放的放大倍数足够大时,输出电压VO与输入
电压Vref的关系为:
Rf
Rf V=-Vref O R
R Vref
∑
VO
11
基本变换原理
若输入端有n个支路, 则输出电压VO与输入电压Vref的关系 为:
Rf R1
1 V=-RV 0 f ref i=1 Ri
WR2 :DAC 寄存器写入控制,低电平有效
XFER:传送控制信号,低电平有效 Iout1:模拟电流输出端口1,当DAC 寄存 器全为1 时,此电流最大,当DAC 寄存 器全为0时,此电流最小
23
DAC0832 的引脚功能
Iout2:模拟电流输出端口2,在数值上,Iout1+Iout2=常数
29
D/A 转换器的应用
应用举例:利用D/A 转换器来构造波形发生器,如图所示。该电路 由DAC0832、双运算放大器LM358 和地址译码部件组成,将WR2 、 XFER 信号接地,使DAC0832 工作在单缓冲方式下。由于DAC0832 是电流输出型的D/A 转换器,该电路需要电压输出,所以采用双极 性输出方式。
25
当CPU 向端口地址发出写命令时,要进行D/A 转换的数据通过数据 总线呈现在DAC0832 的D7~D0 上,系统IO 地址经译码电路产生片 选信号,系统总线的IOW信号为低电平后,数据写入到输入寄存器 中,因为DAC 寄存器为直通状态,所以写入到输入寄存器的数据立 刻进行D/A 变换。
低通滤波器 用于降低噪声、 滤去高频干扰, 以增加信噪比
多路开关 把多个现场信号 分时地接通到 A/D转换器 模拟信号
采样保持器 周期性地采样连续 信号,并在A/D转 换期间保持不变 数字 信号 I/0 接 口
放大器
低通滤波 多 路 开 关
采样 保持 器
放大器
低通滤波
A/D 转 换 器
放大器
低通滤波
RFB:内部反馈电阻引出端,接运算放大器的输出端 VREF:基准电压输入端,可在-10V~+10V 之间
VCC:芯片的电源电压,可在+5V 或+15V 选择
GND:数字信号地 AGND:模拟信号地
24
DAC0832 的工作方式
DAC0832 内部有两个寄存器,即输入寄存器和DAC 寄存器,能实现 3 种工作方式:单缓冲方式、双缓冲方式和直通方式。
(3) 三角波。给DAC0832 持续256 次送数据0,然后逐次加1 直到 255,接着将255逐次 减1 到0,依次重复,DAC0832 就可输出一个 三角波。输出三角波的程序段如下:
MOV DX,360H ;设定地址译码输出端口
DD0:MOV CX,0FFH MOV AL,00
DD1:OUT DX,AL ;向D/A 转换器送数据0
Si=0表示Si断开,则上式变换为
1 V0 = - i SiVref i=1 2
若Si=1,该项对VO有贡献;
若Si=0,该项对VO无贡献
14
n
基本变换原理
如果用8位二进制代码来控制图中的S1~S8(Di=1时Si闭合; Di=0时Si断开),则不同的二进制代码就对应不同输出电 压VO; 当代码在0~FFH之间变化时,VO相应地在 0~(255/256)Vref之间变化; 为控制电阻网络各支路电阻值的精度,实际的D/A转换器 采用R-2R梯形电阻网络,它只用两种阻值的电阻(R和2R)。
2. 转换精度
反映了A/D 转换器实际输出与理想输出的接近程度。
3. 转换时间
指完成一次A/D 转换所需要的时间
数字量转换为模拟量
低通滤波
平滑输出波形
放大驱动
提供足够的驱动电压,电流
8
二、数/模(D/A)变换器
9
1.D/A 转换器工作原理
典型的D/A 转换器芯片通常由模拟开关、电阻网络以及 缓冲电路组成。
D/A 转换的基本原理是利用电阻网络,将N 位二进制数 逐位转换成模拟量并求和,从而实现将数字量转化为模 Rf 拟量。
(1) 单缓冲方式。单缓冲工作方式是使输入寄存器或DAC 寄存器中的 任意一个工作在直通状态,另一个由CPU 控制。通常WR2和XFER 连 接数字地,使DAC 寄存器的输出能够跟随输入,即第二级寄存器工 作在直通状态,输入寄存器的控制端ILE 接+5V, CS接端口地址译 码器输出, WR1连接系统总线的IOW信号,电路连接如图
31
(2) 梯形波。给DAC0832 持续256 次送数据0,然后逐次加1 直到255, 然后持续256次,接着将255 逐次减1,依次重复处理,DAC0832 就可 输出一个梯形波。输出梯形波的程序段 如下:
MOV DX,360H ;设定地址译码输出端口
MOV CX,0FFH MOV AL,00 DDl: OUT DX,AL ;向D/A 转换器送数据0 LOOP DDl ;循环256 次,形成梯形波的下底
n
Vref
… Rn
∑
VO
12
权电阻网络
假定在制造D/A 转换器时,使RF=R,R1=2R,R2= 4R,R3=8R,…,Rn=2nR
2R S1 S2 S3 S4 4R 8R 16R 32R 64R 128R 256R
Rf
Vref
S5
S6
S7 S8
VO
这里,上式中的n=8
13
基本变换原理
每个支路由一个开关Si控制,Si=1表示Si合上,
多 路 开 关
传感器 控制信号 将各种现场的 物理量测量出来 放大驱动电路 受控对象 并转换成电信号 (模拟电压或电流)
模 拟 信 D/A 号 转 换 器
I/0 接 口
数 字 信 号
6
模拟量的输入通道
传感器(Transducer)
非电量→电压、电流
变送器(Transformer)
转换成标准的电信号
MOV AL,00
DDl: OUT DX,AL ;向D/A 转换器送数据0 LOOP DDl ;循环256 次,形成矩形波的低电平
MOV CX,0FFH
MOV AL,0FFH DD2:OUT DX,AL ;向D/A 转换器送数据FFH LOOP DD2 ;循环256 次,形成矩形波的高电平 JMP DD0 ;重复上述的过程,形成多个矩形波
MOV AL,DATA ;转换数据送AL
MOV DX,PORT ;端口地址送DX OUT DX,AL ;将数字量送到D/A 转换器进行转换
26
(2)双缓冲方式
双缓冲工作方式是指输入寄存器和DAC 寄存器分别受到控制,该方 式电路连接如图所示。 在双缓冲方式下,CPU 要对DAC0832 进行两步写操作,即首先将数 据写入输入寄存器,然后将输入寄存器的内容写入DAC 寄存器。设 需要转换的数据为DATA,输入寄存器的端口地址为Y1,在双缓冲方 式下,完成D/A 转换的程序段如下: MOV AL,DATA ;将转换数据送AL MOV DX,Y1 ;输入寄存器端口地址Y1 送DX OUT DX,AL ;数据送入寄存器 MOV DX,Y2 ;DAC 寄存器端口地址Y2 送DX OUT DX,AL ;启动D/A 转换
第 8章
模拟量的输入输出
1
2
主要内容:
模拟量输入输出通道的组成 D/A转换器的工作原理、连接及编程 A/D转换器的工作原理、连接及编程
3
一、模拟量的输入输出通道
4
5
放大器 把传感器输出的 信号放大到ADC 所需的量程范围 现场信号 传感器 1 现场信号 传感器 2 … 现场信号 传感器 n
21
DAC0832的内部结构
22
DAC0832的引脚功能
DAC0832 由8 位输入寄存器、8 位DAC 寄存器、8位DAC 转换器及 转换控制电路构成,DAC 转换器采用“T”型电阻网络
D0~D7:8位数据输入端
CS:片选信号线,低电平有效
ILE:数据锁存允许信号,高电平有效 WR1:输入寄存器的写入控制,低电平有效
30
设定地址译码输出端口为360H,该电路可输出3 种波形,分别描述 如下
(1) 矩形波。给DAC0832 持续256 次送数据0,然后256 次送数据 FFH,依次重复处理, DAC0832 就可输出一个矩形波。输出矩形波 的程序段如下:
MOV DX,360H ;设定地址译码输出端口 DD0: MOV CX,0FFH
18
转换精度(误差)
实际输出值与理论值之间的最大偏差
影响转换精度的因素: 分辩率 电源波动 温度变化
┇
19
转换时间
从开始转换到与满量程值相差±1/2 LSB所对应的模拟 量所需要的时间 V
VFULL
1/2 LSB
tC
t
20
3.典型D/A 转换器芯片DAC0832
特点:
8位电流输出型D/A转换器 T型电阻网络 差动输出
可用输入数字量的位数来表示,如8位、10位等; 也可用一个LSB (Least Significant Bit)使输出变化的程度 来表示。
17
分辩率例
一个满量程为5V的10位D/A变换器,±1 LSB的变化将使 输出变化: 5/(210-1) = 5/1023 = 0.04888V = 48.88mV
INC AL LOOP DD1 ;循环形成上升斜坡
MOV CX,0FFH
DD2:DEC AL OUT DX,AL
LOOP DD2 ;循环形成下降斜坡
JMP DD0 ;重复上述过程,形成多个三角波
33
三、A/D 转换器
A/D转换器是将连续变化的模拟信号转换为数字信号,以 便于计算机进行处理,是模拟系统与计算机之间的接口部件, 常用于数据采集系统。
MOV CX,0FFH
DD2:INC AL ;循环加1,以形成上升沿 OUT DX,AL LOOP DD2 MOV CX,0FFH
DD3:OUT DX,AL ;输出上底
LOOP DD3 MOV CX,0FFH DD4:DEC AL OUT DX,AL ;输出下降沿 LOOP DD4 JMP DDl ;重复上述过程,形成多个梯形波 32
34
A/D转换器类型
计数型A/D转换器
-------速度慢、价格低,适用于慢速系统
双积分型A/D转换器
-------分辩率高、抗干扰性好、转换速度慢,适用于中速 系统
逐次逼近式A/D转换器
-------转换精度高、速度快、抗干扰性差
35
A/D 转换器的工作原理
逐位逼近式A/D转换器
类似天平称重量时的尝试法,逐步用砝码的累积重量去逼近被称物体
VIN
VN
D/A转换器
VREF D7 D6 D5 D4 D3 D2 D1 D0 OE
36
START 控制 逻辑 EOC N位寄存器
锁 存 缓 存 器
A/D 转换器的主要性能指标
1. 分辨率
反映了A/D 转换器对输入微小信号变化的响应能力,即能够分辨 的最小模拟量。例如,对于8 位A/D 转换器,输入电压满刻度为 5V 时,则对应输入的模拟电压的分辨率为5V/255=19.5mV。
信号处理(Signal Processing)
放大、整形、滤波
多路转换开关(Multiplexer)
Βιβλιοθήκη Baidu
多选一
采样保持电路(Sample Holder,S/H)
保证变换时信号恒定不变
A/D变换器(A/D Converter)
模拟量转换为数字量
7
模拟量的输出通道
D/A变换器(D/A Converter)
27
双缓冲模式下,CS和XFER分别接到两个端口的地址译码 信号线,即0832占用两个端口地址
双缓冲工作方式优点是数据接收和启动转换可以异步进 行,可以在D/A转换的同时,接收下一个数据,提高了模 /数转换的速率。它还可以用于多个通道同时进行D/A转 换的场合。
28
(3)直通方式
直通工作方式是指两个寄存器的有关控制信号都预先置 为有效,两个寄存器都开通。只要数字量送到数据输入 端,就立即进入D/A 转换器进行转换。此时,CS、 WR1 、 WR2 、XFER 引脚都直接连接数字地,ILE 信号接高电平, 这种方式一般应用较少。
15
实际的D/A转换器 ——R-2R梯形电阻网络
Rf n-1 2 1 0 Vi + 2R R Vn-1 2R
...
V0
Vref
R V2
2R R V1
2R 2R V0
16
2.主要技术指标
分辨率(Resolution)
输入的二进制数每±1个最低有效位 (LSB)使输出变化的程度。
表示:
数字量
模拟开关 电阻网络
∑
VO Vref
10
基本变换原理
运放的放大倍数足够大时,输出电压VO与输入
电压Vref的关系为:
Rf
Rf V=-Vref O R
R Vref
∑
VO
11
基本变换原理
若输入端有n个支路, 则输出电压VO与输入电压Vref的关系 为:
Rf R1
1 V=-RV 0 f ref i=1 Ri
WR2 :DAC 寄存器写入控制,低电平有效
XFER:传送控制信号,低电平有效 Iout1:模拟电流输出端口1,当DAC 寄存 器全为1 时,此电流最大,当DAC 寄存 器全为0时,此电流最小
23
DAC0832 的引脚功能
Iout2:模拟电流输出端口2,在数值上,Iout1+Iout2=常数
29
D/A 转换器的应用
应用举例:利用D/A 转换器来构造波形发生器,如图所示。该电路 由DAC0832、双运算放大器LM358 和地址译码部件组成,将WR2 、 XFER 信号接地,使DAC0832 工作在单缓冲方式下。由于DAC0832 是电流输出型的D/A 转换器,该电路需要电压输出,所以采用双极 性输出方式。
25
当CPU 向端口地址发出写命令时,要进行D/A 转换的数据通过数据 总线呈现在DAC0832 的D7~D0 上,系统IO 地址经译码电路产生片 选信号,系统总线的IOW信号为低电平后,数据写入到输入寄存器 中,因为DAC 寄存器为直通状态,所以写入到输入寄存器的数据立 刻进行D/A 变换。
低通滤波器 用于降低噪声、 滤去高频干扰, 以增加信噪比
多路开关 把多个现场信号 分时地接通到 A/D转换器 模拟信号
采样保持器 周期性地采样连续 信号,并在A/D转 换期间保持不变 数字 信号 I/0 接 口
放大器
低通滤波 多 路 开 关
采样 保持 器
放大器
低通滤波
A/D 转 换 器
放大器
低通滤波
RFB:内部反馈电阻引出端,接运算放大器的输出端 VREF:基准电压输入端,可在-10V~+10V 之间
VCC:芯片的电源电压,可在+5V 或+15V 选择
GND:数字信号地 AGND:模拟信号地
24
DAC0832 的工作方式
DAC0832 内部有两个寄存器,即输入寄存器和DAC 寄存器,能实现 3 种工作方式:单缓冲方式、双缓冲方式和直通方式。
(3) 三角波。给DAC0832 持续256 次送数据0,然后逐次加1 直到 255,接着将255逐次 减1 到0,依次重复,DAC0832 就可输出一个 三角波。输出三角波的程序段如下:
MOV DX,360H ;设定地址译码输出端口
DD0:MOV CX,0FFH MOV AL,00
DD1:OUT DX,AL ;向D/A 转换器送数据0
Si=0表示Si断开,则上式变换为
1 V0 = - i SiVref i=1 2
若Si=1,该项对VO有贡献;
若Si=0,该项对VO无贡献
14
n
基本变换原理
如果用8位二进制代码来控制图中的S1~S8(Di=1时Si闭合; Di=0时Si断开),则不同的二进制代码就对应不同输出电 压VO; 当代码在0~FFH之间变化时,VO相应地在 0~(255/256)Vref之间变化; 为控制电阻网络各支路电阻值的精度,实际的D/A转换器 采用R-2R梯形电阻网络,它只用两种阻值的电阻(R和2R)。
2. 转换精度
反映了A/D 转换器实际输出与理想输出的接近程度。
3. 转换时间
指完成一次A/D 转换所需要的时间
数字量转换为模拟量
低通滤波
平滑输出波形
放大驱动
提供足够的驱动电压,电流
8
二、数/模(D/A)变换器
9
1.D/A 转换器工作原理
典型的D/A 转换器芯片通常由模拟开关、电阻网络以及 缓冲电路组成。
D/A 转换的基本原理是利用电阻网络,将N 位二进制数 逐位转换成模拟量并求和,从而实现将数字量转化为模 Rf 拟量。
(1) 单缓冲方式。单缓冲工作方式是使输入寄存器或DAC 寄存器中的 任意一个工作在直通状态,另一个由CPU 控制。通常WR2和XFER 连 接数字地,使DAC 寄存器的输出能够跟随输入,即第二级寄存器工 作在直通状态,输入寄存器的控制端ILE 接+5V, CS接端口地址译 码器输出, WR1连接系统总线的IOW信号,电路连接如图
31
(2) 梯形波。给DAC0832 持续256 次送数据0,然后逐次加1 直到255, 然后持续256次,接着将255 逐次减1,依次重复处理,DAC0832 就可 输出一个梯形波。输出梯形波的程序段 如下:
MOV DX,360H ;设定地址译码输出端口
MOV CX,0FFH MOV AL,00 DDl: OUT DX,AL ;向D/A 转换器送数据0 LOOP DDl ;循环256 次,形成梯形波的下底
n
Vref
… Rn
∑
VO
12
权电阻网络
假定在制造D/A 转换器时,使RF=R,R1=2R,R2= 4R,R3=8R,…,Rn=2nR
2R S1 S2 S3 S4 4R 8R 16R 32R 64R 128R 256R
Rf
Vref
S5
S6
S7 S8
VO
这里,上式中的n=8
13
基本变换原理
每个支路由一个开关Si控制,Si=1表示Si合上,
多 路 开 关
传感器 控制信号 将各种现场的 物理量测量出来 放大驱动电路 受控对象 并转换成电信号 (模拟电压或电流)
模 拟 信 D/A 号 转 换 器
I/0 接 口
数 字 信 号
6
模拟量的输入通道
传感器(Transducer)
非电量→电压、电流
变送器(Transformer)
转换成标准的电信号
MOV AL,00
DDl: OUT DX,AL ;向D/A 转换器送数据0 LOOP DDl ;循环256 次,形成矩形波的低电平
MOV CX,0FFH
MOV AL,0FFH DD2:OUT DX,AL ;向D/A 转换器送数据FFH LOOP DD2 ;循环256 次,形成矩形波的高电平 JMP DD0 ;重复上述的过程,形成多个矩形波