【教学课件】第五章MCS-51单片机的接口技术.ppt

上传人:小飞机 文档编号:5662579 上传时间:2023-08-07 格式:PPT 页数:70 大小:841KB
返回 下载 相关 举报
【教学课件】第五章MCS-51单片机的接口技术.ppt_第1页
第1页 / 共70页
【教学课件】第五章MCS-51单片机的接口技术.ppt_第2页
第2页 / 共70页
【教学课件】第五章MCS-51单片机的接口技术.ppt_第3页
第3页 / 共70页
【教学课件】第五章MCS-51单片机的接口技术.ppt_第4页
第4页 / 共70页
【教学课件】第五章MCS-51单片机的接口技术.ppt_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《【教学课件】第五章MCS-51单片机的接口技术.ppt》由会员分享,可在线阅读,更多相关《【教学课件】第五章MCS-51单片机的接口技术.ppt(70页珍藏版)》请在三一办公上搜索。

1、第五章 MCS-51单片机的接口技术,5-1接口技术中的一般方法,5-4键盘与单片机接口技术,5-2D/A转换电路接口技术,5-5LED 显示器接口技术,5-3A/D转换电路接口技术,5-6打印机接口技术,5.1接口技术中的一般方法,5.1接口技术中的一般方法,5.1.1接口指令 MCS-51系列单片机的I/O端口由于没有独立编址,而是与外部的数据存储器统一编址,其最大空间为64K,也没有专用的I/O指令,而是采用外部数据RAM的指令来实现接口地址的选通与数据的传送。若需要I/O端口不多,则可利用P口(P0P3)直接与外部设备进行数据交换。因此 MCS-51系列单片机只能将I/O接口作为外部数

2、据存储器的指定单元来访问,其接口指令也就是单片机与外部数据RAM单元之间的数据传递指令。例如:MOVX A,Ri(i=0,1)MOVX Ri,A(i=0,1)MOVX A,DPTRMOVX DPTR,A,程序说明:1、采用寄存器间接寻址方式进行寻址。2、借助累加器A与接口传送数据。3、端口地址为16位地址。,例题1:试编制一段单片机汇编程序,将地址为0A8BH端口上的数据输入。方法1:MOV P2,#0AH MOV R0,#8BH MOVX A,R0方法2:MOV DPTR,#0A8BH MOVX A,DPTR例题2:试编制一段单片机汇编程序,将累加器A中的数据输出到地址为1FFFH端口上。方

3、法1:MOV P2,#1FH MOV R1,#FFH MOVX R1,A方法2:MOV DPTR,#1FFFH MOVX DPTR,A,5.1.2 输入/输出的数据交换方式 MCS-51系列单片机与外围电路及芯片连接好接口后在什么状态下做数据交换?通常的方式有四种:1、无条件方式;无条件方式是单片机与外围电路不存在准备状态的限制条件,立即就可做数据交换的方式。例如外接的LED发光二极管2、延时方式;(外围芯片有片选端、启动端、状态端)延时方式是指在I/O数据交换之前,先由单片机发出启动外围电路的命令,作相应的延时后再作I/O数据交换。这样可以使外围设备有足够的时间准备好I/O数据交换(例如将数

4、据备好)。3、查询方式;(外围芯片有片选端、启动端、状态端)查询方式使用软件来查询外围电路的数据是否做好了准备。未做好准备,就作进一步的查询或者隔一段时间后再查询,直到外围电路作好了准备才做I/O数据交换。例如打印机,4、中断方式;中断方式是利用中断来进行I/O数据交换。当外围电路需要与单片机交换数据时,发出中断请求信号,单片机响应后,在中断服务程序中作I/O数据交换.,可采用的方式有:1、延时方式;2、查询方式;3、中断方式;,例子:单片机与A/D转换器的各种数据交换方式。,中断,启动端,状态端,5.1.3 地址的译码(找出的某种可启动外围电路电位组合)MCS-51系列单片机的外部数据RAM

5、和I/O端口统一编址,为了区别不同对象的数据,必须使所有的这些外部电路有不同的地址。确定I/O端口的方法有线选法和译码法:1、线选法:1.1定义:线选法是指把单片机单根“地址线”直接连接到外围电路芯片或外设的片选端(启动端),以此获得一确定的“地址”信号,有次序接通该外围电路(这样外设才会受到CPU的控制)。1.2特点:线选法接线简单,但是由于线选法通常都利用高位地址线(P2口),因此,可控地址太少,地址空间未能充分利用,只有单片机外接少量外围电路时才选用线选法。,例:CLR P2.3就选定6116芯片:使其工作接通(6116芯片的地址是使P2.3为低电位的各种方法),XXXX0XXXB,MO

