本章主要教学内容
D/A,A/D转换器的基本概念及基本结构
D/A,A/D转换器的工作原理及其特点
D/A,A/D转换器的选用方法和编程技术
模拟接口技术的应用第 12章 模拟量输入输出接口技术
12.1 模拟接口概述在实际控制系统中采用的计算机所要加工,处理的信号可以分为模拟量 ( Analog) 和数字量 ( Digit) 两种类型,为了能用计算机对模拟量进行采集,加工和输出,就需要把模拟量转换成便于计算机存储和加工的数字量 ( 称为 A/D转换 ) 送入计算机进行处理,同样经过计算机处理后的数字量所产生的结果依然是数字量,要对外部设备实现控制必须将数字量转换成模拟量 ( 称为 D/A转换 ),因此,D/A与 A/D转换是计算机用于多媒体,工业控制等领域的一项重要技术 。
A/D,D/A转换器在微机控制系统中应用非常广泛。 A/D转换器位于微机控制系统的前向通道,D/A转换器位于微机控制系统的后向通道。一般微机测控系统的组成框图如图 12-1所示。
微型计算机
D / A
转换器
A / D
转换器执行机构传感器与数据采集工业生产现场图 12-1微机测控系统框图
12.2 典型 D/A转换器芯片
12.2.1 D/A转换器的工作原理和主要参数
D/A转换的基本原理是用电阻解码网络,将 N位数字量逐位转换成模拟量并求和,从而实现将 N位数字量转化为模拟量。由于数字量不是连续的,其转换后的模拟量自然就不是连续的。同时由于计算机每次输出数据和 D/A转换器进行转换需要一定的时间,因此实际上 D/A转换器输出的模拟量随时间的变化曲线不是连续的,而是呈阶梯状。
1,D/A转换器的工作原理
D/A转换器进行一次数字量到模拟量的转换需要的时间,称为 D/A转换时间,一般在 500ns左右 。 为了保存由计算机送来的数字信号,通常还需要配置一个,数据寄存器,,向 D/A
转换器提供稳定的数字信号 。 D/A转换器的模拟量输出 ( 电流或电压 ) 与参考量 ( 电流或电压 ) 以及二进制数成比例,— 般来说,可用下面的式子表示模拟量输出和参考量及二进制数的关系:
其中 X为模拟量输出,K为比例常数,VREF为参考量(电压或电流),B为待转换的二进制数,通常 B的位数为 8位、
12位等。
BVKX R EF
( 1) 二进制加权电阻网络型 D/A转换器二进制加权电阻网络型 D/A转换器的结构如图 12-2所示 。 该 电路由权电阻 ( 产生二进制权电流的电阻网络 ),位 切换开关
( Kl~ Kn),反馈电阻和运算放大器等组成 。
R
2 R
4 R
Rf
R2
1N?
R EF
V
0
d
2n
d
3n
d
1n
d
k 1
k 2
k 3
kn
-
+
图 12-2 二进制加权电阻网络型 D/A转换器图 12-3 行扫描法识别按键
( 2) 梯形电阻网络 D/A转换器
R
2 R
Rf
REF
V
0
d
2n
d
1
d
1n
d
K 1
K 2
Kn - 1
Kn
-
+
2 R
2 R
2 R
2 R
R
梯形电阻网络 D/A转换器的结构如图 12-3所示。该电阻网络中仅有 R和 2R两种电阻,切换开关的工作原理与二进制加权电阻网络 D/A转换工作原理相同。
2,D/A转换器的主要参数
( 1) 绝对精度
( 2) 相对精度
( 3) 分辨率
( 4) 建立时间
( 5) 温度系数
( 6) 非线性误差
12.2.2 八位 D/A转换器 DAC0832及其应用
DAC0832是 8位分辨率的 D/A转换集成芯片,其明显特点是与微机连接简单,转换控制方便,价格低廉等,在微机系统中得到了广泛的应用 。 D/A转换器的输出一般都要接运算放大器,微小信号经放大后才能驱动执行机构的部件 。
DAC0832主要技术指标如下:
分辨率为 8位;
输出电流稳定时间,即转换速度约为 1μs;
非线性误差为 0.20%FSR;
温度系数为 2× 10-6/℃ ;
工作方式为双缓冲,单缓冲和直通方式;
逻辑输入与 TTL电平兼容;
功耗为 20mW;
单电源供电,电源范围为 +5V~ +15 V。
1,DAC0832的内部结构
DAC0832的内部结构框图如图 12-4所示,它由 8位输入锁存器,8位 DAC寄存器,8位 DAC转换器及转换控制电路构成,
DAC转换器采用梯型电阻网络。
2,DAC0832的引脚功能
DAC0832的外部封装为 20脚双列直插式,如图 12-5所示。
8 位 输 入锁 存 器
8 位 D A C
寄 存 器
8 位 D / A
转 换 器
2LE1LE
2WR
70
~ DIDI
7
6
5
4
1 6
1 5
1 4
1 3
I L E
1 9
1
2
1 8
1 7
8
1 2
1 1
9
3
1 0
2 0
V C C
D G N D
A G N D
REF
V
2O UT
I
1O UT
I
fb
R
fb
R
1WR
CS
XF ER



