第八章 MCS-51单片机及键盘、显示器接口设计_第1页
第八章 MCS-51单片机及键盘、显示器接口设计_第2页
第八章 MCS-51单片机及键盘、显示器接口设计_第3页
第八章 MCS-51单片机及键盘、显示器接口设计_第4页
第八章 MCS-51单片机及键盘、显示器接口设计_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第八章MCS-51单片机与键盘、显示器接口设计§8.1LED显示器接口原理§8.2按键、键盘及其接口§8.3专用的8279/7279键盘显示器接口

内容提要PC机除了主机以外还需要哪些部分呢?单片机电路有时候也需要键盘、显示等外设。第八章MCS-51单片机与键盘、显示器接口设计1.LED显示器的结构有共阳极和共阴极两种。§8.1LED显示器接口原理段码(字形码)显示字符共阴极段码共阳极段码显示字符共阴极段码共阳极段码03FHC0Hc39HC6H106HF9Hd5EHA1H25BHA4HE79H86H34FHB0HF71H8EH466H99HP73H8CH56DH92HU3EHC1H67DH82HT31HCEH707HF8Hy6EH91H87FH80HH76H89H96FH90HL38HC7HA77FH88H“灭”00HFFHb7CH83H………

段码是相对的,它由各字段在字节中所处的位决定。“0”的段码为3FH(共阴)。则“0”的段码为7EH(共阴)。习惯上还是以“a”段对应段码的最低位。§8.1LED显示器接口原理软件译码N个LED显示块有N位位选线和8×N根段码线。2.LED显示器工作原理§8.1LED显示器接口原理控制该显示位的亮或暗控制显示的字型静态显示方式显示的亮度高§8.1LED显示器接口原理优点:结构简单,直接利用P1口输出锁存器作为段码锁存器。缺点:占用了P1.0~P1.6q七根I/O口线。静态显示接口电路§8.1LED显示器接口原理该电路使用具有锁存、译码、驱动功能的CD4511作为锁存器/译码/驱动电路§8.1LED显示器接口原理静态显示接口电路硬件译码§8.1LED显示器接口原理P240【例9.3】:利用MC14495实现8位静态LED显示,硬件电路如图9.13所示,编写软件程序。设要显示的BCD码放在以DAT为首址的RAM单元中。硬件译码的静态显示程序设计如下:

ORG 0000HSTART: MOV R0,#DAT ;设置数据区首址 MOV R1,#80H MOV R2,#08HLOOP: MOV A,@R0 ;读要显示的BCD

ADD A,R1 MOV P1,A

ACALLDELAY

INC R0 MOV A,R1 ADD A,#10H MOV R1,A DJNZ R2,LOOP LJMP START END

§8.1LED显示器接口原理动态显示方式§8.1LED显示器接口原理动态显示2009.10.10的过程。说明:段选码、位选码每送入一次后延时1ms,人眼的视觉 暂留时间为0.1s。 §8.1LED显示器接口原理动态显示接口电路说明:75492是大电流集电极开路输出反相器,内含有6个 达顿管组成的OC门反相器,高电平输入驱动电流小 (2mA),每个反相器最大可以吸收250mA灌电流。 它可驱动动态电流在20mA~30mALED发光二极管。§8.1LED显示器接口原理§8.1LED显示器接口原理P241【例9.4】:采用软件译码的方法,实现8位动态LED显示,要求从左到右依次显示内存30H~37H的内容,电路如图9.14所示,编写软件程序。程序中利用R0存放显示缓冲区的地址,R3存放位选码,程序如下:DISP: MOV R0,#30H ;显示缓冲区首址 MOVR3,#01H ;位选码初值 MOV A,R3LOOP:MOV P2,A ;送位选码到P2 MOV A,@R0 ;取显示数据 MOV DPTR,#TAB ;指向段码表首地址 MOVCA,@A+DPTR;查表取段码 MOV P0,A ;送段码到P0 ACALLDEL10ms ;调用10ms延时程序