6、V P2,#,例如:使芯片6264工作,需要其CE为低电位,使P2.5/P2.6/P2.7均为低电位就行,MOV P2,#000*B能使6264工作,000*就是其地址。,选通条件自动满足,译码器74LS138的功能表:,选通端,5.2D/A转换电路接口技术,5.2.1 D/A转换器的作用 D/A转换器的作用是将数字量信号转换成与数字量成正比的模拟量信号。D/A转换芯片的转换时间一般在几十个纳秒至几微秒之间。(注意D/A转换的量程)D/A转换芯片转换精度按照芯片的位数分为8位、10位、16位。,5.2.2 D/A转换原理 D/A转换的基本原理是将数字量的每一位代码按权大小换成模拟分量,然后根据

7、叠加原理将各代码对应的模拟输出分量相加。实现转换的电路有:权电阻网络,倒T型电阻网络:,10000001,0.501V电压,满量程1V,权电阻网络如下图:权电阻网络(4位D/A转换),1、加权电阻网络的组成:1个4位切换开关,4个加权电阻,1个运算放大器,1个比例反馈电阻Rf。,2、放大电路的计算:Vout=-Vr*Rf/R,3、加权电阻的阻值分配比例:8:4:2:14、加权电阻网络的输出电压:Vo=-Vr*Rf(d3/R+d2/2R+d1/4R+d0/8R)5、加权电阻网络D/A转换的缺点:在加权电阻网络中,相邻电阻的阻值差距较大,不便于在集成电路中制作,当需要转换的数字信号的位数较多时,加

8、权电阻的数量更多,同时最大与最小电阻的阻值之比会更大,故该电路不适合在集成电路中应用。,倒T型电阻网络(4位D/A转换):,倒T型电阻网络等效电路图:,倒T型电阻网络的计算:I=Vref/RI0=Vref/16R;I1=Vref/8R;I2=Vref/4R;I3=Vref/2RVout=-Rf*Ii*Di=-Rf*(Vref/16R)*2i*Di,3,i=0,i=0,3,D/A转换器的主要特性:不同的DAC芯片有着不同的特点和指标、从接口的角度考虑DAC有以下特点:(1)输入数据位数:经常用的DAC芯片有8位、10位、12位、14位,在与单片机接口时,将分为8位和大于8位的DAC两种情况考虑(

9、为什么?)(2)接口电平:由于单片机的接口电平与74系列逻辑电路的电平均为TTL电平。因此应用DAC芯片时,应选用TTL接口电平的芯片。(3)输出电压范围:DAC的输出有电流输出和电压输出之分。对于电流输出的DAC则需外加电流电压转换器电路(运算放大器),这时电压的输出范围不仅与DAC的Vref有关,也与电流电压转换器有关。输出电压范围为05V,010V,士5V,士10V等。(4)输出电压极性:输出电压极性有单极性和双极性之分。如05V、010V为单极性输出,士5v、士10V为双极性输出。,D/A转换器的主要指标:(1)分辨率。表征DA转换器对微小输入量变化的敏感程度,常用数字量的数位表示如8

10、位,12位,14位等,分辨率为10位的D/A转换器表示它可以对满量程的1/210即1/1024作出反应。(2)相对精度。在满刻度已校准的前提下,在整个刻度范围内,对应于任一数码的模拟量输出与它的理论值之差。通常用偏差几个LSB来表示和该偏差相对满刻度的百分比表示。(3)转换时间。数字变化量是满刻度时,达到终值士LSB2时所需的时间,通常为几十纳秒至几微秒。(4)线性误差通常给出在一定温度下的最大非线性度,一般为 0.010.03。,5.2.3 DAC0832与单片机的接口:DAC0832是8位分辨率的DA转换集成芯片,与微处理器完全兼容。此芯片以其价格低廉、接口简单、转换控制容易等优点,在单片

11、机应用系统中得到了广泛的应用,它由8位输入锁存器、8位DAC寄存器、8位DA转换器电路及转换控制电路构成。,1、DAC0832的主要特性(1)分辨率为8位。(2)转换时间为l us。(3)可单缓冲、双缓冲或直接数字输入。(4)只需在满量程下调整其线性度。(5)逻辑电平输入与TTL兼容。(6)单一电源供电(515V)。(7)低功耗0.2 mW。2、DAC0832的引脚功能DAC0832 芯片的逻辑框图和引脚如图所示。DAC0832 各引脚的功能如下:(1)DI0DI7为8位数字量输入线。(2)CS为片选信号。低电平有效,与ILE相配合可对写信号WR1是否有效起到控制作用。(3)WR1为写信号1,