图 12-4 DAC0832的内部 结构
1
2
3
4
5
6
7
8
9
1 0
2 0
1 9
1 8
1 7
1 6
1 5
1 4
1 3
1 2
1 1
D A C
0 8 3 2
CS
1WR
A G ND
3
DI
2
DI
1
DI
0
DI
R E F
V
fb
R
D G N D
1OUT
I
2O UT
I
7
DI
6
DI
5
DI
4
DI
XFER
2WR
I LE
VCC
图 12-5 DAC0832引脚
3,DAC0832的工作方式
DAC0832内部有两个寄存器,能实现 3种工作方式:
( 1) 直通方式:直通工作方式是指两个寄存器的有关控制信号都预先置为有效,两个寄存器都开通 。
( 2) 单缓冲方式:单缓冲工作方式是指只有一个寄存器受到控制,这时将另一个寄存器的有关控制信号预先设置成有效,使之开通; 或者将两个寄存器的控制信号连在一起,两个寄存器作为一个来使用 。
( 3) 双缓冲方式:双缓冲工作方式是指两个寄存器分别受到控制,该方式可提高采集数据的速度 。
4,DAC0832的输出
DAC0832是电流形式输出,当需要电压形式输出时,必须外接运算放大器。如图 12-6所示。
D A C
0 8 3 28
R
70
~ DIDI
O U T
V
-
+
D A C
0 8 3 2
8
R
70 ~ DIDI
OUT
V
R 2
R 1
-
+
( a) 反相输出 ( b) 同相输出图 12-6 DAC0832的输出
5,DAC0832芯片与微机接口电路的设计选择和使用 D/A转换器时要注意以下几点:
( 1) 合理选择 DAC芯片,要满足系统要求的 D/A转换器分辨率和工作温度范围;然后根据 DAC芯片的结构和应用持性选择 D/A转换器,使接口的外围电路简单,使用方便 。
( 2) 设计和连接接口,具有三态输入数据寄存器的 DAC芯片可直接与计算机 I/O插槽上的数据总线相接,同时,要为
D/A转换器配置 — 个端口地址 。
( 3) 配置参考电源,若 D/A芯片无参考电源,则需外接 。
参考电压工作应该稳定,可靠,温度漂移要小 。
12.3 典型 A/D转换器芯片
A/D转换器的功能是把模拟量电压转换为数字量电压 。 模拟信号的大小随着时间不断地变化,为了通过转换得到确定的值,对连续变化的模拟量要按一定的规律和周期取出其中的某一瞬时值进行转换,这个值称为采样值 。 香农定理规定:采样频率一般要高于或至少等于输入信号最高频率的 2倍,实际应用中采样频率可以达到信号最高频率的
4~ 8倍 。 对于变化较快的输入模拟信号,A/D转换前可采用采样保持器,使得在转换期间保持固定的模拟信号值 。
相邻两次采样的间隔时间称为采样周期 。 为了使输出量能充分反映输入量的变化情况,采样周期要根据输入量变化的快慢来决定,而一次 A/D转换所需要的时间显然必须小于采样周期 。
12.3.1 A/D转换器工作原理和主要参数
1,A/D转换器的分类及工作原理
A/D转换器如果按照输入模拟量的极性分类,可以分为单极型和双极型两种;如果按照输出数字量分类,可以有并行方式,串行方式及串 /并行方式;如果按 A/D转换器的转换原理分类,可以分为积分型,逐次逼近型和并行转换型 。
下面重点介绍最常用的逐次逼近型 A/D转换器的工作原理 。
逐次逼近型 A/D转换器如 图 12-11所示 。
缓 冲 寄 存 器控 制 电 路逐 次 逼 近寄 存 器
8 位
D / A
转 换 器比 较 器
C L K
启 动 信 号转 换 结 束
V i
V 0
D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0
图 12-11逐次逼近型 A/D转换器工作时,置数选择逻辑电路给逐次 逼近比较 寄存器置数,经 D/A转换器转换成模拟量并和输入的模拟信号比较,当输入模拟电压大于或等于 D/A转换器的输出电压时,比较器置,1”,否则置,0”。 置数选择逻辑电路根据比较器的结果修正逐次 逼近比较 寄存器的数值,使所置数据转换后得到的模拟电压逐渐逼近输入电压,经过 N次修改后,逐次 逼近比较 寄存器中的数值就是 A/D转换的最终结果 。
逐次逼近型 A/D转换器的主要特点是:
( 1) 转换速度较快,转换时间在 1~ 100μs以内,分辨率可达 18位,特别适用于高精度和高频信号的 A/D转换;
( 2) 转换时间固定,不随输入信号的大小而变化;
( 3) 抗干扰能力不如双积分型 A/D转换器 。 模拟信号输入采样过程中,若在采样时刻一个干扰脉冲迭加在模拟信号上,则采样时,干扰信号被采样和转换为数字量,这就会造成较大的误差,所以需要采取适当的滤波措施 。
这类典型芯片主要有 ADC0809,ADCl210,AD574等,
逐次逼近型 A/D转换器是目前应用较多的 A/D转换器芯片 。
2,A/D转换器的主要性能参数
( 1) 分辨率:反映了 A/D转换器对输入微小变化的响应能力,
通常用数字量最低位 ( LSB) 所对应的模拟输入电平值表示 。
( 2) 精度:精度采用绝对误差和相对误差两种方法来表示 。
( 3) 转换时间:是指完成一次 A/D转换所需要的时间,即由发出转换命令信号到转换结束信号开始有效的时间间隔 。
( 4) 温度系数:是表示 A/D转换器受环境温度影响的程度,
一般采用环境温度变化 1℃ 所产生的相对转换误差来表示 。
( 5) 量程,是指所能转换的模拟输入电压范围,分单极性,
双极性两种类型 。
( 6) 逻辑电平及方式:多数 A/D转换器输出的数字信号与
TTL电平兼容,以并行方式输出 。
( 7) 工作温度范围,A/D转换器的工作温度范围一般为 0~
70℃,军用品为- 55℃ ~+ 125℃ 。
12.3.2 ADC0809转换器及其应用
ADC0809是 8位,8通道逐次逼近式 A/D转换器,由美国 NS公司生产 。 片内有 8路模拟开关,
可以同时连接 8路模拟量,单极性,量程为 0~ 5V。
典型的转换速度为 100μ s。 片内有三态输出缓冲器,可以直接与微机总线相连接 。 该芯片有较高的性能价格比,适用于对精度和采样速度要求不高的场合或一般的工业控制领域 。 由于其价格低廉,便于与微机连接,因而应用十分广泛 。
1,ADC0809的结构及工作原理
ADC0809采用单一的十 5V电源供电,外接工作时钟为 500kHz时,
转换时间大约为 128ms,工作时钟为 640kHz时,转换时间大约为 100ms。 允许模拟输入为单极性,无需零点和满刻度调节,
内部有 8个锁存器控制的模拟开关,可以通过编程选择 8个通道中的任一个 。
ADC0809的逻辑结构如图 12-12所示,其内部由 256R电阻分压器,树状模拟开关 ( 这两部分组成一个 D/A变换器 ),电压比较器,逐次逼近寄存器,逻辑控制和定时电路组成 。 其基本工作原理是采用对分搜索方法逐次比较,找出最逼近于输入模拟量的数字量 。 电阻分压器需外接正负基准电源 VREF( +) 和
VREF( - ) 。 CLOCK端外接时钟信号,A/D转换器的启动由
START信号控制,转换结束时控制电路将数字量送入三态输出锁存器锁存,并产生转换结束信号 EOC。
逻辑控制和定时电路逐次逼近寄存器
SAR
256 R 电阻分压器电压比较器树状模拟开,关阵译码器
A
B
C
地址锁存有效
A LE
8 路模拟量选通开关
START
三态输出数据锁存器
GND
转换结束
EOC
IN
0
IN
1
IN
2
IN
3
IN
4
IN
5
IN
6
IN
7
D
0
D
1
D
2
D
3
D
4
D
5
D
6
D
7
V REF ( + )
8
路模拟信号输入
A
8 位 A / D 转换器通道地址锁存与译码
3 位地址码输入
V REF ( - )V
CC
输出有效控制
OE
( LSB )
8 位数据输出
( MSB )
启动
CLOCK
时钟图 12-12 ADC0809的逻辑结构
2,ADC0809主要技术指标
( 1) 分辨率为 8位;
( 2) 总的非调整误差为 ± 1 LSB;
( 3) 增益温度系数为 0.02% ;
( 4) 低功耗电量,为 20mW;
( 5) 单电源 +5 V供电,基准电压由外部提供,典型值为 +5 V,
此时允许模拟量输入范围为 0~5 V;
( 6) 转换速度约 1μs,转换时间为 100μs( 时钟频率为 640 Hz) ;
( 7) 具有锁存控制功能的 8路模拟开关,能对 8路模拟电压信号进行转换;
( 8) 输出电平与 TTL电平兼容 。
3,ADC0809的引脚功能
ADC0809引脚见图 12-13所示。
1
OE
CLOCK
IN
2
2
3
4
5
6
7
8
9
10
IN
7
REF (+)
19
20
21
22
23
24
IN
1
11
12
13
14 15
16
17
18
25
26
27
28
ADC
0808 / 0809
START
D
1
IN
0
ADDC
ALE
D
7
IN
3
D
4
D
0
IN
4
IN
5
IN
6
EOC
D
3
V
CC
GND
D
2
REF ( - )
D
5
D
6
ADDB
ADDA
图 12-13 ADC0809引脚
4,ADC0809的工作时序
ADC0809工作时序如图 12-14所示,从图中可以看出各信号的时序关系,完成一次转换所需要的时间为 66~73个时钟周期 。
图 12-14 ADC0809的工作时序




