290 likes | 551 Views
第 11 章 信号输入输出通道的接口技术. 11.1 MCS-51 应用系统输入输出通道结构 11.2 模拟量 ADC 与 DAC 的性能指标及选择要点 11.3 模拟量输入通道的接口技术 11.4 模拟量输出通道的接口技术 11.5 数字量输入通道接口技术 11.6 数字量输出通道接口技术. 退出. 11.1 MCS-51 应用系统输入输出通道结构. 11. 2 ADC 及 DAC 的 性能指标和选择要点. 1 .分辨率 : 转换位数 n 2 .转换速率( A/D): 采样定理 稳定时间( D/A)
E N D
第11章 信号输入输出通道的接口技术 11.1 MCS-51应用系统输入输出通道结构 11.2 模拟量ADC与DAC的性能指标及选择要点 11.3 模拟量输入通道的接口技术 11.4 模拟量输出通道的接口技术 11.5 数字量输入通道接口技术 11.6 数字量输出通道接口技术 退出
11. 2 ADC及 DAC的性能指标和选择要点 • 1.分辨率: 转换位数n • 2.转换速率(A/D): 采样定理 • 稳定时间(D/A) • 3.输入电压范围(A/D), • 模拟量输出形式(D/A) • 4.供电电源 • 5.工作环境
11.3 模拟量输入通道的接口技术 ADC芯片型号很多,在精度、速度和价格方面千差万别,较为常见的ADC主要有逐次逼近型、双积分型和电压频率变换型三种。 双积分型ADC,一般精度高;对周期变化的干扰信号积分为零,因此抗干扰性好;价格便宜,但转换速度慢。 逐次逼近型ADC,在转换速度上同双积分型ADC相比要快得多。精度较高(12位及12位以上的),价格较高。 电压—频率(V—F)变换型ADC,突出的优点是高精度,其分辨率可达16位以上;价格低廉,但转换速度不高。
11.3.1 MCS-51与5G14433(双积分型)的接口 一、5G14433A/D转换器的特性及结构 5G14433是上海元件五厂生产的三位半ADC,它是一种双积分型ADC,具有精度高(精度相当于11位二进制ADC)、抗干扰性能好等优点。其缺点是转换速度慢,约1-10次/s。在不要求高速转换的场合,例如温度测控系统中,被广泛采用。5G14433 ADC与Motorola公司的产品MCl4433可以互换。 5G14433ADC的被转换电压量程为199.9mV或1.999V。转换结果以BCD码的形式分4次输出。
(1)VAG:模拟地。 • (2)Vref:外接基准电压(2V或200mV)输入端。 • (3)Vx:被测电压输入端。 • (4)Rl、Rl/C、C:外接积分阻容元件端。外接元件典型值:①当量程为2V时,Cl=0.1luF,R1=470k; • ②当量程为200mV时,Cl=0.1uF,Rl=27k • (5)C01、C02:外接失调补偿电容C0端,C0的典型值为0.1uF。 • (6)DU:更新转换结果输出的输入端。当DU与EOC连接时,每次转换结果都被更新。 • (7)CLKI、CLKO:时钟振荡器外接电阻Rc端。Rc的典型值为470k,时钟频率随着Rc的增加而下降。当CLKO为66kHz时,5G14433工作在最佳状况,CLKO最高不超过300kHz。 • (8)VEE:模拟部分的负电源端,接-5V。 • (9)Vss:数字地。VDD:正电源端。
(10)EOC:转换周期结束标志输出。每当转换周期结 束,EOC端输出一个宽度为时钟周期一半的正脉冲。 (11)/OR:过量称标志输出。当1Vx1>Vref时,/OR端输出低电平。 (12)DSl—DS4:多路选通脉冲输出端。DSl对应千位,DS4对应个位。如图所示。
(13)Q0—Q3:BCD码数据输出线。其中Q0为最低位,Q3为最高位。当DS2、DS3、DS4选通期间,输出三位完整的BCD码(百位、十位、个位);但在DSl选通期间,输出端Q0—Q3除了表示千位为0或1外,还表示了转换结果的正负极性和欠量程还是过量程,其含义: DS1 Q3 Q2 Q1 Q0 输出结果状态 —————————————— 1 1 x x 0 千位数为0 1 0 x x 0 千位数为1 1 x 1 x 0 输出结果为正 1 x 0 x 0 输出结果为负 ——————————————————————— 1 0 x x 1 输入信号过量程 1 1 x x 1 输入信号欠量程
二、5G14433和MCS—51的接口 由于5G14433的结果输出是动态的,Q0—Q3和DSl—DS4都不是总线式的,因此必须通过并行接口和MCS—51相连。图为5G14433和8031P1口相连的接口逻辑。
将A/D转换结果存人8031内部RAM的20H、21H单元,按如下格式存放:将A/D转换结果存人8031内部RAM的20H、21H单元,按如下格式存放: 设8031内部RAM可寻址位10H设为量程错标志位。 读取A/D转换的结果。 程序清单如下: PINT1: MOV A,P1 ;读P1口 JNB ACC.4,PINTl ;查DSl
JB ACC.0,PERR ; 判超量程 • JB ACC.2,PLl ; 判极性 • SETB 07H ; 为负,符号位置1 • AJMP PL2 PLl: CLR 07H ; 为正,符号位清0 PL2: JB ACC.3,PL3 ; 判千位 • SETB 04H ; 千位为1 • AJMP PL4 PL3: CLR 04H ; 千位为0 PL4: MOV A,P1 • JNB ACC.5,PL4 ;查DS2 • MOV R0,#20H • XCHD A,@R0 ; 保存百位
PL5: MOV A,P1 JNB ACC.6,PL5 ;查DS3 • SWAP A • INC R0 • MOV@R0,A ; 保存十位 PL6: MOV A,P1 • JNB ACC.7,PL6 ; 查DS4 • XCHD A,@R0 ;保存个位 • RET PERR: SETB l0H ; 置1量程错标志 • RET
11.3.2 MCS-51与ADC0809(逐次逼近型)的接口 一、ADC0809的性能指标及结构原理 ADC0809是一种典型的A/D转换器,是8位8通道的A/D转换器,转换时间100us,输入电压范围:0-5V。 其引脚如下图所示。
(1) Vcc: +5V工作电压, GND: 数字地 • (2)REF(+),REF(-):参考电压正负端 • (3)CLK: 时钟信号输入端 (内部500KHZ) • (4) EOC: 转换结束信号输出端 • (5) 数据输出线:D0---D7 • (6) 地址线:START:A/D转换启动信号输入端 • ALE: 地址锁存允许信号输入端 • OE: 输出允许控制端 • A、B、C 通道选择地址输入线
二、 MCS-51与ADC0809的接口 • ADC0809与805l之间的接口电路如下图所示。ADC0809时钟信号由单片机的ALE信号2分频获得(假设fosc=6MHZ)。ADC0809通道地址由P0 口的低3位直接与ADC0809的A、B、C相连。
ADC0809通道地址:IN0: 7FF8H IN1: 7FF9H … IN7: 7FFFH
例11-1 采用查询方法。通过查询(P3.3)的状态判断A/D转换是否结束。分别对8路模拟信号轮流采样一次,并依次把结果存储到外部RAM中以#DATA为首地址的8个存储单元中。
MAIN:MOV R1,#DATA ;数据区地址指针指向首单元 MOV DPTR #7FF8H ;P2.7=0,且指向通道0 MOV R7,#08H ;通道数计数器 LOOP: MOVX @DPTR,A ;启动A/D转换 LOOP1: NOP JB P3.3, LOOP ;查询转换结束信号EOC MOVX A,@DPTR ;读取转换结果 MOV @R1,A ;存转换结果 INC DPTR ;指向下一通道 INC Rl ;修改数据区指针 DJNZ R7, LOOP ;8个通道全采样完否? ……
11.4 模拟量输出通道的接口技术 一、芯片内设有数据锁存器---直接相连。 如:DAC0830,0831,0832, AD558, DAC 888, AD7522 二、芯片内没有有数据锁存器---通过并行或串行口相连。 如:DAC1020, DAC1220等 • 11.4.1 MCS-51与DAC0832的接口 一、DAC0832的特点及结构原理 分辨率:8位 稳定时间:1us 供电电源:+5v---+15v
DAC0832是带有两级数据输人缓冲锁存器的8位D/A转换器。其引脚如图所示。DAC0832是带有两级数据输人缓冲锁存器的8位D/A转换器。其引脚如图所示。
输入寄存器地址:ILE为1,/CS为0, /WR1为0 DAC寄存器地址: /WR2为0 , /XFER为0
二、 DAC0832与MCS-51的接口 • 单片机与DAC0832的接口,可根据需要按单级缓冲器方式、二级缓冲器方式和直通方式联接。 1、单缓冲器连接方式 DAC0832以单缓冲器方式与8051的接口电路图所示。
输入寄存器地址与DAC寄存器地址均为7FFFH • 用该连接产生一个锯齿波信号的程序如下: START: MOV DFTR,#7FFFH • MOV A, #00H LOOP: MOVX @DPTR,A • INC A • AJMP LOOP • 上述程序输出的波形如下图所示。
2、双缓冲器连接方式 • 采用双缓冲器连接方式时,DAC0832的数字量输入锁存和D/A转换输出分两步完成。首先,将数字量输入到各路D/A转换器的输入寄存器,然后,控制各路D/A转换器,使各路D/A转换器输入寄存器中的数据,同时进入DAC寄存器,并转换输出。所以,在这种工作方式下,DAC0832占用两个I/O地址,输入寄存器和DAC寄存器各占一个I/O地址。 • 这种方式适用于几个模拟量同时输出的系统,每一路模拟量输出需一片DAC0832,也可用多片DAC0832构成多路模拟量同步输出的系统。
图为二路模拟量同步输出的8031系统。图中,1#DAC0832输入寄存器地址为ODFFFH,2#DAC0832输入寄存器的地址为OBFFFH,1#和2#DAC0832的第二级寄存器地址同为7FFFH。两片DAC0832的输出分别接图形显示器的X、Y偏转放大器的输入端。图为二路模拟量同步输出的8031系统。图中,1#DAC0832输入寄存器地址为ODFFFH,2#DAC0832输入寄存器的地址为OBFFFH,1#和2#DAC0832的第二级寄存器地址同为7FFFH。两片DAC0832的输出分别接图形显示器的X、Y偏转放大器的输入端。
8031执行下面的程序段,将使图形显示器的亮点移动到一个新的位置:8031执行下面的程序段,将使图形显示器的亮点移动到一个新的位置: • ①MOV DPTR,#0DFFFH • ②MOV A,#DATAX • ③MOVX @DPTR,A ;数据X打人1#输入寄存器 • ④MOV DPTR,#0BFFFH • ⑤MOVA,#DATAY • ⑥MOVX @DPTR,A ;数据Y打人2#输入寄存器 • ⑦MOV DPTR,#7FFFH • ⑧MOVX @DPTR,A 1#2#输入寄存器的内容 • 同时打人各自的DAC寄存器中