12、低电平有效。当CS、WR1、ILE均有效时可将数据写入8位输入锁存器。,(4)ILE为允许输入锁存信号,高电平有效。输入锁存器的锁存信号LE1由ILE、CS、WR1的逻辑组合产生,当ILE为高电平,CS 为低电平,WR1输入负脉冲时在LE1上产生正脉冲,当LE1为高电平时,输入锁存器的状态随数据输入线的状态变化,LE1的负跳变将数据输入线上的信息锁入输入锁存器。(5)WR2为写信号2,低电平有效,当WR2有效时,在XFER传送控制信号作用下,可将锁存在输入锁存器的8位数据送到DAC寄存器。(6)XFER 为数据传送信号,低电平有效。当WR2,XFER 都有效时,则在LE2产生正脉冲;LE2为高

13、电平时,DAC 寄存器的输出和输入的状态一致,LE2的负跳变使输入锁存器的内容锁入DAC寄存器。(7)Vref为基准电源输入端。它与DAC内的权电阻解码网络相接。Vref 可在士10V范围内调节。(8)Rfb为反馈电阻输入端。反馈电阻在DAC0832芯片内部,可用作外部运放的分支反馈电阻。,(9)Iout1和Iout2为电流输出端。电流Iout1与Iout2的和为常数。Iout1与Iout2随DAC寄存器的内容线性变化。(10)Vcc为电源输入端,AGND为模拟信号地,DGND为数字地。,3、DAC0832与8031单片机的接口设计:MCS-51单片机与DAC0832的接口有3种连接方式,即直

14、通方式、单缓冲方式及双缓冲方式。直通方式不能直接与系统的数据总线相连,需另加锁存器,故较少应用。下面介绍单缓冲与双缓冲两种连接方式。1单缓冲方式接口(直接用线选法)所谓单缓冲方式就是使DAC0832的两个输入寄存器中有一个处于直通方式,而另一个处于受控的锁存方式,当然也可使两个寄存器同时选通及锁存。若应用系统中只有一路D/A转换或虽然是多路转换,但并不要求同步输出时则采用单缓冲脉冲方式。接口如下图所示:图中ILE接十5V,片选信号CS和数据传送信号XFER都与地址选择P2.7相接,输入锁存器和DAC锁存器地址都可选为7FFFH,写信号WR1和WR2都和8031的写信号WR相接,当CPU对803

15、1执行一次写操作,就能把一个数字量输入锁存和DAC转换输出,图中Iout1经F007运算放大器,以输出一个单极性电压,其范围为025V。,DAC0832的3种单缓冲连接方式(a)DAC寄存器直通方式;(b)输入寄存器直通方式;(c)两个寄存器同时选通及锁存方式,CPU自带,为其分配合适的地址P2.7=0,P0,执行下面一段程序将在运算放大器输出端Vout端口得到一个三角波电压。ORG 8100H MOV DPTR,#7FFFH;0832的接口地址Lop:MOV R2,#0FFH MOV A,#00HLOOP1:MOVX DPTR,A;P2=01111111 INC A DJNZ R2,LOOP

16、l MOV R2,#0FEHLOOP2:DEC A MOVX DPTR,A DJNZ R2,LOOP2 AJMP LOOP1,CS/XFER,产生WRI,2、双缓冲同步方式接口 DAC0832可工作于双缓冲方式。对于多路DA转换接口,要求同步进行DA转换输出时,必须采用多缓冲器同步方式接法。DAC0832采用这种接法时,数字量的输入锁存和 DA转换输出是分两步完成的,即CPU的数据总线分时地向各路DA转换器输入要转换的数字量并锁存在各自的输入寄存器中,然后CPU对所有的DA转换器发出控制信号,使各DA转换器输入锁存器中的数据打入DAC寄存器,实现同步转换输出。,DAC0832的双缓冲连接方式图

17、,5.2.4 AD7520芯片与MCS8031单片机的接口设计 AD7520是一种廉价的10位DA转换器,结构简单,通用性好,配置灵活,故被广泛应用,但其片内不带数据锁存器。1、AD7520的特性(l)分辨率为10位或12位;(2)转换时间,典型值为500ns;(3)只要调整零点和满刻度就可能确定其线性度;(4)在整个满刻度范围内可确保非线性度;(5)可直接与TTL及COMS电路接口,(6)低功耗,十15v时10mw;(7)采用固定或可变的基准电压;(8)电源电压为十5十15v。2、AD7520的引脚如图所示,中B1一B10为10位数据输入线;V+为主电源输入端(5十15);VR为参考电压输入