INC R0 ;指向下一显示单元 MOV A,R3 JBACC.7,OVER ;判断8位是否显示完 RLA ;位选码右移1位 MOV R3,A AJMP LOOP ;转下一位显示OVER:SJMP $ END软件译码键盘输入的特点键盘:一组按键开关的集合。行线电压信号通过键盘开关机械触点的断开、闭合发生变化§8.2按键、键盘及其接口按键的确认检测行线电平高电平:断开;低电平:闭合,常用软件来消除按键抖动。如何消除按键的抖动采取以上措施,躲开了两个抖动期t1和t3的影响。软件延时10ms软件延时10ms§8.2按键、键盘及其接口1.键盘接口的工作原理独立式按键接口和行列式键盘接口。独立式键盘接口此种接口适于键数较少或操作速度较高的场合。§8.2按键、键盘及其接口8255A扩展I/O口的独立式按键接口电路。§8.2按键、键盘及其接口PA0PA1PA2PA3PA4PA5PA6PA7用三态缓冲器扩展的I/O口的按键接口电路。§8.2按键、键盘及其接口识别和编程简单,用在按键数较少的场合。§8.2按键、键盘及其接口P233【例9.1】:如图9.4所示键盘电路,每个按键中的任一键值都对应一个特定功能,编写软件程序。§8.2按键、键盘及其接口 ORG0000HKB:MOVP1,#0FFHMOV A,P1CPL AANL A,#0FHJZ KBLCALLD10MS

MOV A,P1CPL AANL A,#0FHJZ KB MOV B,A WAIT:MOVA,P1CPL AANL A,#0FHJNZ WAIT

MOV A,BCJNE A,#01H,KB1LCALLKEY1

SJMPKBKB1:CJNEA,#02H,KB2LCALLKEY2

SJMPKBKB2:CJNEA,#04H,KB3LCALLKEY3

SJMPKBKB3:CJNEA,#04H,KBLCALLKEY4

SJMPKB END2.行列式(矩阵式)键盘接口用于按键数目较多的场合,由行线和列线组成,按键位于行、列的交叉点上。按键数目较多的场合,行列式键盘与独立式键盘相比,要节省很多的I/O口线。§8.2按键、键盘及其接口(1)行列式键盘工作原理无键按下,该行线为高电平,当有键按下时,行线电平由列线的电平来决定。第1步:识别键盘有无键按下;第2步:如有键被按下,识别出具体的按键。(2)按键的识别方法

扫描法§8.2按键、键盘及其接口线反转法第1步:列线输出为全低电平,则行线中电平由高变低的所在行为按键所在行第2步:行线输出为全低电平,则列线中电平由高变低所在列为按键所在列。(3)键盘的编码根据实际需要灵活编码。键码=行首键码+列号§8.2按键、键盘及其接口§8.2按键、键盘及其接口P236【例9.2】:在图9.5所示的4×4的行列式键盘电路中,编程实现键盘扫描,识别键码,其流程图如图9.7所示。§8.2按键、键盘及其接口P236【例9.2】:在图9.5所示的4×4的行列式键盘电路中,编程实现键盘扫描,识别键码,其流程图如图9.7所示。3.键盘的工作方式原则:即要保证能及时响应按键操作,又不要过多占用CPU的工作时间。编程扫描方式只有当单片机空闲时,才调用键盘扫描子程序,扫描键盘。定时扫描工作方式利用单片机内的定时器,产生10ms的定时中断,对键盘进行扫描。中断工作方式只有在键盘有键按下时,才执行键盘扫描程序,如无键按下,单片机将不理睬键盘。§8.2按键、键盘及其接口键盘所做的工作分为三个层次①编程扫描②定时扫描③中断扫描①扫描法②线反转法执行键处理程序§8.2按键、键盘及其接口利用并行I/O芯片实现键盘/显示器接口4.键盘/显示器接口设计实例

