《机械系统微机控制优秀课件.ppt》由会员分享,可在线阅读,更多相关《机械系统微机控制优秀课件.ppt(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、机械系统微机控制第1页,本讲稿共37页8 8A/DA/D与与D/AD/A 接口接口机械系统微机控制机械系统微机控制第2页,本讲稿共37页8.18.1数模转换数模转换D/AD/A接口接口 1.DAC1.DAC工作原理工作原理D/A转换器DAC(Digital to Analog Converter)输入信号是数字量,经转换后输出的是模拟量:电压或电流。输出量与输入量成正比。机械系统微机控制机械系统微机控制第3页,本讲稿共37页 数模转化(D/A)电路形式常采用T型电阻解码网络,这种结构的四位二进制数的模数转换电路如图所示:图:T型电阻解码网络机械系统微机控制机械系统微机控制第4页,本讲稿共37页
2、由上式和图得运算放大器的输出电压为:可以总结为可以总结为“按权展开,然后相加按权展开,然后相加”输出电压和二进制位数呈线性关系。调整运算放大器的反馈电阻Rf和参考电压VRef就得到和n位二进制数成比例的输出电压范围。机械系统微机控制机械系统微机控制第5页,本讲稿共37页有关有关D/AD/A转换器的技术性能指标转换器的技术性能指标1)分辩率分辩率 分辨率是D/A转换器对输入量变化敏感程度的描述,与输入数字量的位数有关。如果数字量的位数为n,则D/A转换器的分辨率为2-n。2)建立时间建立时间建立时间是描述D/A转换速度快慢的一个参数,指从输入数字量变化到输出达到终值时所需的时间。通常以建立时间来
3、表示转换速度.转换器的输出形式为电流时,建立时间较短;输出形式为电压时,由于建立时间还要加上运算放大器的延迟时间,因此建立时间要长一点。但总的来说,D/A转换速度远高于A/D转换速度,快速的D/A转换器的建立时间可达1 s。机械系统微机控制机械系统微机控制第6页,本讲稿共37页3)接口形式接口形式 D/A转换器与单片机接口方便与否,主要决定于转换器本身是否带数据锁存器。有两类D/A转换器,一类是不带锁存器的,另一类是带锁存器的。对于不带锁存器的D/A转换器,为了保存来自单片机的转换数据,接口时要另加锁存器,因此这类转换器不能直接接在数据总线上,必须通过并行接口和系统连接;而带锁存器的D/A转换
4、器,可以把它看作是一个输出口,因此可直接接在数据总线上,而不需另加锁存器。机械系统微机控制机械系统微机控制第7页,本讲稿共37页2.2.典型典型D/AD/A转换器转换器DAC0832DAC0832机械系统微机控制机械系统微机控制DAC0832是一个8位D/A转换器。单电源供电,从+5 V+15 V均可正常工作。基准电压的范围为10 V;电流建立时间为1 s;CMOS工艺,低功耗20 mW。DAC0832转换器芯片为20引脚,双列直插式封装,其引脚排列如图所示。第8页,本讲稿共37页DAC0832DAC0832内部结构:内部结构:由三个与门电路组成寄存器输出控制逻辑电路,该逻辑电路的功能是进行数
5、据锁存控制,当=0时,输入数据被锁存;当=1时,锁存器的输出跟随输入的数据。该转换器由输入寄存器和该转换器由输入寄存器和DACDAC寄存器构成两级数据输入锁存。使用时,数据输入寄存器构成两级数据输入锁存。使用时,数据输入可以采用两级锁存(双锁存)形式,或单级锁存(一级锁存,一级直通)形式,或可以采用两级锁存(双锁存)形式,或单级锁存(一级锁存,一级直通)形式,或直接输入(两级直通)形式。直接输入(两级直通)形式。机械系统微机控制机械系统微机控制第9页,本讲稿共37页引脚信号分为:(1)DI0DI7 为数字量输入信号(2)Iout1、Iout2为模拟量输出信号(3)CS为片选信号(4)WR1、W
6、R2为写入信号(5)ILE为数据锁存允许信号(6)XFER为数据传送控制信号(7)Rfb为反馈信号输入线(8)VCC 为电源电压线(9)VRFE 为基准电压输入线(10)AGND 为模拟地。(11)DGND为数字地。机械系统微机控制机械系统微机控制当当ILE=1ILE=1和和 WR1=0 WR1=0时,时,为输入寄存器直通方式;为输入寄存器直通方式;当当ILE=1ILE=1和和WR1=1WR1=1时,时,为输入寄存器锁存方式。为输入寄存器锁存方式。当 WR2=0和XFER=0时,为DAC寄存器直通方式;当WR2=1和XFER=0时,为DAC寄存器锁存方式。第10页,本讲稿共37页3.DAC08
7、323.DAC0832应用应用1)直通方式 机械系统微机控制机械系统微机控制输入寄存器和DAC寄存器都在直接选通的情况,在直通方式下,两个寄存器共用一个地址,同时选通输出。第11页,本讲稿共37页 MOV A,#DATA MOV DPTR,#0EFFH MOVX DPRT,A 机械系统微机控制机械系统微机控制 所谓单缓冲方式就是使DAC 0832的两个输入寄存器中有一个处于直通方式,而另一个处于受控的锁存方式。在实际应用中,如果只有一路模拟量输出,或虽有几路模拟量但并不要求同步输出时,就可采用单缓冲方式。2)单缓冲方式第12页,本讲稿共37页例9-4在图9-37中,该编程输出如图9-38 所示
8、的阶梯波。机械系统微机控制机械系统微机控制第13页,本讲稿共37页解程序如下:MAIN:MOV A,#00H ;初值为0MOV DPTR,#0EFFH MOV R0,#0AH ;10个台阶 NEXT:MOVX DPTR,A CALL DELAY;1ms延时 ADD A,#10 ;台阶增长10 DJNZ R0,NEXT ;下一个台阶 SJMP MAIN ;从头开始DELAY:;1ms延时程序(略)机械系统微机控制机械系统微机控制第14页,本讲稿共37页3)双缓冲工作方式 机械系统微机控制机械系统微机控制所谓双缓冲方式,就是把DAC0832的两个锁存器都接成受控锁存方式。为了实现寄存器的可控,应当
9、给寄存器分配一个地址,以便能按地址进行操作。第15页,本讲稿共37页双缓冲方式应用举例双缓冲方式应用举例 双缓冲方式用于多路D/A转换系统,以实现多路模拟信号同步输出的目的。例9-5例如使用单片机控制X-Y绘图仪。X-Y绘图仪由X、Y两个方向的步进电机驱动,其中一个电机控制绘图笔沿X方向运动,另一个电机控制绘图笔沿Y方向运动,从而绘出图形。因此,对X-Y绘图仪的控制有两点基本要求:一是需要两路D/A转换器分别给X通道和Y通道提供模拟信号,二是两路模拟量要同步输出。机械系统微机控制机械系统微机控制第16页,本讲稿共37页机械系统微机控制机械系统微机控制第17页,本讲稿共37页 设X坐标存放在以2
10、0H为首的20H个内存单元中,对应的Y坐标存放在40H为首的20H内存单元中。解两片DAC的输入寄存器地址分别取7FFFH、0DFFFH,两个DAC寄存器的共同地址是0BFFFH。程序如下:START:MOV R0,#20HMOV R1,#40HMOV R7,#20HNEXT:MOV A,R0;取X数值MOV DPTR,#7FFFH机械系统微机控制机械系统微机控制第18页,本讲稿共37页MOVX DPTR,A ;输入X值给第一片 DAC的输入寄存器MOV A,R1 ;取Y值MOV DPTR,#0BFFFHMOVX DPTR,A ;输入Y值给第二片DAC的输入寄存器MOV DPTR,#0DFFF
11、HMOVX DPTR,A ;同时启动数/模转换INC R0INC R1DJNZ R7,NEXTSJMP START机械系统微机控制机械系统微机控制第19页,本讲稿共37页8.28.2模数转换模数转换A/DA/D接口接口机械系统微机控制机械系统微机控制A/D转换器用于实现模拟量数字量的转换,按转换原理可分为4种,即:计数式A/D转换器、双积分式A/D转换器、逐次逼近式A/D转换器和并行式A/D转换器。目前最常用的是双积分式A/D转换器和逐次逼近式A/D转换器。双积分式A/D转换器的主要优点是转换精度高,抗干扰性能好,价格便宜。其缺点是转换速度较慢,因此,这种转换器主要用于速度要求不高的场合。另一
12、种常用的A/D转换器是逐次逼近式的,逐次逼近式A/D转换器是一种速度较快,精度较高的转换器,其转换时间大约在几s到几百s之间第20页,本讲稿共37页通常使用的逐次逼近式典型A/D转换器芯片有:(1)ADC0801ADC0805型8位MOS型A/D转换器(美国国家半导体公司产品)。(2)ADC0808/0809 (2)ADC0808/0809型型8 8位位MOSMOS型型A/DA/D转换器。转换器。(3)ADC0816/0817。这类产品除输入通道数增加至16个以外,其它性能与ADC0808/0809型基本相同。机械系统微机控制机械系统微机控制第21页,本讲稿共37页逐次逼近A/D转换原理:这种
13、转化器是以DA转化器为基础,加上比较器、逐次逼近寄存器、置数选择逻辑电路以及时钟电路组成。转换原理,首先置数选择逻辑电路给逐次逼近寄存器最高位置1,然后由比较器给出结果逐次逼近修改,最后逐次逼近寄存器的内容就是转化后的数字量输出。比较器逐次逼近寄存器置数选择逻辑电路D/A转换器模拟量输入启动控制信号时钟Vref 逐次逼近型结构框图数字量输出机械系统微机控制机械系统微机控制第22页,本讲稿共37页 ADC0809是典型 的8位8通道逐次 逼近式A/D转换 器,CMOS工艺。1.典型A/D转换器芯片ADC0809机械系统微机控制机械系统微机控制第23页,本讲稿共37页1ADC 0809内部逻辑结构
14、及引脚 机械系统微机控制机械系统微机控制第24页,本讲稿共37页 1)输入 输入为8个可选通的模拟量IN0IN7。至于ADC转换器接收用哪一路输入由地址A、B、C控制8路模拟开关实现。2)模/数转换 8位A/D转换器可将输入的模拟量转化为8位数字信号。模/数转换开启时刻有SRART端控制。3)输出 A/D转换器转换的数字量锁存在三态输出锁存器中,当模数转换结束时同时发出EOC信号。机械系统微机控制机械系统微机控制第25页,本讲稿共37页3、8路模拟开关的三位地址选通编码表路模拟开关的三位地址选通编码表ADDA,B,C8路模拟开关的三路模拟开关的三位地址选通输入端,位地址选通输入端,以选择对应的
15、输入以选择对应的输入通道。通道。地 址 码对应的输入通道CBA000011110011001101010101IN0IN1IN2IN3IN4IN5IN6IN7机械系统微机控制机械系统微机控制第26页,本讲稿共37页(1)IN0IN7为8路模拟量输入引脚。(2)D0D7为数据输出线(3)A、B、C为通路选择输入线。(4)ALE为地址锁存信号(5)START为转换启动信号。(6)OE为输出允许信号(7)EOC为转换结束信号(8)CLK为时钟信号(9)VCC为+5V主电源(10)GNDO 接地端(11)VRFE(+)+VRFE(-)为参考电压输入线 机械系统微机控制机械系统微机控制第27页,本讲稿共
16、37页2编程举例A/D转换器的程序设计主要分为下面几步:1)选通模拟量输入通道;2)发启动转换信号;3)用查询、中断或软件延时等方式等待转换结束;4)读取转换结果;5)将转换结果存入RAM,进行数据处理或执行其他程序。机械系统微机控制机械系统微机控制第28页,本讲稿共37页ADC0808/0809与8031单片机的硬件接口有三种方式,查询方式、中断方式和等待延时方式。究竟采用何种方式,应视具体情况,按总体要求而选择。1延时方式机械系统微机控制机械系统微机控制第29页,本讲稿共37页在软件编写时,应令p27=A15=0;A0、A1、A2给出被选择的模拟通道的地址;执行一条输出指令,启动A/D转换
17、;执行一条输入指令,读取A/D转换结果。通道地址:7FF8H7FFFH下面的程序是采用延时的方法,分别对8路模拟信号轮流采样一次,并依次把结果转存到数据存储区的采样转换程序。机械系统微机控制机械系统微机控制第30页,本讲稿共37页 START:MOV R1,50H ;置数据区首地址 MOV DPTR,7FF8H ;P27=0且指向通道0 MOV R7,08H ;置通道数 NEXT:MOVX DPTR,A ;启动A/D转换 MOV R6,0AH ;软件延时 DLAY:NOP NOP NOP DJNZ R6,DLAY MOVX A,DPTR ;读取转换结果 MOV R1,A ;存储数据 INC D
18、PTR ;指向下一个通道 INC R1 ;修改数据区指针 DJNZ R7,NEXT ;8个通道全采样完了吗?。机械系统微机控制机械系统微机控制第31页,本讲稿共37页2)查询方式 A/D转换芯片有表明转换完成的状态信号,例如ADC0809的EOC端。因此,可以用查询方式,软件测试EOC的状态,即可确知转换是否完成,然后进行数据传送。机械系统微机控制机械系统微机控制第32页,本讲稿共37页 查询方式编程举例 下面是采用查询方式分别对8路模拟信号轮流采样一次,并依次把采样结果转储到数据存储区的采样转换程序。MAIN:MOV R1,#data ;置数据区首址 MOV DPTR,#7FF8H ;P2.
19、70,且指向通道0 MOV R7,08H ;置通道数LOOP:MOVX DPTR,A ;启动A/D转换 MOV R2,20H ;延时查询DELY:DJNZ R2,DELY ;(延时60s)结束?DELY1:JB P2.6,DELY1 ;判P2.61?MOVX A,DPTR ;读取转换结果 MOV R1,A ;转储 INC DPTR ;指向下一个通道 INC R1 ;修改数据区指针 DJNZ R7,LOOP ;8个通道采样未完则循环机械系统微机控制机械系统微机控制第33页,本讲稿共37页3)中断方式 机械系统微机控制机械系统微机控制第34页,本讲稿共37页将ADC0808/0809作为一个外部扩
20、展的并行I/O口,直接由单片机的P2.7和脉冲进行启动。通道地址为FEF8HFEFFH用中断方式读取转换结果的数字量,模拟量输入通路选择端A、B、C分别与单片机的P0.0、P0.1、P0.2(经74LS373)相连,CLK由8031的ALE提供。机械系统微机控制机械系统微机控制第35页,本讲稿共37页中断方式编程举例 下面以采集一路为例,编写转换程序:INTIC:SETB ITl ;置外部中断1为边沿触发方式 SETB EA SETB EX1 ;允许外部中断1 MOV DPTR,#7FF8H MOVX DPTR,A ;启动0809对IN0通道进行转换 外部中断1的中断服务程序如下:UNITl:
21、MOV DPTR,#7FF8H MOV A,DPTR MOV 50H,A RETI机械系统微机控制机械系统微机控制第36页,本讲稿共37页机械系统微机控制机械系统微机控制关于关于ADC0808/0809ADC0808/0809最高工作时钟频率的说明最高工作时钟频率的说明由于由于ADC0808/0809ADC0808/0809芯片内无时钟,所以必须靠外部提供时钟;芯片内无时钟,所以必须靠外部提供时钟;外部时钟的频率范围为外部时钟的频率范围为10KHZ1280KHZ10KHZ1280KHZ。在前面的。在前面的ADC0808/0809ADC0808/0809通通过中断方式与单片机接口的电路中,单片机的主频接为过中断方式与单片机接口的电路中,单片机的主频接为6MHZ6MHZ,ALEALE提提供供ADC0808/0809ADC0808/0809的时钟频率为的时钟频率为1MHZ1MHZ(1000KHZ1000KHZ););实际应用系统使用证明,实际应用系统使用证明,ADC0808/0809ADC0808/0809能够正常可靠地工能够正常可靠地工作。但在用户进行作。但在用户进行ADC0808/0809ADC0808/0809应用设计时,推荐选用应用设计时,推荐选用640KHZ640KHZ左右的时钟频率。左右的时钟频率。第37页,本讲稿共37页