18、端(一10十10V);RFB为反馈电阻输入端;GND为数字地;Iout1,Iout2为电流输出端。,由于AD7520是电流输出型的DA转换器,所以实际应用中都应配接电压输出电路。3、AD7520与8031单片机的接口 AD7520芯片内部不带锁存器,故必须通过10口才能与8031单片机联接,其接口电路如图所示、由于8031单片机的字长是8位,一次只能传送8位数据,因此803必须进行两次操作才能把完整的10位数据送人AD7522、为了使10位数据能够同时送入AD7520,以避免输出电压波形出现毛刺现象,故必须采用双缓冲据接口方式。由于AD7520是电流输出型的,所以用运放LF351转换成单极性电

19、压输出。8031单片机先把高二位数据输出到74LS74(l),接着把低8位数据输出到74LS377,与此同时74LS377的片选信号也作为74LS74(2)的时钟脉冲,把74LS74(l)的内容打入74LS74(2)中,从而使个完整的数据同时到达AD752O的10位数据输入端,消除了AD7520输出端的毛刺现象。图中74LS74(l)的口地址为0BFFH,74LS74(2)和74LS377的口地址均为7FFFH。,5-3A/D转换器接口,1、什么是A/D转换器A/D转换器就是模数转换器,其功能是把模拟信号转换成数字形式,这样微处理机就能够从传感器或其他模拟信号获得信息。AD转换器的种类很多,但

20、目前应用较广泛的主要有三种类型:逐次逼近式AD转换器、双积分式AD转换器、VF变换式AD转换器。下面简要介绍前两种AD转换器的基本原理。2、逐次逼近式AD转换器原理逐次逼近式AD转换器的基本原理是用一个计量单位使模拟量整量化(简称量化),即用计量单位与连续量比较,把连续量变为计量单位的正整数倍,省略小于计量单位的连续量部分。由比较器、DA转换器、输出锁存器组成。在此,计量单位越小,量化的误差也就越小。,0.501V,10000001,组成:,逐次逼近寄存器SARDA转换器比较器时序(时钟)置数选择逻辑,工作过程:,如果Ui UO,应予保留;如果Ui UO,应予清除。直到最末位为止,例:设:数码

21、寄存器为4位,满刻度值1v,设Vi=0.65v,用逐次逼近式A/D转换器转换成二进制数。,量化单位转换成二进制数1010,逐次逼近的A/D转换器的主要优点是转换速度比较快,此外与有同样分辨率的双积分型转换器比较,它不需要高精度的运算放大器,而且成本也较低。但抗干扰性较差,这种形式的模数转换器在单片机系统中被广泛应用。3、双积分式AD转换器原理 双积分式AD转换器,一般具有精度高,抗干扰性好,价格便宜等优点,但转换速度慢。方法:测量模拟输入电压向电容充电的固定时间及测量在已知标准电压下放电所需的时间。,下图为双积分式AD转换器工作原理图,它由电子开关、积分器、比较器、计数器和控制逻辑等组成。其电

22、路的工作原理如下:电路由外来的启动信号启动后,未知的输入模拟电压Uin被加到积分电路进行固定时间的积分(充电),同时计数器开始对时钟脉冲进行计数。这时计数器是作为定时器来使用的。当计满一个预先规定的固定值之后(通常这段时间约为整个转换周期的三分之一),则将极性相反的标准电压加到积分电路上,积分电路从刚才积分的终值开始进行反向积分(放电)。与此同时,计数器清零并重新开始对时钟脉冲计数,直至积分器输出到达零(放电完毕),使计数器停止计数(取得数字信号)。这时控制逻辑电路向CPU发出“数据有效”的状态信号、CPU可从计数器的输出端得到转换结果。输入模拟电压Uin幅度越大,在固定时间积分的终了时,积分

23、器的输出电压值也越大,因而反向积分所需的时间也越长。如图所示。,4、AD转换器的主要技术指标在AD转换器接口电路设计时,需了解AD转换器(简称ADC)主要性能指标。(1)分辨率。通常用数字量的位数表示,如8位,10位,12位,16位分辨率等。若分辨率为8位,表示它可以对全量程的128=1256的增量作出反应。分辨率越高,转换时对输入量的微小变化的反应越灵敏。(2)量程。即所能转换的电压范围,如5V,10V等。(3)精度。有绝对精度和相对精度两种表示方法,常用数字量的位数作为度量精度的单位,如精度为士12LSB,而用百分比来表示满量程时的相对误差,如士0.05。精度和分辨率是不同的概念,精度指的