8155H也可用8255A来替代P242【例9.5】利用串行口实现键盘/显示器接口串口为方式0输出4.键盘/显示器接口设计实例

P244【例9.6】Intel8279芯片:通用可编程键盘/显示器接口芯片。对键盘部分提供扫描工作方式,能对64个键键盘阵列不断扫描,自动消抖,自动识别出闭合的键并得到键号,能对双键或N键同时按下进行处理。§8.3专用的8279/7279键盘显示器接口扫描方式的显示接口,可显示多达16位的字符。1.8279的引脚及内部结构§8.3专用的8279/7279键盘显示器接口2.引脚功能介绍(1)与CPU的接口引脚DB0~DB7:数据总线、双向、三态,与单片机数据总线相连,在CPU和8279之间传送命令或数据。CLK:系统时钟,用于8279内部定时,以产生其工作所需的时序。RESET:高电平时,8279被复位,复位后的状态如下:*16个字符左边输入显示方式*编码扫描键盘、双键锁定方式/CS:片选§8.3专用的8279/7279键盘显示器接口A0:=1,写入的是命令字节;读出的是状态字节。

=0,写入或读出的字节均为数据。/RD、/WR:读、写控制引脚IRQ:中断请求线。在键盘方式中,当键盘RAM(先进先出)中存有按下键的数据时,IRQ为高电平,向CPU提出中断申请。(2)扫描信号输出引脚CPU每次从键盘RAM中读出一个字节数据时,IRQ就变为低电平。如果键盘RAM中还有未读完的数据,IRQ将再次变为高电平,再次提出中断请求。§8.3专用的8279/7279键盘显示器接口SL0~SL3

扫描输出。用来扫描键盘和显示器。可编程设定为编码输出,即SL0~SL3需外接4-16译码器,输出16取1的扫描信号,也可编程设定为译码输出,即由SL0~SL3直接输出4取1的扫描信号。(3)与键盘连接的引脚RL0~RL7键盘矩阵的行信号输入线。SHIFT输入线,通常用作键盘上、下档功能的控制键。CNTL/STB输入线,高电平有效。在键盘方式时,通常用来作为键盘控制功能键使用。§8.3专用的8279/7279键盘显示器接口(4)与显示器连接的引脚OUTA0~OUTA3(A组显示数据)、OUTB0~OUTB3(B组显示数据):向LED显示器输出的段码,与扫描信号线SL0~SL3同步。两组可独立使用,也可合并使用。/BD:消隐显示控制。3.8279的基本功能部件(1)扫描计数器编码方式:扫描线SL0~SL3输出,经外部4-16译码器译码后,为键盘和显示器提供16取1的扫描线。译码方式:计数器的最低二位在8279内部译码后,从SL0~SL3输出,为键盘和显示器提供4取1扫描线。§8.3专用的8279/7279键盘显示器接口D7D6D5D4D3D2D1D0CNTLSHIFT扫描回复(2)键盘去抖动及回复缓冲器RL0~RL7被接到键盘的行线。在逐列扫描时,当某一键闭合,消抖电路延时等待

10ms之后,再检验该键是否仍闭合。若闭合,则该键的行、列地址和附加的移位、控制状态一起形成键盘数据,送入8279内部的键盘RAM存储器。控制(CNTL)和移位(SHIFT)的状态由两个独立的附加开关决定,而扫描(D5、D4、D3)是被按键的列编码,而回复(D2、D1、D0)则是被按键的行位置数据。§8.3专用的8279/7279键盘显示器接口(3)键盘RAM及其状态寄存器键盘RAM:8字节先进先出(FIFO)存储器。当FIFO存储器空间不足时,状态逻辑将产生IRQ=1信号,向CPU发出中断申请。内部的FIFO状态寄存器存放FIFO的工作状态,如FIFO是空还是满,其中存有多少字符,是否操作出错等等。§8.3专用的8279/7279键盘显示器接口(4)显示RAM和显示地址寄存器

显示RAM:存显示数据。16个字节,可存放16位显示信息。