S T A R T / A L E
A D D A / B / C
E O C
O E
07
D~D
5,ADC0809与微机接口通常使用的 A/D转换芯片一般都具有数据输出、启动转换、
转换结束、时钟和参考电平等引脚。 ADC芯片与主机的连接就是处理这些引脚的连接问题。
( 1) ADC0809与 CPU的直接连接
ADC0809与 系统采用直接连接方法 见图 12-15所示。 占用三个 I/O端口:端口 1用来向 0809输出模拟通道号并锁存;端口
2用于启动转换;端口 3读取转换后的数据结果。
C L K 8 分 频
C L K
D 7
~
D 0
O E
A D D A
A D D B
A D D C
E O C
A L E
S T A R T
A D C
0 8 0 9
IO W
I O R
0A
1A
0D~7D
7A
6A
5A
0Y译码器
P
C
插槽
+ 5 V
V C C
V R E F ( + )
G N D
V R E F ( - )
2A
图 12-15 ADC0809与系统的直接连接
( 2) 系统通过并行接口芯片 8255A与 ADC0809的连接硬件电路的连接见图 12-16所示 。 该系统可对 8路模拟量分时进行数据采集 。 转换结果采用查询方式传送,除了一个传送转换结果的输入端口外,还需要传送 8个模拟量的选择信号和 A/D转换的状态信息 。 将 8255的 A口输入方式设定为方式 0,B口的 PB5~PB7输出选择 8路模拟量的地址选通信号,PC1输出 ADC0809的控制信号,PB0作为启动信号 。
由于 ADC0809需要脉冲启动,所以通过软件编程让 PB0输出一个正脉冲,EOC信号直接接 PC1。
CLK 8 分频
CLK
D 7
~
D 0
OE
ADDA
ADDB
ADDC
E OC
ALE
ST ART
ADC
0809
PA
PB 0
PC 1
PB 7
PB 6
PB 5CE
RD
WR
0D~7D
0A
1A
82 55
I OW
IO R
0A
1A
0D~7D
7A
6A
5A
0Y译码器
P
C
插槽图 12-16 ADC0809与系统连接图
12.4 模拟接口应用实例为了综合应用模拟接口技术,我们设计并分析一个在 PC机 ISA
扩展槽上采用中断方式进行 8路数据采集和单通道模拟量输出的接口电路系统 。
该系统要求采用 ADC0809及 DAC0832构建一个通用的 8位
A/D输入,D/A输出的采集卡,利用 PC微机系统的 IRQ2信号作为
ADC的外部中断信号,使 ADC的 8个通道循环采集,每个通道采样 100次,采集的数据存放在内存,并在屏幕上显示结果 。
( 1) 根据题目要求画出实现该系统功能的电路原理图,如图 12-20所 示 。 其中 DAC0832为单极性输出,也可根据要求变换为双极性输出 。
+ 5 V
D A C 0 8 3 2A D C 0 8 0 9
8 分 频
7 4 L S 1 3 8
C L KI N 7
~
I N 0 A B C D 7
~
D 0
E O CO E S T A R T A L E
CS
+
-
+ -
D 7
~
D 0
Y 0Y 1Y 2
A 5A 6A 7
模 拟 输 入 C L K D 0 D 1 D 2 I R Q 2 D 7
~
D 0 O U T
1 0
1 7
1 8
81 92 0 9 1 1 1 2 3
P C 插 槽图 12-20 A/D,D/A应用
( 2) 设计中断控制位,用于控制 ADC0809的 EOC中断申请,CPU
写入中断口 9FH的数据为 0( 用数据总线 D7位控制 ) 时,不允许
EOC申请中断,写数据 80H时允许 EOC申请中断 。 ( 此部分电路图上省略,读者可以自行考虑设计 )
( 3) 相关的控制端口地址设计为以下内容:
ADC0809输出允许 ( 读数据 ) 端口地址为 1FH;
ADC0809启动转换端口地址为 3FH;
通道地址由数据总线的低 3位 D2~ D0编码产生,我们将通道选择和启动转换结合起来完成,所以口地址也为 3FH;
DAC0832使能地址为 5FH;
中断申请端口地址为 9FH;
地址译码功能由 74LS138译码器和相关门电路完成 。
( 4) 由于 D/A变换程序比较简单,只需向 5FH端口写一个数据就可以了,所以下面程序是为进行 A/D变换的数据采集程序 。 程序中对 8个通道采集数据,每个通道采集数据 100个,
数据放在 BUFF开始的存储区 。
本章小结本章主要介绍了 A/D,D/A转换器的工作原理和典型的 A/D,D/A转换器芯片 。 DAC0832是 CMOS工艺制造的 8位 D/A转换器,由两级 8位寄存器和一个 8位
D/A转换器组成 。 使用两级寄存器 ( 输入寄存器和
DAC寄存器 ) 可以简化它的接口电路,使工作方式更加灵活 。 从输出信号来说,D/A转换器的直接输出是电流量,若片内有输出放大器,则能输出电压量,并能实现单极性或双极性电压输出 。 D/A转换器的转换速度较快,一般其电流建立时间为 1μ s。
ADC0809是逐次逼近型 8位 A/D转换芯片,片内有 8路模拟开关,可以同时连接 8路模拟量,单极性,量程为 0~ 5V,典型的转换速度为 100μs,该芯片有较高的性能价格比,适用于对精度和采样速度要求不高的场合或一般的工业控制领域 。
在实际应用中,A/D,D/A转换器的选择要考虑转换精度和分辨率满足系统的需求;转换速率要根据被测对象的变化率及转换精度的要求来确定;为保证实时性和采样信号不失真的要求,转换时间必须满足由采样定理所确定的时间;要根据环境条件选择转换芯片的环境参数;在价格差别不大的情况下,应选取既能保证性能,接口设计又最简单的芯片 。
本章小结第 12章内容到此结束谢谢各位 !