24、是转换后所得结果相对于实际值的准确度,而分辨率是指对转换结果发生影响的最小输入量。分辨率很高者可能由于温度漂移、线性不良等原因而并不具有很高的精度。,(4)转换时间。完成一次AD转换所需的时间称转换时间。不同型式、不同分辨率的器件,其转换时间的长短相差很大,可为几微秒至几百毫秒。在选择器件时要根据应用的需要和成本来具体地考虑。(5)输出逻辑电平。多数与TTL电平配合、在考虑数字输出量与微机数据总线的关系时,还要对其它一些问题加以考虑,如是否要用三态逻辑输出?采用何种编码制式等。(6)工作温度范围。由于温度会对运算放大器和电阻解码网络等产生影响,所以只有在一定的温度范围内才能保证额定的温度指标、

25、较好的转换器件的工作温度为一4085C,较差者为070。5、AD转换器与单片机的接口技术5.1、ADC0809与51单片机接口的设计ADC0809是8位逐次逼近式AD转换器,为单片COMS器件,包括8位的数模转换器、8通道多路转换器与微处理器兼容的控制逻辑。8 通道多路转换器直接连接8位单端模拟信号中的任何一个。,ADC0809设计时考虑了若干种模数转换技术的长处,适宜于实时测试和过程控制。ADC0809 的内部结构如下图所示。片内具有锁存功能的8路模拟多路开关,可对电路中05V的输入模拟电压信号分时进行转换。片内具有多路开关的地址译码和锁存电路、比较器、256电阻T型网络、树状电子开关、逐次

26、逼近数码寄存器SAR、控制与时序电路等。输出具有TTL三态锁存缓冲器,可直接连到单片机数据总线上。,5.2、ADC0809的主要特性有:(l)分辨率为8位;(2)最大不可调误差小于土1LSB;(3)转换时间为当CLK=500kHz时,128us;(4)不必进行零点和满刻度调整;(5)功耗为15mw;(6)单一十5V供电,模拟输入范围为05V。5.3、ADC0809的引脚其功能为:(l)IN7-8为8路模拟量输入端;(2)D0-D8为8位数字量输出端;(3)START、ALE;START为启动输入端,在该信号的上升沿清除ADC内的寄存器,在下降沿启动内部控制逻辑开始转换。此脉冲可由程序给出,AL

27、E为地址锁存控制信号,在该信号的前沿处把A,B,C选择状态锁存在寄存器中。,当该线为高电平时,地址才解锁,便可选择通道。以上两个信号可连接在一起,通过程序输入一个正脉冲启动AD转换。(4)EOC为转换结束信号,当AD转换结束,EOC由低变高,经反相器反相后可作中断请求信号INT0。(5)OE为输出允许控制,在OE为高电平时,打开三态门,数据线被解锁,把内部转换的数据送往数据总线上。(6)REF()、GND为主电源输入端和接地端子。一般REF(十)与VCC连接在一起,REF(一)与GND连接在一起。(7)CLK为时钟输入端,ADC0809要求外接时钟,其频率为101280kHz,一般用500kH

28、z。(8)A、B、C为8路模拟开关的三位地址选通输入端,以选择对应的输入通道进行AD转换。其对应关系如表所示。,5.4、ADC0809与8031的接口方式(线选法)ADC0809与8031单片机的硬件接口有三种方式;查询方式、中断方式和等待延时方式。究竟采用何种方式,应视具体情况,按总体要求而选择、下面我们介绍最常用的两种接口方式,即查询方式和中断方式。1)查询方式:查询方式的电路图如图所示。,由于ADC0809片内无时钟,可利用8031提供的地址锁存允许信号ALE经D触发器二分频后获得,ALE脚的频率是8031单片机时钟频率的16。如果单片机时钟频率采用6MHz,则ALE引脚的输出频率为1M

29、Hz,再经二分频后为500kHz,正好符合ADC0809对时钟频率的要求。地址译码引用A、B、C,分别与地址总线的低三位A0、A1、A2相接,以选通IN0-IN7中的某一通道,将P2.7(地址总线最高位A15)作为片选信号,在启动A/D转换时由输出指令MOVX DPTR,A或MOVX Ri,A产生WR写信号和P2.7 都为零,经或非门后控制ADC0809 需要的启动转换信号START和地址锁存允许信号ALE。由于ALE和START连在一起因此在地址解锁的同时便启动转换。,大约经过 125us的转换时间后,转换结束,由该指令MOVX A,DPTR或MOVX A,Ri 产生的RD和P2.7 都为零

