当前位置:文档之家› 第9章 数模与模数转换接口技术

第9章 数模与模数转换接口技术


MOV A, #00H
;取下限值
MOV DPTR,#7FFFH ;指向0832口地址
MM: MOVX @DPTR,A
;输出
INC A
;延时
NOP
NOP
NOP SJMP MM
;反复
执行上述程序就可得到如下图所示的锯齿波。
V FFH
00H
t
T
几点说明:
(1)程序每循环一次,A加1,因此实际上锯齿波的上升边是由 256个小阶梯构成的,但由于阶梯很小,所以宏观上看就如图 中所画的先行增长锯齿波。
JNB P1.4,DECD
SJMP LOOP
INCD : ADD A,#20H
CJNE A,#0E0H,LOOP
MOV A,#0E0H
SJMP LOOP DECD: CLR C
SUBB A,#20H
CJNE A,#00H,LOOP
MOV A,#20H
SJMP LOOP
END
9.2.3 双缓冲方式的接口与应用
在多路D/A转换的情况下,若要求同步转换输出,必须采 用双缓冲方式。DAC0832采用双缓冲方式时,数字量的输 入锁存和D/A转换输出是分两步进行的。
模拟量输出有两种方式:
• 电压输出 电压输出的DAC芯片相当于一个电压源,其内阻 很小,选用这种芯片时,与它匹配的负载电阻应 较大。
• 电流输出 电流输出的芯片相当于电流源,其内阻较大,选 用这种芯片时,负载电阻不可太大。
在实际应用中,常选用电流输出的DAC芯片实 现电压输出:
9.2.1 D/A转换器芯片DAC0832
V #dateH
#dateL
T/2
T/2
几点说明:
(1)以上程序产生的是矩形波,其低点平的宽度由延 时子程序DELAYL所延时的时间来决定,高电平的宽度 则由DELAYH所延时的时间决定。
(2) 改变延时子程序DELAYL和的DELAYH延时时间, 就可改变矩形波上下沿的宽度。若DELAYL=DELAYH (两者延时一样),则输出的是方波。
为使输入寄存器处于受控锁存方式,应把WR1接 8051的WR,ILE接高电平。此外还应把CS接高位地址 线或地址译码输出,以便于对输入寄存器进行选择。
DAC0832单缓冲方式接口
MOV A, #data
;data为要转换的数字量
MOV DPTR,#0FEFFH ;DAC0832的地址→DPTR
MOVX @DPTR,A
9.2.2 单缓冲方式的接口与应用
1.单缓冲方式连接 所谓单缓冲方式就是使DAC0832的两个输入寄存器
中有一个处于直通方式,而另一个处于受控锁存方式。 为使DAC寄存器处于直通方式,应使WR2 =0和
XFER=0。为此可把这两个信号固定接地,或如电路 中把WR2与WR1相连,把XFER与CS相连。
• 量程(满刻度范围——FULL Scale Range)
量程是指输入模拟电压的变化范围。例如某转换 器具有10V的单极性范围或-5~+5V的双极性范 围。则它们的量程都为10V。满刻度只是个名义 值,实际的A/D,D/A转换器的最大输出值总是 比满刻度值小1/2n,n为转换器的位数。例如12位 的A/D转换器,其满刻度值为10V,而实际的最 大输出值为:
(3) 改变上限值或下限值便可改变矩形波的幅值;单 极性输出时为0~-5V或0~+5V;双极性输出时为-5V~ +5V。
DAC0832单缓冲方式接口
分析仿真电路图,回答以下问题
分析仿真电路图,回答以下问题 (1)DAC0832芯片工作在那种方式? (2)当DAC0832的输入数字量为十进制数128时,计算输出电压 Vout。 (3)编写驱动程序,使程序执行后Vout驱动直流电动机旋转,通 过“加速”按钮、“减速”按钮控制电机转速。
DAC0832的内部结构
பைடு நூலகம்
引脚功能:
DI0~DI7:8位数字信号输入端 CS*:片选端
ILE: 数据锁存允许控制端,高电平有效。
WR1*:输入寄存器写选通控制端。当CS*=0、ILE=1、 WR1*=0时,数据信号被锁存在输入寄存器中
XFER*:数据传送控制
WR2* :DAC寄存器写选通控制端。 当XFER*=0,WR2* =0时,输入寄存器的数据锁存入 DAC寄存器中。
D/A转换器的主要技术指标
D/A转换器的主要技术指标与A/D转换器基本相同, 只是转换时间的概念略有不同,D/A转换器的转换 时间又叫建立时间,它是指当输入的二进制代码从 最小值突然跳变至最大值时,其模拟输出电压相应 的满度跳跃并达到稳定所需的时间。一般而言, D/A的转换时间比A/D要短得多。
9.2 DAC芯片类型及接口方法
输出电压Vout与输入数字量B的关系: Vout = -(B/256)*VRFE
式中,B=b7·27+ b6·26+……+ b1·21+ b0·20; B为0时,Vout也为0,输入数字量为255时,Vout为极 值,单极性。
2.单缓冲方式应用举例——波形发生器
在一些控制应用中,需要有一个线性增长的电压 (锯齿波)来控制检测过程、移动记录笔或移动电 子束等。对此可通过在DAC0832的输出端接运算放 大器,由运算放大器产生锯齿波来实现,其电路连 接如图所示。
DAC0832的工作方式
DAC0832利用WR1 、 WR2 、ILE、XFER 控制信 号可以构成三种不同的工作方式。 • 直通方式—— WR1= WR2 =0时,数据可以从输
入端经两个寄存器直接进入D/A转换器。 • 单缓冲方式——两个寄存器之一始终处于直通,
即WR1=0或WR2=0,另一个寄存器处于受控状 态。 • 双缓冲方式—— 两个寄存器均处于受控状态。 这种工作方式适合于多模拟信号同时输出的应 用场合。
;完成一次数据输入与转换
DAC0832单缓冲方式接口
DAC0832 +5V
P0
ALE 80C51
P2.7
74LS373 G
Vcc ILE
Vref
DI7 0 IoRuftb1
-
CS Iout2 +
Vout
XFER
WR
WR1 AGND
WR2 DGND
采取何种形式接口与DAC的具体应用有关。
单极性电压输出
IOUT1:电流输出1端,输入数字量全“1”时,IOUT1最大, 输入数字量全为“0”时,IOUT1最小。
IOUT2:D/A转换器电流输出2端,IOUT2+IOUT1=常数。 Rfb:外部反馈信号输入端, 内部已有反馈电阻Rfb,根据需 要也可外接反馈电阻。 VREF:基准电源输入 Vcc:电源输入端,可在+5V~+15V范围内 DGND:数字信号地。 AGND:模拟信号地。
DAC0832性能:
• 分辨率为8位 • 电流建立时间为1µs • CMOS工艺,低功耗20mV • 单电源供电(+5V~+15V) • 基准电压的范围为±10V • 内部结构:1个8位输入寄存器、
1 个 8 位 DAC 寄 存 器 和 1 个 8 位
D/A转换器组成。
• 可双缓冲、单缓冲或直通数据 输入
(1)单缓冲器方式; (2) Vout =-(B/256)*VRFE=-(128/256)*VRFE =-2.5V
(3)
ORG 0000H
START:LJMP MAIN
ORG 0030H
MAIN:MOV DPTR,#DFFFH
MOV A, #20H
LOOP:MOVX @DPTR,A
JNB P1.2,INCD
• V/F转换型:适于转换速度要求不太高,远距离 信号传输。
9.1 转换器的性能指标
A/D转换器的主要技术指标
• 分辨率(Resolution) A/D转换器能分辨的最小输出模拟增量,取决于输 入数字量的二进制位数。例如:二进制12位,即 用212个数进行量化,分辨率为1LSB,百分数表示 1/212=0.24‰。 • 转换精度(Conversion Accuracy) 转换精度指满量程时ADC的实际模拟输出值和理 论值的接近程度。
地址 译码输出 P0.7 P0.0
WR
+5V
ILE VCC
CS DIO
Vref
DAC0832 Rfb
DI7 WR1
WR2
Iout1 Iout2 XFER
10k
+10V
-
-
+
+ -10V
10k
1/2LM324
图中的DAC0832工作于单缓冲方式,其中输入寄存器受 控,而DAC寄存器直通。假定输入寄存器地址为7FFFH, 产生锯齿波的程序清单如下:
(2)可通过循环程序段的机器周期数,计算出锯齿波的周 期。并可根据需要,通过延时的方法来改变波形周期。若要 改变锯齿波的频率,可在AJMP MM指令前加入延迟程序即 可。延时较短时可用NOP指令实现(本程序就是如此),需 要延时较长时,可以使用一个延长子程序。延迟时间不同, 波形周期不同,锯齿波的斜率就不同。
LOOP: MOV A , #dataH ;送高电平数据
MOVX @ DPTR , A
LCALL DELAYH ;调用延时子程序
MOV A , #dataL
;送低电平数据
MOVX @ DPTR , A
LCALL DELAYL ;调用延时子程序
SJMP LOOP
END
执行上述程序就可得到如下图所示的矩形波
(3)通过A加1,可得到正向的锯齿波,反之A减1可得到负 向的锯齿波。
(4) 程序中A的变化范围是0~255,因此得到的锯齿波是 满幅度的。如要求得到非满幅锯齿波,可通过计算求的数字 量的初值和终值,然后在程序中通过置初值和终值的方法实 现。
相关主题