显示寄存器:分A、B两组,即OUTA0~OUTA3和OUTB0~OUTB3,它们可单独送数,也可共同组成1个8位的字节。显示RAM的输出与显示扫描配合,同时轮流驱动被选中的显示位,使显示器呈现稳定的显示(动态扫描)。§8.3专用的8279/7279键盘显示器接口状态字:主要用于键盘工作方式,以指示键盘RAM中的字符数和有无错误发生。4.8279的命令字和状态字命令字:D7、D6、D5为命令特征位,来区分8条不同的命令字。1)键盘/显示方式设置命令字2)程控时钟命令3)读键盘RAM命令字4)读显示RAM命令5)写显示RAM命令6)显示禁止写入/消隐命令7)清除命令8)结束中断/错误方式设置命令§8.3专用的8279/7279键盘显示器接口5.8279与键盘/显示器的接口P249【例9.7】1.HD7279A简介能同时驱动8个共阴极LED数码管(或64个独立的LED发光二极管)和64(88)键的编码键盘矩阵。控制LED数码管采用动态扫描的循环显示方式。特性:(1)与单片机采用串口方式,仅占4条口线,接口简单;(2)内部有译码器,可直接接收BCD码或十六进制码,同时具有两种译码方式,实现LED数码管位寻址和段寻址,可方便地控制每位LED数码管中任意一段是否发光;§8.3专用的8279/7279键盘显示器接口(3)内部有驱动器,可直接驱动不超过25.4mm的LED数码管。(4)片选信号输入,易实现多于8位显示器或多于64键的键盘控制。(5)具有自动消除键抖动并识别有效键值的功能。(6)HD7279A芯片占用口线少,外围电路简单,具有较高性价比。§8.3专用的8279/7279键盘显示器接口2.引脚功能(1)与CPU的接口引脚CLK:同步时钟输入端。/CS:片选,低电平有效。DATA:串行数据输入/输出端。KEY:按键有效输出端,高电平有效§8.3专用的8279/7279键盘显示器接口(2)与显示/键盘接口引脚SG~SA:显示段g~a的驱动信号输出端。分别连接至LED数码 管的a~g段的阳极,而DP脚连至小数点dp的阳极。DIG0~DIG7:数字位0~7驱动信号输出端。它连接8只LED 数码管的共阴极。DP:小数点驱动信号输出端。RC:RC振动器外接主容端。RESET:复位信号输入端,低电平有效。DIG0~DIG7和DP以及SA~SG还分别是64键的键盘的列线和行线,完成对键盘的译码和键值识别。88矩阵阵列中的每个键值可用读键盘命令读出,键值范围是00H~3FH。§8.3专用的8279/7279键盘显示器接口HD7279A采用串行方式与单片机通信,串行数据从DATA引脚送入或输出,并与CLK端同步。当片选信号

变为低电平后,DATA引脚上的数据在CLK脉冲上升沿作用下写入或读出HD7279A的数据缓冲器。4.HD7279串行接口传送时序注意:HD7279A只能给出其中一个按下键的代码,不适合需要两个或两个以上键同时按下的场合。3.HD7279的控制指令§8.3专用的8279/7279键盘显示器接口

6条纯命令、7条带数据命令和1条读键盘命令组成。(1)命令时序a.纯命令时序单片机发出8个CLK脉冲,向HD7279A发出8位命令,DATA引脚最后为高阻态,如图10-16所示。

纯命令时序§8.3专用的8279/7279键盘显示器接口b.带数据命令时序单片机发出16个CLK脉冲,前8个向HD7279A发送8位命令;后8个向HD7279A传送8位显示数据,DATA引脚最后为高阻态,如图所示。

带数据命令时序§8.3专用的8279/7279键盘显示器接口c.读键盘命令时序单片机发出16个CLK脉冲,前8个向HD7279A发送8位命令;发送完之后DATA引脚为高阻态;后8个CLK由HD7279A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论