30、,经或非门后,产生的正脉冲作为输出允许OE信号,用以打开三态输出锁存器,就可将转换出来的数字信号读入单片机中的A。由于由8031的P2.7和WR启动转换,因而其端口地址为7FF8H7FFFH,其中A0A1A2分别接选择模拟通道的A,B,C。转换结束信号EOC经反相后接P2.5作查询标志。,2)中断方式:ADC0809与8031单片机通过中断方式的接口如图所示。此接口电路与上面叙述的查询方式接口电路差别,仅为EOC经反相器后接P1.5端改为接INT1端(P3.3),P2.7改为P2.0,因而其端口地址为FEF8HFEFFH,CLK直接由8031的ALE提供。,5-4 键盘与单片机接口,1.键盘的

31、结构与工作原理键盘是人机对话必不可少的工具。由若干按键组成的开关矩阵,它是微型计算机最常用的输入设备,用户可以通过键盘向计算机输入指令、地址和数据。一般单片机系统中采用非编码键盘,非编码键盘是由软件来识别键盘上的闭合键,它具有结构简单,使用灵活等特点,因此被广泛应用于单片机系统。2.键盘操作的原理组成键盘的按键有触点式和非触点式两种,单片机中应用的一般是由机械触点构成的。在下图中,当开关S未被按下时,P1.0为高电平,S闭合后,P1.0为低电平。通过侦测P1.0引脚电位的变化,CPU可以确定开关S被人为闭合-“人们的意志被加入”,3.键盘操作的特点由于按键是机械触点,当机械触点断开、闭合时会有

32、抖动,P1.0输入端的波形如下图所示。这种抖动对于人来说是感觉不到的,但对计算机来说,则是完全可以感应到的。因为计算机处理的速度是在微秒级,而机械抖动的时间至少是毫秒级,对计算机而言,这已是一个“漫长”的时间了。前面我们讲到中断时曾有个问题,就是说按键有时灵,有时不灵,其实就是这个原因,你只按了一次按键,可是计算机却已执行了多次中断的过程。,为使CPU能正确地读出P1口的状态,对每一次按键只作一次响应,就必须考虑如何去除抖动,常用的去抖动的方法有两种:硬件方法和软件方法。单片机中常用软件法。软件法其实很简单,就是在单片机获得P1.0引脚为低的信息后,不是立即认定S1已被按下,而是延时10毫秒或

33、更长一些时间后再次检测P1.0之引脚,如果仍为低,说明S1的确按下了,这实际上是避开了按键按下时的抖动时间。同样在检测到按键释放后(P1.0为高)再延时5-10个毫秒消除后沿的抖动,然后再对键值进行处理。另外一种消除抖动的方法是采用除抖动电路,如图所示:,4.独立式键盘:独立式键盘是个按键相互独立地连通一条输入数据线如图所示。这种键盘结构的优点是电路简单;缺点是当键的数量较多时占用的I/O线的数量较多。,5.矩阵式键盘的结构与工作原理:在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图1所示。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以

34、连接。这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,下图中,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。,Vcc,列

35、线/输入线,行线/输出线,89C52,例:,6.矩阵式键盘的识别方法:确定矩阵式键盘上何键被按下介绍一种“行扫描法”。行扫描法:行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如上图所示键盘,介绍过程如下。1)判断键盘中有无键按下:将全部行线置低电平,然后检测列线的状态。只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。若所有列线均为高电平,则键盘中无键按下。2)判断闭合键所在的位置:在确认有键按下后,即可进入确定具体闭合键的过程。其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。在确定某根行线位置为

36、低电平后,再逐次检测各列线的电平状态。若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。,7.键盘的扫描控制方式:在单片机系统中为了节省硬件常采用矩阵式非编码键盘。单片机对其控制方式有以下三种:程序扫描控制方式。定时扫描控制方式。中断扫描控制方式。,5-5显示器接口,单片机应用系统中,显示器是最常用的输出设备特别是发光二极管显示器(LED)和液晶显示器(LCD),由于结构简单,价格便宜,配置灵活,与单片机接口方便而得到广泛应用1、LED显示器结构与原理 LED显示是由若干个发光二极管组成,当发光二级管导通时,相应的一个点或一个笔划发光,控制不同组合的二极管导通,就能显示出各种字

37、符、在单片机应用系统中通常使用的是七段LED。这种显示器有共阴极和共阳极两种如图所示。共阴极LED显示器的发光二极管阴极共地,如图所示。当某个发光二极管的阳极为高电平时,即逻辑“1”时,发光二极管点亮,共阳极LED显示器的发光二极管阳极共十5V,如图所示:逻辑“0”时,某个发光二极管点亮.通常的七段LED 显示器有8个发光二极管,其中七个发光二极管构成七段字形“8”,一个发光二极管构成小数点如图所示。,七段显示器与单片机的接口很简单,只要将一个8位并行输出口与显示器的发光二极管的引脚相连即可8位并行输出口输出不同的数据即可获得不同的数字或字符通常将控制发光二极管的8位字节数据称为七段显示代码,

