资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单,片,机,技,术,第,9,章,MCS-51,单片机的接口技术,9.1,人机通信接口技术,9.2,微机打印机接口技术,9.3 A/D,转换与,A/D,转换器,9.4 D/A,转换与,D/A,转换器,1,9.1.1,键盘接口技术,9.1.2,显示接口技术,9.1.3,键盘、显示组合接口举例,9.1,人机通信接口技术,2,9.1.1,键盘接口技术,为了控制一些系统运行状态,就要向其输入命令或数据,需要键盘实现,键盘:数字键、功能键、组合控制键,以开关状态来设置控制功能或输入数据,1.,键输入过程与软件结构,相应键按下,单片机应用系统应完成该按键所设定的功能,因此与软件相关。由散转指令,JMP,A+DPTR,作为键盘信息输入的软件接口,实现的键输入软件框图如图,9-1,3,图,9-1MCS-51,单片机应用系统键输入软件框图,4,2.,键盘输入接口与软件应解决的任务,1),键开关状态的可靠输入,键盘的操作是利用机械触点的合、断作用。,机械触点的弹性作用,闭合及断开瞬间均有抖动,出现负脉冲,时间,5,10ms,。,去除抖动的措施:硬件,软件:检测到有键按下,执行一个,10ms,的延时程序后,再确认该键电平是否仍保持闭合状态电平,如保持闭合状态电平则可确认有键按下,从而消除了抖动的影响。,5,2),按键编码与键号定义,按键或键盘都通过,I/O,口线查询按键的开关状态。键盘的结构不同,采用的编码也不同。但都要转换为与累加器中的数值相对应的键值,以实现按键功能程序的转移。通过转移指令,JMP,A+DPTR,3),按键监测与编制键盘程序,是否有键按下的检测方式:中断和查询,编制键盘控制程序时应考虑的问题:,(,1,)监测有无按键按下,(,2,)有键按下后,在无硬件去抖动电路时,应用软件延时方法去除抖动影响,(,3,)有可靠的逻辑处理办法,(,4,)给出确定的键号以满足散转指令要求,6,3.,独立式按键,1),独立式按键结构,独立式按键是指直接用,I/O,口线构成的单个按键电路。每根,I/O,口线上按键的工作状态不会影响其他,I/O,口线的工作状态。独立式按键电路如图,9-3,所示。,2),独立式按键的软件结构,下面给出的是查询方式的键盘程序,它只包括按键查询、键功能程序转移。,FUN0,FUN7,为功能程序入口地址标号,.,SUB0,SUB7,分别为每个按键的功能程序。,7,图,9-3,独立式键盘结构,8,Start,:,MOV P1,#0FFH,;置,I/O,口为输入方式,MOV A,,,P1,;读入键状态,CPL A,JZ Start,;无键按下,则返回,JB ACC.0,,,FUN0,;,0,号键按下转,JB ACC.1,,,FUN1,;,1,号键按下转,JB ACC.2,,,FUN2,;,2,号键按下转,JB ACC.3,,,FUN3,;,3,号键按下转,JB ACC.4,,,FUN4,;,4,号键按下转,JB ACC.5,,,FUN5,;,5,号键按下转,JB ACC.6,,,FUN6,;,6,号键按下转,SJMP FUN7,9,FUN0,:,AJMP SUB0,FUN1,:,AJMP SUB1,FUN7,:,AJMP SUB7,SUB0,:,LJMP Start,SUB1,:,LJMP Start,SUB7,:,LJMP Start,10,图,9-4,矩阵式键盘结构,4.,矩阵式键盘,1),矩阵式键盘电路的结构及工作原理,11,2),键盘的工作方式,键盘工作方式有,编程扫描方式和中断扫描方式,.,编程扫描方式,:利用,CPU,在完成其他工作的空余,调用键盘扫描子程序,来响应键输入要求。执行键功能程序时,,CPU,不再响应键输入要求。键盘扫描程序一般应具有下述,4,个功能。,(,1,)判别键盘上有无键按下。,(,2,)去除键的抖动影响。,(,3,)求按键位置。,(,4,)判别按键是否释放。,12,中断扫描方式,:当键盘上有键闭合时产生中断请求,,CPU,响应中断请求后,转去执行中断服务程序,在中断服务程序中判别键盘上闭合键的键号,并做相应的处理。,3),键盘接口举例,下图是一实际键盘接口电路,其配套软件如下:,13,KS:MOV DPTR,,,#7FFFH,;键扫程序,CLR P1.0,;先扫描第一列(,0-7,号键),MOVX A,,,DPTR,;读入按键状态,MOV 37H,,,A,;暂存按键状态,CPL A,JZ KSK1,;,0-7,号键没键操作,.,则跳,LCALL DL20,;,0-7,号键有按键,延时去抖,MOVX A,,,DPTR,;再读按键状态,XRL A,,,37H,;和延时前状态一样吗?,JZ KS1,;一样,则转去查询键号,KSK1:SETB P1.0,;扫描第二列键,8-F,号键,CLR P1.1,MOVX A,,,DPTR,;读入按键状态,MOV 37H,,,A,;暂存按键状态,CPL A,14,JZ KSK2,;,8-F,号键没有键按下,则跳,LCALL DL20,;,8-F,号键有按键,则延时去抖,MOVX A,,,DPTR,;再读按键状态,XRL A,,,37H,;和延时前的状态一样吗,?,JZ KS1,;一样,则转去查询键号,KSK2:AJMP KS9,;,8-F,键不存在键操作,则跳,KS1:MOVX A,,,DPTR;,再读按键状态,CPL A,JNZ KS1,;按键还没有松开,等待松开,MOV A,,,37H,;查询有键操作的键号,JB ACC.0,,,KS2,;不是第一个键,则跳,MOV 37H,,,#00H,;赋键初值,AJMP KS10,KS2:JB ACC.1,,,KS3,;不是第二个键,则跳,MOV 37H,,,#01H,;赋键初值,15,AJMP KS10,KS3:JB ACC.2,,,KS4,;不是第三个键,则跳,MOV 37H,,,#02H,;赋键初值,AJMP KS10,KS4:JB ACC.3,,,KS5,;不是第四个键,则跳,MOV 37H,,,#03H,;赋键初值,AJMP KS10,KS5:JB ACC.4,,,KS6,;不是第五个键,则跳,MOV 37H,,,#04H,;赋键初值,AJMP KS10,KS6:JB ACC.5,,,KS7,;不是第六个键,则跳,MOV 37H,,,#05H,;赋键初值,AJMP KS10,KS7:JB ACC.6,,,KS8,;不是第七个键,则跳,MOV 37H,,,#06H,;赋键初值,16,AJMP KS10,KS8:JB ACC.7,,,KS9,;不是第八个键,则跳,MOV 37H,,,#07H,;赋键初值,AJMP KS10,KS9:SETB ACC.7,;设置键值无效标志,AJMP KS11,KS10:MOV A,,,37H,;取得按键号码,即键值,ANL A,,,#07H,JNB P1.0,,,KS11,;是,0-7,号键,则跳,SETB ACC.3,;是,8-F,键,则置第二列标志,KS11:ORL P1,,,#03H,MOV 37H,,,A,;将键值存入,37H,单元,RET,;返回,17,9.1.2,显示接口技术,1,LED,结构与显示方式,1)LED,显示器结构与原理,LED,显示块是由发光二极管显示字段的显示器件,也称数码管。,在单片机应用系统中通常使用的是七段,LED,。这种显示块有共阴极与共阳极两种,如图,9-6,。,通常的七段,LED,显示块中有八个发光二极管,其中七个发光二极管构成字形,“,8,”,;一个发光二极管构成小数点的,“,”,。七段发光二极管,再加上小数点位,共计,8,段,因此提供给,LED,显示器的字形数据正好一个字节。其对应关系如下:,D7 D6 D5 D4 D3 D2 D1 D0,dp g f e d c b a,18,(,a,)共阴极 (,b,)共阳极 (,c,)管脚配置,图,9-6 7,段,LED,显示块,19,LED,显示块与微机接口非常容易。只要将一个,8,位并行输出口与显示块的发光二极管引脚相连即可。,8,位并行输出口输出不同的字节数据可显示不同的数字或字符,如表,9-1,所示。,通常将控制发光二极管的,8,位字节数据称为段选码或称字形代码,.,公共极称为位选线。,共阳极与共阴极的段选码互为补数。,20,表,9-1,七段,LED,的段选码,21,2)LED,显示器与显示方式,在单片机应用系统中使用,LED,显示块构成,N,位,LED,显示器。图,9-7,是,N,位显示器的构成原理图。,N,位,LED,显示器有,N,根位选线和,8*N,根段选线。根据显示方式不同,位选线与段选线的连接方法不同。,段选线控制要显示什么样的字符,而位选线则控制要在哪一位上显示这个字符。,图,9-7 N,位,LED,显示器,22,LED,显示器有,静态显示和动态显示两种,方式:,LED,静态显示方式,:,当显示器显示某一字符时,相应段的发光二极管恒定地导通或截止,并且显示器的各位可同时显示。,静态显示较小的驱动电流能得到较高的显示亮度。,在静态显示方式下,共阴极或共阳极连接在一起接地或,+5V,;每位的段选线(,a,dp,)分别与一个,8,位并行口相连。(如图,9-8,所示),由于每一位由一个,8,位输出口控制段选码,故在同一时间里,各位可同时显示。,N,位静态显示器要求有,N*8,根,I/O,口线,占用,I/O,口线资源较多。故在位数较多时往往不采用静态显示,而是采用动态显示方式。,23,图,9-8 4,位静态,LED,显示器电路,24,LED,动态显示方式,:,就是一位一位地轮流点亮显示器的各个位。对于显示器的每一位而言,每隔一段时间点亮一次。,在多位,LED,显示时,为了简化电路,降低成本,通常将所有位的段选线并联在一起,由一个,8,位,I/O,口控制,形成段选线的多路复用。而各位的共阴极点或共阳极点分别由相应的,I/O,口线控制。实现各位的分时选通。,图,9-9,就是一个,8,位,LED,动态显示器电路。,8,位,LED,动态显示电路只需要两个,8,位,I/O,口。其中一个口控制段选码,另一个口控制位选。要想每位显示器显示不同的字符,必须采用轮流扫描显示方式。,即在每一瞬间只使某一位显示相应字符。,25,图,9-9 8,位,LED,动态显示器电路,在此瞬间,段选码由控制,I/O,口输出相应字符电平,位选,I/O,口输出位选码以保证该位显示器显示相应字符。如此轮流,使每位显示器轮流显示该位应显示的字符,并延时一段时间,以造成视觉暂留效果。,26,2.,由,MC14543,构成的静态,LED,驱动接口电路,1,),MC14543,引脚功能,MC14543,为,4,线,-,七段译码,/,驱动电路,具有,4,位二进制锁存、,BCD-,七段译码和驱动功能。图,9-10,为该集成电路的引脚图。其各引脚功能如下:,M,:输入线,用来控制输出状态的正反向;,BI,:输入线,用来消隐显示;,LD,:输入线,用来锁存,BCD,码;,D0-D3,:显示数据输入端(,BCD,码);,Ya-Yg,:,BCD-,七段码的译码,/,驱动,输出端;,VDD,接电源,,VSS,接地。,图,9-10,引脚图,27,2,)由,MC14543,构成的静态,LED,驱动接口电路,图,9-11,给出了由,MC14543,构成的静态,LED,驱动接口电路。,从图,9-11,中可以看出,该电路主要由,51,单片机、或非门、,MC14543,、共阴阳数码管组成。,其中,或非门用来产生锁存信号,,MC14543,完成锁存、译码、驱动,数码管则用来显示。,上两个,MC14543,的地址为,0BFFFH,,,下两个,MC14543,的地址为,7FFFH,。,只要给出相应的地址,并在单片机的,P0,口输出,BCD,码,就会在相应的数码管上显示对应的数据该电路具有硬件成本低,配套软件简单等优点。,28,29,9.1.3,键盘、显示器组合接口举例,在单片机应用系统中,键盘与显示是人机通信的最主要方式,因此,键盘与显示设计也是单片机系统必不可少的组成部分。,8155,是一款功能比较强大的,I/O,扩展芯片,图,9-12,是由,8155,组成的典型的键盘与显示接口电路。在图中,,LED,段驱动由,PB,口完成,位驱动由,PA,口完成,而键盘的扫描输出由,PA,口完成,键盘的回扫由,PC,口完成。,LED,采用动态显示、软件译码,键盘采用逐列扫描查询工作方式。,具体配套软件参见书中,P231-234,。,30,31,9.2,微型打印机接口技术,TpP-40A,和,TpP-16A,都是由单片机控制的智能型打印机。,TpP-40A,与,TpP-16A,接口与时序要求完全相同,操作方式也很相近,硬件电路及插脚完全兼容,只是指令代码不完全相同。,TpP-40A,每行打印,40,个字符,,TpP-16A,则每行打印,16,个字符。本节重点介绍,TpP-40A,的接口电路及打印软件,。,9.2.1 Tp,P,40A,主要性能、接口要求与时序,1,、,Tp,P,40A,的主要性能,见教材,P234,32,2,、,Tp,P,40A,的接口要求,TpP-40A,微型打印机与单片机应用系统通过,20,芯扁平电缆及接插件相连,。,打印机,Tp,P,40A,的引脚信号定义如图,9-13,所示。,33,DB0-DB7,:单向数据线,由单片机输入打印机。,STB,:数据选通信号。在该信号的上升沿时,数据线上的,8,位并行数据被打印机读入机内锁存。,BUSY,:打印机,“,忙,”,状态信号。当该信号有效(高电平)时,表示打印机正忙于处理数据。此时,,CPU,不得向打印机送入新的数据。,ACK,(,ACKNOWLEGE,):打印机的应答信号。此信号为有效电平状态(低电平)时,表明打印机已取走数据线上的数据。,ERR,(,ERROR,):,“,出错,”,信号。,当送入打印机的命令格式有错时,打印机立即打印出一行出错信息,以提示操作者注意。在打印机打印出错信息之前,该信号线出现一个负脉冲,脉冲宽度为,30ms,。,34,3,、信号时序,Tp,P,40A,的时序要求如图,9-14,所示。,35,9.2.2,字符代码及打印命令,Tp,P,40A,的字符代码如表所示,打印命令见,P237,。,36,9.2.3,Tp,P,40A,与单片机的接口电路,Tp,P,40A,与单片机的接口电路如图,9-16,所示。,Tp,P-40A/16A,没有读、写信号线,只有一对握手线、,BUSY,,因此,用一根地址线(图中使用,P2.7,)来控制读、写信号选通和读取打印机的,BUSY,状态。,37,9.3 A/D,转换与,A/D,转换器,9.3.1 A/D,转换接口设计要点,完成数据采集应具备基本部件,:,模拟多路转换开关和信号调节电路,采样,/,保持放大器,模拟,/,数字,(A/D),转换器,通道控制电路,.,1,、数据的采集与转换的应用问题,(,1,)采样速度,(,2,)孔径误差,(,3,)系统通过率,(,4,)模,/,数转换精度,38,2,、,A/D,转换器的技术指标,(,1,)量化误差与分辨率,分辨率:以输出二进制位数或者,BCD,码位数表示。,(,2,)转换精度,实际,A/D,转换器在量化值上与理想,A/D,转换器进行,A/D,转换的差值,可表示成绝对误差和相对误差。有非线性误差、失调误差或零点误差、增益误差或标度误差,微分非线性误差等。,(,3,)转换时间与转换速率,A/D,转换器完成一次,A/D,转换所需要的时间;转换速率为转换时间的倒数。,目前,A/D,转换最快的是高速全并行式,A/D,转换器,转换时间可达,20,50ns,,,即转换速率达,20,50M SPS,。,逐次逼近式,A/D,转换器的转换时间达,0.4,s,,即转换速率达,2.5M SPS,。,39,(,4,)失调(零点)温度系数和增益温度系数,表示,A/D,转换器受环境温度影响的程度,一般用每摄氏度温度变化所产生的相对误差作为指标,以,ppm/,为单位表示。,(,5,)对电源电压变化的抑制比,A/D,转换器对电源电压的抑制比(,PSRR,)用改变电源电压使数据发生,1LSB,变化时所对应的电源电压变化范围来表示。,40,3,、,A/D,转换器的选择原则,(,1,)根据前向通道的总误差,选择,A/D,转换器的精度和分辨率。,(,2,)根据信号对象的变化率及转换精度要求,确定,A/D,转换速度,以保证系统的实时性要求。,(,3,)根据环境条件选择,A/D,转换器的一些环境参数要求,如工作温度,功耗,可靠性等性能。,(,4,)根据计算机接口特征,考虑选择,A/D,转换器是并行输出还是串行输出,是二进制还是,BCD,码等。,(,5,)要考虑到芯片的成本,货源是否是主流芯片等诸多因素。,41,9.3.2 A/D,转换器,MC14433,MC14433,的电路结构,MC14433,的引脚及外部应用特性,MC14433,与,MCS-51,单片机接口,42,1,、,MC14433,的电路结构,MC14433,是一款廉价的双积分式,3,(,1/2,),A/D,转换器,其电路结构如图,9-17,所示。,43,2,、,MC14433,的引脚及外部应用特性,MC14433,为,24,脚双列直插式封装,如图,9-18,所示。,44,各引脚的应用特性如下:,电源接入。芯片工作电源为,5V,,正电源端接,VDD(24,端,),,模拟部分负电源端接,VEE,(,12,端),其公共接地端为,Vss,(,13,端)。为提高电源抗干扰能力,正、负电源端分别通过去耦电容,0.047F,、,0.02F,与,Vss,端相接。,基准电压输入。基准电压需外接。可由,5G1403,通过分压提供,+2V,或,+200 mV,基准电压。基准电压输入端为,VR(2,端,),。接地端为,VAG,(模拟地,1,端)。,被测信号输入。由,Vx,引入(,3,端),其接地端为,VAG(,模拟地,),,被测电压量程为,1.999V,或,199.9 mV,。,外接振荡器电阻。,Rc,接入,CLK1,和,CLK0(10,、,11,端,),。,RC,典型值为,470k,。时钟频率随,Rc,增加而下降。,45,外接积分阻容元件。外接元件典型值为:,量程为,2V,时,,C1=0.1F,,,R1=470 k,量程为,200 mV,时,,C1=0.1F,,,R1=27 k,接入,R1,、,R1/C1,、,C1(4.5,和,5.6,端,),。,外接失调补偿电容,C0,。,C0,典型值为,0.1F,,接至,C01,、,C02(7.8,端,),。,转换标志输出。转换标志有转换周期结束标志由,EOC(14,端,),输出,当转换周期结束,,EOC,端输出一个宽度为时钟周期,1/2,的正脉冲;,OR,过量程标志由(,15,端)输出,当,|Vx|VR,时,,OR,输出低电平。,转换更新控制。更新转换结果输出的控制端为,DU(9,端,),。当,DU,与,EOC,连接时,每次,A/D,转换结果都被更新。,46,转换结果的输出。转换结果以,BCD,码形式分时按千、百、十、个位由,Q0-Q3(20-23,端,),送出,相应的选通信号由,DS1-DS4(19-16,端,),提供。每个选通脉冲宽度为,18,个时钟周期,相邻选通脉冲之间间隔为,2,个时钟脉冲。图,9-19,是选通脉冲时序图。,47,3,、,MC14433,与,MCS-51,单片机接口,图,9-20,是,MC14433,与单片机接口电路,配套软件见,P245,。,48,9.3.3 A/D,转换器,MAX197,MAX197,是一款多量程、,12,位,DAC,芯片,工作电压仅为,5V,;即接收高于电源电压的模拟信号,又可接收低于地电位的模拟信号;芯片有,8,个独立的模拟输入通道;对输入的模拟信号提供了四个可编程输入量程:,10V,,,5V,,,0,到,+5V,,,0,到,+10V,,四个量程将有效的动态输入范围增加到了,14,位;为,4-20mA,信号和由,12V,或,15V,供电的传感器到单,5V,系统提供了灵活的接口;芯片具有,5MHz,带宽,,100KSPS,吞吐率,内,/,外部时钟及内,/,外部启动选择,,8+4,并行数据接口,内部,4.096V,或外供参考电压。软硬件控制低电流关断模式。,8,位三态数据,I/O,口,其输入输出皆与,TTL,或,CMOS,逻辑电平兼容。,49,1,、,MAX197,特性,(,1,),12,位分辨率,,1/2LSB,线性度;,(,2,)单,5V,供电;,(,3,)软件可编程选择输入量程:,10V,,,5V,,,0,+5V,,,0,+10V,(,4,)输入多路选择器保护:,16.5V,;,(,5,),8,路模拟输入通道;,(,6,),6s,转换时间,,100 KSPS,采样速率;,(,7,)内,/,外部采集控制;,(,8,)内部,4.096V,或外部参考电压;,(,9,)两种掉电模式;,(,10,)内部或外部时钟。,50,2,、,MAX197,封装与引脚定义,其引脚封装图见图,9-21,。,其引脚定义描述如下:,51,1,脚(,CLK,):时钟输入。外部时钟模式时,由此脚输入电平与,TTL,或,CMOS,兼容的时钟。内部时钟模式时,该脚与地间接一电容,以确定内部时钟频率,当,f,CLK,=1.56 MHz,时,外接电容的典型值为,C,CLK,=100 pF,。,2,脚():片选线,低有效。,3,脚():当 为低时,在内部采集模式下,的上升沿将锁存数据,并启动一次采集和一次转换周期;在外部采集模式下,的第一个上升沿启动采集,第二个上升沿结束采集并启动转换周期。,4,脚():当 为低时,的下降沿将允许读取数据总线上的数据。,5,脚(,HBEN,):用于切换,12,位转换结果。此脚为高时,数据总线上的数据为高四位;此脚为低时,数据总线上的数据为低八位。,52,6,脚():关断控制位。此脚接低电平时,器件进入掉电模式(,FULLPD,)。,7-10,脚(,D7-D4,):三态数字,I/O,口。,11,脚(,D3/D11,):三态数字,I/O,口。,HBEN,为低时,输出,D3,;,HBEN,为高时,输出,D11,。,12,脚(,D2/D10,):三态数字,I/O,口。,HBEN,为低时,输出,D2,;,HBEN,为高时,输出,D10,。,13,脚(,D1/D9,):三态数字,I/O,口。,HBEN,为低时,输出,D1,;,HBEN,为高时,输出,D9,。,14,脚(,D0/D8,):三态数字,I/O,口。,HBEN,为低时,输出,D0,;,HBEN,为高时,输出,D8,。,15,脚(,AGND,):模拟地。,16-23,脚(,CH0-CH7,):模拟输入通道,。,53,24,脚():当转换完成,且数据准备就绪时,变低。,25,脚(,REFADJ,):能隙参考电压输出,/,外部调节引脚。使用内部参考时,对地接,0.01,F,的旁路电容;使用外部参考时,此脚接,VDD,。,26,脚(,REF,):参考电压缓冲输出或,ADC,参考电压输入。在内部参考模式下,由此脚提供一个,4.096V,的标准输出,可由,REFADJ,脚进行外部调节;在外部参考模式下,,REFADJ,接至,VDD,,内部缓冲器处于禁止状态。,27,脚(,VDD,):,+5V,电源,对地接,0.1,F,的旁路电容。,28,脚(,DGND,):数字地。,54,3,、接口、控制字与时序,MAX197,为微处理器提供了非常简单的接口,图,9-22,给出了,MAX197,与单片机之间最简单的接口电路图。转换从写入控制字开始。转换完成给出标准的中断信号。,其控制字及各位的定义如下:,D7 D6 D5 D4 D3 D2 D1 D0,PD1 PD0 ACQMOD RNG BIP A2 A1 A0,控制字中的,D5,位决定采集控制模式:置,0,时,为内部采集控制模式,相应时序如图,9-23,所示;置,1,时,为外部采集控制模式,相应时序如图,9-23,所示。,55,图,9-22 MAX197,与单片机的接口电路,56,下图是,MAX197,的一个实际应用接口电路图。,57,9.3.4 A/D,转换器,0809,1,、,ADC0809,转换器的结构,ADC0809,是,CMOS,集成电路的逐次逼近型,A/D,转换器,其精度为,8,位,双列直插式,28,引脚封装。由模拟多路转换器,A/D,转换器,三态输出锁存及地址锁存译码器等组成,见图,9-26,。,58,59,2,、,ADC0809,的引脚功能,A/D0809,的引脚图如图,9-27,。,IN0,IN7,:,8,个输入通道的模拟量输入端,D0,D7,:,8,位数字量输出端,START:START,为启动,控制输入端;,ALE,:,ALE,为地址锁,存控制信号端;,这两个信号端可以连接,在一起,当通过程序输,入一个正脉冲时,便立,即开始模,/,数转换,60,EOC,,,OE,:,EOC,为转换结束脉冲输出端;,OE,为输出允许控制端;这两个信号端可连接在一起,表示模,/,数转换结束,,EOC,端的电平由低变高,打开三态输出锁存器将转换结果的数字量输出到,D0,D7,端。,CLOCK,:时钟输入端,VREF,(,+,),,VREF,(,-,),,VCC,,,GND,A,,,B,,,C,:,8,路模拟开关的三位地址输入端。,地址与输入通道的对应关系如下:,A,B,C,通 道,0,0,0,0,0,1,1,1,1,IN1,IN0,IN7,61,3,、,MCS-51,与,ADC0809,的硬件连接,ADC0809,为多通道,A/D,转换芯片,适用于多通道的数据采集。下图为,ADC0809,与,CPU,在中断方式下的接口电路,62,图中,ADC0809,作为一个外部扩展并行,I/O,口,采用线选地址方式。设,ADC0809,的口地址为,FEFFH,,采用中断控制方式,由外部中断,1,的服务程序读取转换结果并启动下一次转换。其程序如下:,INT1,:,SETB IT1,SETB EA,SETB EX1,MOV DPTR,,,#0FEFFH,MOV A,,,#00H,MOVX,DPTR,,,A;,启动,0809,对,INT1,的转换,63,其中断服务程序如下:,PINT1,:,MOV DPTR,,,#0FEFFH,MOVX A,,,DPTR ;,读,A/D,转换结果送,50H,单元,MOV 50H,,,A,MOV A,,,#00H,MOVX,DPTR,,,A ;,启动,0809,对,INT1,的转换,RETI,64,9.3.5 A/D,转换器,TLV2548,TLV2548,是一款多通道、,12,位数据采集芯片,(ADC,)单电源,2.7V-5.5V,供电,转换时间为,3.86S,串行接口的,A/D,转换器。内部结构如下图所示。,65,1,、,TLV2548,特点,(,1,),12,位分辨率,微分,/,积分非线性误差,1LSB,;,(,2,)单电源,2.7V-5.5V,宽范围供电电源,内置参考源;,(,3,)内置转换时钟源及,8FIFO,;,(,4,),8,路模拟输入,模拟输入范围为,0,到电源电压,,500KHz,带宽;,(,5,),SPI,(,CPOL=0,,,CPHA=0,),/DSP,兼容串行接口,,SCLK,可高达,20MHz,;,(,6,),200KSPS,采样速率,,3.86S,转换时间;,(,7,)低工作电流(,1.0mA,,,3.3V,时;,1.1mA,,,5.5V,,外供参考源时);,(,8,)软,/,硬件控制采样周期及掉电方式;,(,9,)可编程自动通道扫描。,66,2,、,TLV2548,封装与引脚描述,TLV2548,具有两种不同的封装形式:,20TSSOP,(,PW,)和,20SOIC,(,DW,)封装。其引脚图见图,9-32,。引脚定义描述如下:,SDO,:三态,A/D,转换结果串行数据输出端,高位在先;,SDI,:串行数据输入端,高位在先,前四位为命令输入;,SCLK,:串行口工作时钟输入端;,EOC/INT,:转换结束或向主处理器申请中断信号,VCC,:供电电源正端;,A0-A7,:模拟信号输入端,信号源内阻 大于,1K,时,应使用异步转换启动信号或展宽采样模式;,67,CSTART,:异步转换启动信号,上升沿控制开始,下降沿控制结束;,GND,:电源地端。,PWDN,:掉电模式控制,逻辑,0,置内部模拟及参考源电路掉电模式;,FS,:,DSP,幀同步信号;,REFM,:外部参考源输入或内部参考源去耦,使用内部参考时,此脚接地;,REFP,:外部参考源输入或内部参考源去耦,在,REFP,与,REFM,之间并联,10F,及,0.1F,的电容;,CS,:片选信号。,68,3,、数据格式、命令集与结构寄存器,4,、转换条件、转换模式与时序,5,、,TLV2548,与单片机硬件接口见下图。,69,9.4 D/A,转换与,D/A,转换器,9.4.1 D/A,转换接口设计要点,1,、,D/A,转换器的选择原则,(,1,)主要性能指标,主要性能指标有在给定条件下的静态指标,动态指标,环境条件指标,转换精度和转换时间。,(,2,),D/A,转换器结构特点与应用特性的选择,主要有:数字输入特性中的接收数码制、数据格式、逻辑电平等;模拟输出特性中的参考电压、参考电阻、满码输出,以及最大输出短路电流和输出电压范围;锁存特性及转换特性;影响输出电压的参考源。,70,2,、参考电压源的配置,对于配有参考电压源的,D/A,转换器而言,就用其内部的参考电压源设计;对内部没有配备参考电压源的,D/A,转换器而言,设计时就要考虑参考电压源。最常见的参考电压源器件是:,恒压源的参考电压源。这种器件的特点是:,输出电压低,一般为,2.5V,或,1.25V,,而输入电压为,5,15V,,温度系数为,20,10,-6,/,。,3,、输入与模拟输出电压的变换特性,输出模拟电压:,V,O,=,DV,r,D/A,转换器的模拟输出皆为电流量,要经过一个反相放大器才能转换成模拟电压输出。则,V,0,=-,DV,r,(,0D1,),71,4,、,D/A,转换器性能指标,(,1,)分辨率:当输入数字发生单位数码变化时,即,LSB,位产生一次变化时,所对应的输出模拟量(电压或电流)的变化量。,(,2,)量程和实际满量程:标称满量程(,NFS,)是指相应于数字量指标值,2,n,的模拟输出量。但实际数字量最大为,2n-1,,要比标称值小一个,LSB,,因此实际满量程(,AFS,)要比标称满量程(,NFS,)小一个,LSB,的增量。,(,3,)精度:,D/A,转换器的转换精度与,D/A,转换芯片的结构和接口配置的电路有关。一般,,D/A,转换器的转换精度即为分辨率的大小。,(,4,)建立时间:输入数字量变化后模拟输出量稳定到相应数值范围内所需的时间(,ts,)。,(,5,)尖峰:输入码发生变化时刻产生的瞬间误差。,72,9.4.2 D/A,转换器,DAC0832,1,、,DAC0832,的结构与应用特性,DAC0832,的逻辑结构及管脚号如图,9-44,所示。它由,8,位输入锁存器、,8,位,DAC,寄存器、,8,位,D/A,转换电路及转换控制电路组成。为,20,脚双列直插式封装结构。,DAC0832,各管脚的功能描述如下:,DI0-DI7,:,8,位数据输入端;,ILE,:数据允许锁存信号;,/CS,:输入寄存器选择信号;,/WR1,:输入寄存器写选通信号,输入寄存器的锁存信号由,ILE,、,CS,、,WR,的逻辑组合产生,,LE1,为高电平时,输入寄存器状态随输入数据线变化,,LE1,的负跳变将输入数据锁存;,73,74,/XFER,:数据传送信号;,/WR2,:,DAC,寄存器的写选通信号。,DAC,寄存器的锁存信号,LE2,由,XFER,和,WR2,的逻辑组合而成。,LE2,为高电平时,,DAC,寄存器的输出随寄存器的输入而变化,,LE2,的负跳变时,输入寄存器的内容打入,DAC,寄存器并开始,D/A,转换;,VREF,:基准电源输入端;,RFB,:反馈信号输入端;,I,OUT1,:电流输出端,1,,其值随,DAC,的内容线性变化;,I,OUT2,:电流输出端,2,,,I,OUT1,+I,OUT2,=,常数;,VCC,:电源输入端;,AGND,:模拟地;,DGND,:数字地,。,75,2,、,DAC0832,和,MCS-51,单片机的接口方法,(,1,)单缓冲器方式接口,图,9-46,是单缓冲方式接口电路。,76,将,ILE,接,+5V,,寄存器选择信号,CS,及数据传送信号,XFER,都与,P2.7,相连,两级寄存器的写信号都由,8031,的,WR,端控制。当地址线选择好,0832,后,只要输出,WR,控制信号,,0832,就能一步完成数字量的输入锁存和,D/A,转换输出。,由于,0832,具有数字量的输入锁存功能,故数字量可以直接从,P0,口送入。,执行下面几个指令就能完成一次,D/A,转换:,MOV DPTR,,,#7FFFH,;指向,0832,MOV A,,,#data,;数字量装入累加器,MOVX DPTR,,,A,;数字量从,P0,口送,0832,,完,成一次,D/A,输入与转换。,77,(,2,)缓冲器同步方式接口,对于多路,D/A,转换接口,要求同步进行,D/A,转换,输出时,必须采用双缓冲器同步方式接法。,0832,具有这种接法时,数字量的输入锁存和,D/A,转换输,出是分两步完成的,即,CPU,的数据总线分时地向各,路,D/A,转换器输入要转换的数字量并锁存在各自的,输入寄存器中,然后,CPU,对所有的,D/A,转换器发出,控制信号,使各个,D/A,转换器输入寄存器中的数据,同时打入,DAC,寄存器,实现同步转换输出。,图,9-47,是一个二路同步输出的,D/A,转换器及接口,电路。,P2.5,和,P2.6,分别选择两路,D/A,转换器的输入,寄存器,控制输入锁存;,P2.7,连到两路,D/A,转换器,的,XFER,端控制同步转换输出;在执行,MOVX,输出指,令时,,8031,自动输出,WR,控制信号。,78,双缓冲同步方式接口电路,79,执行下面指令可完成两路,D/A,的同步转换输出。,MOV DPTR,,,#0DFFFH,;指向,0832,(,1,),MOV A,,,#data1,;,#data,送,0832(1),中锁存,MOVX DPTR,,,A,MOV DPTR,,,#0BFFFH,;指向,0832,(,2,),MOV A,,,#data2,;,#data,送,0832(2),中锁存,MOVXDPTR,,,A,MOV DPTR,,,#7FFFH,;给,0832(1),0832(2),提,MOVX DPTR,,,A,;供,WR,信号,同时完成,D/A,转换输出。,80,3,、,D/A,转换的典型接口电路,两路异步输出的波形发生器接口电路见图,9-48,。,/WR1,与,8031,的,/WR,相连。图中参考电压为,+5V,,未画出。,8031,的其它电路及引脚也被省略。按照图中连线,,0832,(,1,)的地址为,DFFFH,,,0832,(,2,)的地址为,BFFFH,。输出的双极性电压为,5V,。,双极性,D/A,转换输出可获得反向锯齿波、正向锯齿波和双向锯齿波信号输出,如图,9-49,所示。,81,82,反向锯齿波程序清单:(使用,0832,(,1,),MOVDPTR,,,#0DFFFH,DA1,:,MOVR6,,,#80H,DA2,:,MOVA,,,R6,MOVXDPTR,,,A,DJNZ R6,,,DA2,AJMP DA1,正向锯齿波程序清单:,DA1,:,MOV,DPTR,,,#0DFFFH,MOVR6,,,#80H,DA2,:,MOVA,,,R6,MOVXDPTR,,,A,INC,R6,CJNE R6,,,#0FFH,,,DA2,AJMP DA1,83,双向锯齿波程序清
展开阅读全文