38、共阴极和共阳极的七段显示代码如表所示,2.LED接口电路,显示多位数据的两种电路:,所谓静态显示,就是当显示某一字符时,相应的发光二极管恒定地导通或截止,例如图中七段显示器的a,b,c,d,e,f导通,g截止,则显示“0”。这种显示方式每一位LED都需要有一个8位输出口控制,需要硬件多,适用于显示位数较少的场合。当显示位数较多时,因静态显示器所需的I0太多,一般采用动态显示方法。所谓动态显示就是一位一位地轮流点亮各位显示器(扫描),对于每一位显示器来说,每隔一段时间点亮一次显示器的点亮既和点亮时的导通电流有关,也跟点亮时间和间隔时间有关、调整电流和时间的参数可实现亮度较高较稳定的显示。若显示的

39、位数不大于8位,则控制那一个显示器点亮需一个IO 口(称字位口,)控制各位显示器所显示的字形也需一个IO口(称字形口)。,静态显示,动态显示,接P1口,接P2口,字位口,字形口,共阴极电路,并联,选通,显示程序任务:,1.设置显示缓冲区,存放待显示数据和字符(位置码)。2.显示译码:程序存储器中建立字形码常数表,查表得出对应数据和字符的字形码。3.输出显示:输出字形码到显示端口。,例:MOV DPTR,#WTAB;指向字形码表首地址MOV A,R0;取显示缓冲区中数据MOVC A,A+DPTR;查外部表得到字型码MOV P1,A;输出显示WTAB:DB3FH,06H,5BH;字形码表,动态显示

40、程序:,DIS:MOV R0,#7AH;指向显示缓冲区起始单元MOV R3,#01H;字位码初值R3MOV A,R3;取字位码DLP:MOV DPTR,#PAAR;指向字位口(PA口)MOVX DPTR,A;输出字位码,显示其中1位MOV A,R0;取一个显示数据ADD A,#0CH;查表偏移量MOVC A,A+PC;取出字形码INC DPTR;指向字段口(PB口)MOVX DPTR,A;输出字形码ACALL DLY1MS;延时1msINC R0;指向显缓区下一单元MOV A,R3;修改字位码RL A;显示下一位MOV R3,AJNB ACC.6,DLP;未显示到最右边LED,继续显示RET;

41、全部扫描一遍,结束DTAB:DB 0C0H,0F9H,0A4H;字形表 DB 0B0H,99H,DLY1MS:;延时1ms子程序,5-6打印机的接口,打印机输出是计算机系统最基本的输出形式,它有击打式和非击打式打印两类、而击打式打印机又可分为固定字符打印头和点阵打印头两种结构形式。击打式打印机是利用机械作用,击打活字载体上的字符,使之与色带和纸相击打而印出字符,或者利用打印钢针撞击色带和纸打印出点阵组成的字符图形。非击打式打印机的印字不是机械的击打动作,而是利用各种物理的或化学的方法印刷字符,如静电感应,电灼,激光扫描等。单片机使用的打印机一般都是击打式、针式打印机,字符由点阵组成,它们的特点

42、是打印速度快、机构结构简单。打印机的机械部分是执行机构,而机械部分动作的完成则是由电路来控制的、打印机的电路由四部分组成,即控制电路,驱动电路,接口电路和电源电路等,如图所示。,控制电路由CPU及相应外围电路构成,是整个打印机的控制中心,驱动电路受控制电路控制,直接与打印头相接,驱动打印头针及有关电机的动作,完成字符图形的打印。接口电路是打印机与主机通讯的通道,主机发送的命令和数据经接口电路送达打印机控制中心,电源电路则给整个打印机,提供各种规格的电压。微型打印机通常省去此部分,与主机共用电源。,目前国内流行的微型打印机主要有TPP系列的,它是一种点阵式多功能的智能打印机,采用 EPROM M

43、150、160、183等型号的点阵式打印机机头,由单片机控制、使用与标准打印机接口(Cenfronic)并行接口或RS一232C串行接口兼容的接口电路,可打印出16和21点阵汉字,具有大打印机的打印功能。一)、TPP-40A的主要性能、接口要求1、TPP-40A的主要技术性能(l)采用单片机控制,具有2KB字节控打程序及标准的圣特逻尼克并行接口,便于与各种计算机系统或智能仪器表联机使用。(2)具有较丰富的打印命令,命令代码均为单字节、格式简单。(3)可产生全部标准的ASC代码字符,以及128个非标准字符和图符。有16个代码字符(6X7点阵),可由用户通过程序自行定义。并可通过命令用此16个代码

44、字符去更换任何驻留代码字型,以便用于多种文字的打印。(4)可打印出8X240点阵的图样(汉字或图案点阵)、代码字符和点阵图样可在一行中混合打印。,字符、图符和点阵图可以在宽和高的方向放大为X2、X3、X4倍。(6)每行字符的点行数(包括字符的行间距)可用命令更换。即字符行间距空点行在0256间任选。(7)带有水平和垂直制表命令,便于打印表格。(8)具有重复打印同一字符命令,以减少输送代码的数量。(9)带有命令格式的检错功能、当输入错误命令时,打印机立即打印出错误信息代码。2、接口要求 TPP一4OA微型打印机与计算机应用系统通过机匣后部的20芯扁平电缆及接插件相连。打印机匣后部接插件引脚信号如

45、下:,DB07为数据线,单向由计算机输入打印机。STB(STROBE)为数据选通信号。在该信号的上升沿时,数据线上的8位并行数据被打印机读入机内锁存。BUSY为打印机“忙”状态信号、当该信号有效(高电平)时,表示打印机正忙于处理数据。此时,主计算机不得使用STB信号向打印机送入新的数据。ACK(ACKNWKEGE)为打印机的应答信号。此信号为有效电平状态(低电平)时,表示打印机已取走数据线上的数据。ERR(ERROR)为“出错”信号、当送入打印机的命令格式有错时,打印机立即打印出一行出错信息,以提示操作者注意在打印机打印出错信息之前,该信号线出现一个负脉冲,脉冲宽度为30s。二、字符代码及打印

46、命令 TPP一4OA全部代码共256个,其中00H无效 代码0lH0FH为打印命令 代码10HIFH为用户自定义代码;,代码20H7FH为标准ASCII代码;代码8OHFFH为非ASCII代码,其中包括少量汉字、希腊字母、块图图行和一些特殊的字符。1)字符代码TPP一4OA 16A中全部字符代码为10HFFH,字符串的结束代码,或称回车换行代码ODH、但是,当输入代码超过40个时,打印机自动回车字符代码串例下;(l)打印字符由“3465 87”输送代码串为24,33,34,36,35,2E,38,37,0D。(2)打印“This is microPrinter”输送代码串为,54,68,69,

47、73,20,69,73,20,4D,69,63,72,6F,2D,70,72,69,6E,74,65,72,2E,0D(3)打印“34.9cm3 输送代码串为33,34,2E,39,63,6D,9D,OD。,2)打印命令 TPP一4OA的控制打印命令由一个字和若干个参数字节组成,其格式如下;CCXXO.XXn 其中:CC:命令代码字节,01H0FHXXn;n个参数字节,。N=0250,随不同命令而异。TPP一4OA 的命令代码及功能如表所列。,3)命令非法时的出错提示当主机向TPP一4OA输入非法命令时,打印机即打印出出错代码,用以提示用户、出错代码信息打印格式如下 ERROR:0 ERROR

48、:1 ERROR:2 ERROR:3 ERROR:4 其含意如下:ERROR:0:放大系数出界,即放大倍数是1,2,3和4以外的数,错误出现在01H,02H,和03H命令时。ERROR:1;定义代码非法、用户自定义代码不是10H一1FH ERROR:2:非法换码命令。换码命令只能用10H一1FH 去代换驻留字符代码否则非法。ERROR;3;绘图命令错误、指定图形字节数为0或大于240 ERROR;4;垂直制表命令错误、指定空行数为零,三、TPP一4OA与8031单片机接口 TPP一4OA 是智能打印机,其控制电路由单片机构成,在输入电路中有锁存器,在输出电路中有三态门控制、因此可以直接与单片机应用系统的总线相接,即数据线与8031的P0口相接。,复习,一概念填空二指令分析指令寻址方式、计算相对转移偏移量、指令执行结果和如何影响标志位三程序分析为程序加注释、说明程序功能、写出程序执行结果、计算延时程序执行时间。四编写程序数据处理程序、片内I/O接口编程。五.单片机应用系统硬件电路设计图5.42为8031通过8155扩展l0控制的6位共阴极显示器的接口、其中8155提供两个输出口,A口输出经8位反相集成驱动芯片驱动后接显示器。作为字位口B口输出作为字形口,经6位反相驱动后接显示器的各个片选信号,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号