节显示器及键盘接口技术.pptx

上传人:莉*** 文档编号:80125053 上传时间:2023-03-22 格式:PPTX 页数:76 大小:2.03MB
返回 下载 相关 举报
节显示器及键盘接口技术.pptx_第1页
第1页 / 共76页
节显示器及键盘接口技术.pptx_第2页
第2页 / 共76页
点击查看更多>>
资源描述

《节显示器及键盘接口技术.pptx》由会员分享,可在线阅读,更多相关《节显示器及键盘接口技术.pptx(76页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 本 章 要 点本章显示器及键盘接口技术 学习要点是难点:LCD显示原理与应用,8279的应用。重点:LED显示器原理与连接及其静态、动态显示接口电路,动态显示驱动程序,行列式矩阵式键盘电路及扫描过程,键盘显示器芯片8279的结构与功能。了解:LCD显示原理与应用键盘显示器接口芯片8279的应用 第1页/共76页10.1 LED显示器接口技术 数码显示器的结构与工作原理数码显示器的结构与工作原理数码显示器与单片机的接口数码显示器与单片机的接口数码显示器的静态显示和动态显示数码显示器的静态显示和动态显示点阵式点阵式LED显示器与单片机接口技术显示器与单片机接口技术 10.1 主讲内容主讲内容第2

2、页/共76页数码显示器的结构与工作原理LED数码显示器:由LED发光二极管组合显示字段的显示器件,也称为LED数码管。其外形结构如下所示。它是由它是由8个发光二极管按个发光二极管按“日日”字形排列,其中字形排列,其中af等等7个发光二极管组成个发光二极管组成“日日”字形的笔画段,另一个字形的笔画段,另一个发光二极管发光二极管dp为圆点形状,为圆点形状,作为显示器的右下角的小作为显示器的右下角的小数点使用。数点使用。第3页/共76页 LED显示器根据内部结构不同分为两种。一种是一种是8个发光二极管的阴极连在一起的共阴极数码管个发光二极管的阴极连在一起的共阴极数码管。一种是一种是8个发光二极管的阳

3、极连在一起的共阳极数码管。个发光二极管的阳极连在一起的共阳极数码管。数码显示器的结构与工作原理第4页/共76页 LED显示器根据内部结构不同分为两种。当某一发光二极管导通时,相应的笔画段就被点亮。这样,若干个二极当某一发光二极管导通时,相应的笔画段就被点亮。这样,若干个二极管导通,就构成管导通,就构成09的阿拉伯数字符号以及其它能由这些笔画段构成的简的阿拉伯数字符号以及其它能由这些笔画段构成的简单字符。单字符。数码显示器的结构与工作原理第5页/共76页 LED显示器根据内部结构不同分为两种。在共阴极数码管中,导通点亮的二极管用在共阴极数码管中,导通点亮的二极管用1表示,其余的用表示,其余的用0

4、表示表示在共阳极数码管中,导通点亮的二极管用在共阳极数码管中,导通点亮的二极管用0表示,其余的用表示,其余的用1表示。表示。数码显示器的结构与工作原理第6页/共76页例如,对于共阴极数码管来说,字符2的显示段码为01011011,字符H的显示段为10000000,用十六进制表示分别为5BH和80H。若要使LED显示器全部熄灭,则需在共阴极LED段加高电平,即段码为00H;在共阳极LED段加低电平,即段码为FFH。1、0数符按一定的顺序排列,就组成了所要显示字符的显示代码,常将数符按一定的顺序排列,就组成了所要显示字符的显示代码,常将这些数据称为显示字符的这些数据称为显示字符的段码(或称字形码)

5、段码(或称字形码)。LED显示器显示段与段显示器显示段与段码位的关系如下:码位的关系如下:数码显示器的结构与工作原理段码位D7D6D5D4D3D2D1D0显示段dpgfedcba第7页/共76页数码显示器与单片机的接口1.硬件译码的接口方法:由由图可以看出,在图可以看出,在单片机与单片机与LED数码管数码管之间必须有之间必须有锁存器或锁存器或锁存器或锁存器或I/OI/O接口电路接口电路接口电路接口电路,而且,而且还必须有还必须有专用的译码专用的译码专用的译码专用的译码驱动器驱动器驱动器驱动器,通过译码器,通过译码器把一位十六进制数或把一位十六进制数或BCD码译码为相应的码译码为相应的字符段码,

6、然后通过字符段码,然后通过驱动器提供的足够大驱动器提供的足够大的功率去驱动发光二的功率去驱动发光二极管。极管。图8-2 以硬件为主的单片机与LED显示器的接口电路点击分析原理 第8页/共76页数码显示器与单片机的接口1.硬件译码的接口方法:图8-2 以硬件为主的单片机与LED显示器的接口电路硬件译码时只需要硬件译码时只需要MOVX DPTR,AMOVX DPTR,A一条指令直接输出待一条指令直接输出待显数据即可,但是硬显数据即可,但是硬件电路比较复杂,而件电路比较复杂,而且只能显示且只能显示0F之间之间的字符或者空白字符,的字符或者空白字符,因此这种接口方法缺因此这种接口方法缺乏灵活性。乏灵活

7、性。第9页/共76页 设待显示的十位、个位BCD码存于片内RAM 30H单元,千位、百位BCD码存于片内RAM31H单元。其显示子程序为:DISP:MOV R0,#30H MOV A,R0 ;取十位、个位BCD码 MOV DPTR,#7FFFH ;准备选中74LS377(1)MOVX DPTR,AMOVX DPTR,A ;显示十位、个位BCD码 INC R0 MOV A,R0 ;取千位、百位BCD码 MOV DPTR,#BFFFFH ;准备选中74LS377(2)MOVX DPTR,AMOVX DPTR,A ;显示千位、百位BCD码 RET数码显示器与单片机的接口第10页/共76页 软件译码的

8、接口电路如图所示 在程序中用软件查表代替硬件译码,省去了繁琐的硬件在程序中用软件查表代替硬件译码,省去了繁琐的硬件电路,同时它还可以显示更多的字符。但软件编程较复杂一电路,同时它还可以显示更多的字符。但软件编程较复杂一些。些。驱动器不可少数码显示器与单片机的接口2软件译码的接口方法第11页/共76页数码显示器的静态显示和动态显示 1.静态显示 LED显示器的各笔画段都有其对立的具有锁存功能的I/O口线,CPU把要显示的数据送到显示接口后,每只LED数码管由外驱动电路处于持续驱动状态。优点:软件程序和显示方法比较简单、显示亮度较大,不闪烁。缺点:占用的I/O资源较多,硬件成本较高 实现方法:静态

9、显示器可以采用CPU的并行I/O接口,如P1口、8155、8255芯片的扩展口等实现;也可以由单片机串行口扩展串入/并出移位寄存器来实现,如74LS164、74LS47等。下面举例说明用74LS164实现静态显示功能。第12页/共76页 例例10-110-1 图8-4给出了一个软件译码的静态显示接口电路,试编写程序将8051片内RAM中以40H为首地址的8个非压缩BCD码数据显示出来。解:图中的解:图中的LEDLED显示器为共阴显示器为共阴极的数码管,要显示非压缩极的数码管,要显示非压缩BCDBCD码就必建立对应的共阴极码就必建立对应的共阴极段码表,通过查表指令段码表,通过查表指令“MOVC

10、MOVC A,A+DPTRA,A+DPTR”实现数字到字符实现数字到字符的转换。数据的传送是采用串的转换。数据的传送是采用串行口的方式行口的方式0 0逐位通过逐位通过RXDRXD引脚引脚发送出去,逐位移入移位寄存发送出去,逐位移入移位寄存器器74LS16474LS164,进而驱动数码管。,进而驱动数码管。数码显示器的静态显示和动态显示图8-4点击分析原理 第13页/共76页 例例10-110-1 图8-4给出了一个软件译码的静态显示接口电路,试编写程序将8051片内RAM中以40H为首地址的8个非压缩BCD码数据显示出来。参考程序如下:参考程序如下:DISPDISP:MOV SCONMOV S

11、CON,#00H#00H;设置串口工作于方式设置串口工作于方式0 0 MOV R0 MOV R0,#30H#30H MOV R7 MOV R7,#08H#08H MOV DPTR MOV DPTR,#TAB#TAB;指向段码表首指向段码表首LP:MOV ALP:MOV A,R0 R0;取要显示字符取要显示字符 MOVC A MOVC A,A+DPTRA+DPTR;查表查表 MOV SBUF MOV SBUF,A A;发送显示发送显示 JNB TI JNB TI,$;等待发送完一个数据等待发送完一个数据 CLR TI CLR TI INC R0 INC R0 DJNZ R7 DJNZ R7,LP

12、LP ;发送其他数据发送其他数据 RET RETTAB:DB 3FHTAB:DB 3FH,06H06H,5BH5BH,4FH4FH,66H66H;0,1,2,3,40,1,2,3,4 DB 6DH DB 6DH,7DH7DH,07H07H,7FH7FH,6FH6FH;5,6,7,8,95,6,7,8,9 DB 77H DB 77H,7CH7CH,39H39H,5EH5EH,79H79H,71H71H;A,B,C,D,E,FA,B,C,D,E,F参考程序数码显示器的静态显示和动态显示第14页/共76页 2.动态显示 在显示程序运行过程中对每一位数码管分时交替驱动,轮流扫描的显示方式。特点:8个笔

13、画段公用一个数据端口;每个显示器的公共端分别接 在相应的信号控制端口上位输出端口上;逐个地循环点亮各个数码管 控制信号:需要两组信号来控制,一组是输出字符段码的数据口(段码口),另一组是输出位控制信号的扫描口。优点:大大简化了硬件线路。缺点:经常不断的执行显示子程序对各个数码管进行动态扫描,消耗CPU较多的运行时间。在显示器位数较多或刷新间隔较大时,会有一定的数码闪烁现象。数码显示器的静态显示和动态显示第15页/共76页下图为典型的动态显示接口电路。A口为字段口,输出字形码,再经8路反相驱动器(74LS240)反相后加到每个显示器adp对应的笔画段上C口为输出位码的字位选择扫描口,经6路反相驱

14、动器(74LS06)反相后加到各个显示器的共阴极端。数码显示器的静态显示和动态显示点击分析原理 第16页/共76页 程序如下:MOV A,#05H ;8155方式控制字 MOV DPTR,#2000H;指向8155命令寄存器 MOVX DPTR,A;写入方式字,A,C口为输出DISP:MOV R2,#20H;位码,从最左一位开始显示 MOV R3,#0AH;设置最初显示字符“A”LOOP:MOV DPTR,#2001H;指向字段口 MOV A,R3;取显示的数 INC R3;修改显示值 ADD A,#15;查表修正量 MOVC A,A+PC;查表取字形码解题分析:设8155的命令/状态寄存器、

15、A口、B口和C口分别地址为2000H、2001H、2002H、2003H。8155的工作方式设置为:A口为输出,禁止中断;C口也为输出。方式控制字为05H。从最左边一位显示器开始显示,位码20H参考程序数码显示器的静态显示和动态显示例例8-28-2 显示电路如上图所示,编写一动态显示程序,使LED显示器同时显示“ABCDEF”6个字符。第17页/共76页 MOVX DPTR,A;显示一位数 MOV A,R2 MOV DPTR,#2003H;指向8155C口(字位口)MOVX DPTR,A;输出位码 ACALL D1MS;延时1ms JB ACC.5,EXIT;6位数已显示完,则结束 RR A;

16、未扫描完,位码右移一位 MOV R2,A;暂存位码 SJMP LOOP;循环,继续显示下一位数EXIT:RETTAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H DB 0F8H,80H,90H,88H,83H,0C6H,0A1H DB 86H,8EH,8CH,0BFH,0FFH;使用共阳极七段码表D1MS:MOV R7,#02H;延时1ms程序DL0:MOV R6,0FFHDL1:DJNZ R6,DL1 DJNZ R7,DL0 RET数码显示器的静态显示和动态显示第18页/共76页点阵式LED显示器与单片机接口技术LED点阵式显示器点阵式显示器是指由发光二极管排成一个

17、是指由发光二极管排成一个mn的点阵,每个发的点阵,每个发光二极管构成点阵中的一个点,通过对各个光二极管构成点阵中的一个点,通过对各个LED发光与不发光的控制发光与不发光的控制来完成各种字符或图形的显示。来完成各种字符或图形的显示。优点:优点:焊点少、连线少,所有焊点少、连线少,所有亮点在同平面、亮度均匀、外亮点在同平面、亮度均匀、外形美观形美观 点阵式点阵式LED显示器在行线列显示器在行线列线的每一个交叉处都有一个线的每一个交叉处都有一个LED,只要是,只要是LED的的X方向为方向为1、Y方向为方向为0,则对应的,则对应的LED就发就发光。光。1.点阵式LED显示器的结构及原理8行8列结构的点

18、阵显示模块原理图第19页/共76页在图中,用8行8列模块显示字符 字符字符“F”的点阵代码为:的点阵代码为:7EH、20H、24H、3CH、24H、20H、20H和和70H;字符字符“”的点阵代码为的点阵代码为18H、3CH、5AH、99H、18H、18H、18H和和18H;字符字符“”的点阵代码为的点阵代码为18H、18H、18H、18H、99H、5AH、3CH和和18H。字符F点阵代码 点阵式LED显示器与单片机接口技术字符点阵代码 字符点阵代码 第20页/共76页 2.点阵式LED与单片机接口电路:I/O端口分别提供字形代码(列码)、扫描信号(行码),通过逐行扫描循环点亮字形。例例8-3

19、8-3 图8-9所示为一交通指示灯电路,编写程序使点阵式LED显示符号“”。解解:图图中中74LS138将将P2.2P2.0三三个个输输出出端端译译码码后后选选通通显显示示器器的的各各行行(Y0#Y7#);而而P0口口提提供供显显示示数数据据,即即P0.7P0.0经经7407驱驱动动器器驱驱动动LED的的列列线线X0X7。显显示示器器采采用用行行扫扫描描方方式式进进行行显显示示,每每扫扫描描一一次次则则显显示示一一行行。在在程程序序中中建建立立点点阵阵代代码码表表(即即扫扫描描信信号号)TAB,用用于于存存放放要要显显示示字字符符“”点点阵阵代代码,用码,用R1来指示扫描行。来指示扫描行。点阵

20、式LED显示器与单片机接口技术第21页/共76页 程序编写如下:DISP:MOV R1,#0;R1指示第0行 MOV DPTR,#TAB;DPTR为点阵代码表首地址AGAIN:MOV A,R1 MOV P2,A;选通第R1行 MOVC A,A+DPTR;取第R1个数据 MOV P0,A;送列显示 LCALL DEL1MS;调延时子程序 INC R1 CJNE R1,#8,AGAIN;若8行没有显示完,则继续 RETEL1MS:MOV R7,#02H;延时1ms的子程序LP1:MOV R6,#0FAHLP2:DJNZ R6,LP2 DJNZ R7,LP1 RETTAB:DB 18H,3CH,5A

21、H,99H,18H,18H,18H点阵式LED显示器与单片机接口技术第22页/共76页10.2 LCD10.2 LCD显示器及其接口技术显示器及其接口技术显示器的分类显示器的分类点阵式点阵式LCM及应用及应用显示器的结构与驱动方式显示器的结构与驱动方式10.2节节 主讲内容主讲内容第23页/共76页显示器的分类 LCD显示器类型:可按照光电效应、透光模式、显示形式 1.按光电效应分类:特点:LCD本身并不发光,是靠调制外界光实现显示的。类型:电场效应类、电流效应类、电热写入效应类和热效应类等。其中电场效应类又可分为:TN型液晶、GH型液晶、STN型液晶和TFT型液晶。第24页/共76页 LCD

22、显示器类型:可按照光电效应、透光模式、显示形式 1.按光电效应分类:2.按透光模式分类 类型:反射式、透射式、半透射式。反射式LCD:下偏振片是反光型的LCD,只有正面的光才能照射到LCD上面,这类一般适用于使用环境有光源的场合。透射式LCD:下偏振片投射型LCD,一般适用于环境没有光源,靠外加底光源的场合。半透射式LCD:下偏振片是半投射型的LCD,正面光和底面光均可透过LCD,一般适用于外部光线不强的场合.显示器的分类第25页/共76页 LCD显示器类型:可按照光电效应、透光模式、显示形式 1.按光电效应分类 2.按透光模式分类 3.按显示形式分类 根据显示内容类型的可分:字段型、字符型、

23、点阵图形型LCD。字段式应用范围:主要用于显示数字,也可显示一些特殊的字符。主要分类:六段、七段、八段、十四段显示和十六段显示。字符型(57,511)多用于仪器仪表,小家电等。图形型 多行多列的矩阵晶格点,多用于复杂的图形显示,游戏机、笔记本、手机等。显示器的分类第26页/共76页显示器的结构与驱动方式1.LCD结构与工作原理结构与工作原理上、下电极基板内侧为上、下电极基板内侧为无色透明的玻璃电极,由无色透明的玻璃电极,由两基板与封接剂组合而成两基板与封接剂组合而成的密封盒内注有扭曲向列的密封盒内注有扭曲向列型液晶材料。该极板便有型液晶材料。该极板便有显示。显示。七段显示七段显示LCD显示器的

24、电显示器的电极配置极配置:如图所示,不仅有:如图所示,不仅有ag七个笔画段,还有一个七个笔画段,还有一个公共极公共极com。第27页/共76页 2.LCD的驱动方式 液晶显示的驱动:通过调整施加在液晶显示器电极上的电位信号的相位、峰值、频率等,建立驱动电场,达到液晶显示器的显示效果。驱动方式:静态驱动和动态驱动 静态驱动:比较简单,但只适用于显示位数不多的场合。动态驱动:即时分割驱动方式,较复杂些,显示位数多时具有优势,LCD显示模块大部分采用动态驱动方式。显示器的结构与驱动方式第28页/共76页下下面面以以七七段段LCD显显示示器器中中的的a段段为例分析其驱动原理。为例分析其驱动原理。由图(

25、由图(a)和()和(b)可知,当)可知,当Y低电平时,低电平时,a点与点与com端方波同相,端方波同相,LCD的该笔的该笔画段不显示;当画段不显示;当Y高电平时,高电平时,a点与点与com端方波反相,端方波反相,LCD的该笔画段显示。的该笔画段显示。显示器的结构与驱动方式com异或第29页/共76页如图(如图(c),显示原理都是),显示原理都是相同的。图中的相同的。图中的A、B、C和和D四个输入段是被显示字符四个输入段是被显示字符的的BCD码,经译码器和异或码,经译码器和异或门之后,在门之后,在a、b、c、d、e、f和和g端产生方波驱动信号,端产生方波驱动信号,用于控制用于控制LCD的亮与灭;

26、的亮与灭;G端为占空比为端为占空比为1:1的控制方的控制方波信号,频率一般在波信号,频率一般在25Hz100Hz之间。之间。显示器的结构与驱动方式第30页/共76页字符型1602 LCM及应用 1.字符型LCD显示模块 LCD显示模块:是一种将液晶显示器件、连接件、集成电路、PCB线路板、背光源、结构件装配在一起的组件,一般称为LCM。LCM特点:接口简单、易于控制、显示内容丰富、通用性强的特点。目前多采用控制器内置式的LCM模块。1602即时常用一种。161,162,202,402行等的模块;采用HD44780控制器的液晶显示器内藏字符发生器,可以提供若干个57或511点阵块组成的显示字符集

27、。主控制电路扩展驱动电路扩展驱动电路第31页/共76页HD44780控制器参数控制器参数具有具有80字节显示用的字节显示用的RAM;字符产生器字符产生器ROM,可产生,可产生160个个57点阵字符(点阵字符(160个个35点阵);点阵);自定义字符自定义字符RAM,可自定义,可自定义8个个57点阵字符或点阵字符或4个个511点阵字符;点阵字符;LCD1602引脚引脚 标准标准16引脚;引脚;显示屏规格:可以提供显示屏规格:可以提供81404(字符数字符数行数行数)各种显示屏。各种显示屏。字符型1602点阵式LCM及应用2.1602 LCM显示模块第32页/共76页几个主要引脚几个主要引脚 RS

28、寄存器选择控制;寄存器选择控制;RS=0,且,且R/W=0写,选择写命令寄存器;写,选择写命令寄存器;RS=0,且,且R/W=1读,选择读忙标志及地址计数器;读,选择读忙标志及地址计数器;RS=1,选择读或写数据寄存器;,选择读或写数据寄存器;E 使能信号控制,高电平有效;使能信号控制,高电平有效;V0 LCD驱动电源,驱动电源,V0为对比度调整端,接正对比度最弱,接地对比度最高。为对比度调整端,接正对比度最弱,接地对比度最高。可电阻分压或可电阻分压或10K的的RP调整;调整;LEDA、LEDK分别为背光分别为背光+5V和背光地;和背光地;字符型1602点阵式LCM及应用2.1602 LCM显

29、示模块第33页/共76页图8-13 点阵式LCD与单片机接口E为下降沿触发的使能信号;为下降沿触发的使能信号;VLCD为液晶灰度调整电压为液晶灰度调整电压输入端。输入端。R/W#为读为读/写控制信号,写控制信号,高电平为高电平为“读读”,低电平为,低电平为“写写”;RS为寄存器选择信号,为寄存器选择信号,RS=0选择指令寄存器,选择指令寄存器,RS=1选择数据寄存器;选择数据寄存器;DB0DB7为为8位数据双向位数据双向传输总线;传输总线;说明引脚功能字符型1602 LCM及应用点击演示译码第34页/共76页2.点阵式LCD与单片机的接口图8-13 点阵式LCD与单片机接口字符型1602 LC

30、M及应用写指令到写指令到LCD为为10H写数据到写数据到LCD为为11H读读LCD状态为状态为12H读读LCD数据为数据为13H。第35页/共76页 例8-4 试编写图8-13电路的LCD模块上电初始化子程序。解:解:LCD模块上电后初始化程序如下:模块上电后初始化程序如下:SYSSET:MOV R0,10H;写命令口地址;写命令口地址 MOV A,#38H;系统功能设置命令字;系统功能设置命令字 ACALL RDBUSY;查询;查询LCD“忙忙”否否 MOVX R0,A;LCD“闲闲”,送命令字,送命令字 MOV A,#01H;清屏命令字;清屏命令字 ACALL RDBUSY;查询;查询LC

31、D“忙忙”否否 MOVX R0,A;送清屏命令字;送清屏命令字 MOV A,#06H;输入方式命令字;输入方式命令字 ACALL RDBUSY;查询;查询LCD“忙忙”否否 MOVX R0,A;送输入方式字;送输入方式字 ACALL RDBUSY字符型1602 LCM及应用第36页/共76页 MOV A,#02H;光标返回命令字 MOV R0,A ACALL RDBUSY MOV A,#0CH;光标关,显示开命令字 MOV R0,A RET;查询“忙”标志位BF:RDBUSY:PUSH ACC;保护现场 PUSH R0 MOV R0,#12H;读“忙”口地址送R0RDBS1:MOV A,R0;

32、读LCD RLC A;ACC.7Cy JC RDBS1;BF=“1”,LCD内部操作,等待 POP R0;BF=“0”,LCD空闲,恢复现场 POP ACC RET;返回字符型1602 LCM及应用第37页/共76页10.3 10.3 按钮、键盘与单片机接口技术按钮、键盘与单片机接口技术按钮与单片机的接口按钮与单片机的接口独立式键盘及其接口独立式键盘及其接口矩阵式键盘及其接口矩阵式键盘及其接口10.3节节 主讲内容主讲内容第38页/共76页按钮与单片机的接口按钮是一种常用的元器件,如下图按钮是一种常用的元器件,如下图 当按钮当按钮S被按下时,被按下时,P1.0口的电平口的电平由由“1”变为变为

33、“0”;待松开后,;待松开后,则恢复为原来的电平则恢复为原来的电平“1”。P1.0端口的电压变化取决于按钮端口的电压变化取决于按钮S的通的通断状态。断状态。第39页/共76页由于按钮机械触点的弹性作用,按钮在闭合和断开的瞬间电接触是不稳定的,即按钮在闭合时不会马上稳定地接通,在断开时也不会马上断开,而是在闭合及断开的瞬间均伴随有一连串的抖动 抖动的时间由按钮的机械特性决定,一般在510ms左右。按钮的抖动会引起一次按键被误读多次,为了确保单片机对键的一次闭合仅作一次处理,必须去除抖动,在闭合稳定时读取按钮状态,并且判别到键断开稳定后再作处理。按钮与单片机的接口点击分析抖动 点击分析去抖动 第4

34、0页/共76页 按钮的去抖,可用硬件和软件两种方法。u硬件去抖动的一种电路如图所示 图中用图中用两个与非门两个与非门构成一个构成一个RS触发器。当按钮未被按下触发器。当按钮未被按下而处于而处于A处时,触发器输出为处时,触发器输出为1;当按钮按下处于;当按钮按下处于B处时,处时,输出为输出为0。u软件去抖动的方法 在单片机检测到有键按下时,执行一个1020ms的延时程序后再次检测按钮是否仍闭合,如果仍闭合,则确认为有按钮按下,否则重新检测。按钮与单片机的接口第41页/共76页独立式键盘及其接口 1.独立式键盘结构 最简单的独立式键盘结构如图所示 每一个键电路每一个键电路是独立的,由是独立的,由一

35、根数据线输一根数据线输出键的通断状出键的通断状态。当按键态。当按键Si断开时,对应断开时,对应的数据线输出的数据线输出为为1;当其闭;当其闭合时为合时为0。点击分析原理 第42页/共76页(1)独立式键盘的查询法软件设计KBP0:MOV P1,#0FFH;置P1口为输入方式 MOV A,P1;读键值 CPL A JZ KBP0;无键闭合,重新检测 ACALL D12MS;延时12ms,去抖动(清单中略D12MS)MOV A,P1;再检测有无键闭合 CPL A JZ KBP0 JB ACC.0,PR0;从S0S7依次判键闭合,转相应入口 JB ACC.7,PR7 RETPR0:;S0键功能 AJ

36、MP KBP0;S0键功能处理程序执行完返回 ;S1S6键功能处理程序(清单中略)PR7:;S7键功能 LJMP KBP0;S7键功能处理程序执行完返回独立式键盘及其接口第43页/共76页 独立式键盘的中断法软件设计当当8个按键中任一个按键被按下个按键中任一个按键被按下时,均会引起中断请求,时,均会引起中断请求,CPU会自动进入中断。在中断服务会自动进入中断。在中断服务程序中读入程序中读入P1端口的状态,依端口的状态,依次判断是哪一个键被按下,再次判断是哪一个键被按下,再进入相应的键处理程序。程序进入相应的键处理程序。程序的编写与查询方式程序略有不的编写与查询方式程序略有不同,由主程序和中断查

37、询程序同,由主程序和中断查询程序两部分组成两部分组成 独立式键盘及其接口点击分析原理 第44页/共76页矩阵式键盘及其接口 1.矩阵式键盘结构及原理图为通过图为通过8155接口芯片接口芯片扩展的扩展的5行行6列矩阵结构列矩阵结构的键盘及接口,的键盘及接口,B口作行口作行数据输入口,数据输入口,C口作列扫口作列扫描输出口。图中键盘中共描输出口。图中键盘中共有有30个键,每一个键都给个键,每一个键都给予编号,键号分别为予编号,键号分别为0、1、2、1DH。点击分析原理 再点击 第45页/共76页 1.矩阵式键盘结构及原理矩阵式键盘的每一行线与矩阵式键盘的每一行线与列线的交叉处不相通,而列线的交叉处

38、不相通,而是通过一个按键来连通。是通过一个按键来连通。当一个键闭合时,该键所当一个键闭合时,该键所对应的行线和列线短路,对应的行线和列线短路,此时该行线的状态应由该此时该行线的状态应由该列线的输出信号所决定。列线的输出信号所决定。利用这种行列矩阵结构只利用这种行列矩阵结构只需需N个行线和个行线和M个列线即可个列线即可组成组成MN个按键的键盘。个按键的键盘。矩阵式键盘及其接口第46页/共76页 结合流程图,可得出键盘扫描的方法 检测是否有键被按下 方法是输出全0信号到键盘的列线上,然后读键盘的行线的状态。若行线为全1,则无健闭合。若有某一行线为0,就表示有键闭合。软件去抖动 在检测到有键闭合时,

39、软件延迟约1020ms去抖动。当系统中有显示器时,可调用显示子程序来达到延迟去抖动目的。键稳定后确定键值 计算出键值,即产生键码。公式为:闭合键的键值=行首键号列号 等待闭合键释放 为了保证键的一次闭合 CPU只作一次处理,所以必须等待闭合键释放以后,才对输入键进行处理。矩阵式键盘及其接口第47页/共76页 2键盘扫描方式 查询扫描方式、定时扫描方式、中断扫描方式三种。查询扫描方式 根据前述的键盘扫描流程,分析图8-17的扫描键盘子程序。设8155各端口的工作方式及地址分配如下:C口为键扫描输出地址是D103H,B口为键数据输入口地址是D102H。键扫描子程序名SCAN,键值存放在累加器A中。

40、若A=FFH,则表示本次键扫描无效,无键闭合。参考程序如下:SCAN:LCALL TESTKEY;调用检测键盘子程序 JNZ K1;A0,有键闭合 LJMP K11;A=0,无键闭合则转返回K1:LCALL DEL12MS;调用延时子程序,去抖动 LCALL TESTKEY;检测键盘 JNZ K2;A0,确认有键闭合 LJMP K11;A=0,无健闭合则转返回K2:MOV R2,#01H;键盘列线扫描码,从0列开始扫描 MOV R3,#00H;列号计数器,初值为0矩阵式键盘及其接口第48页/共76页K3:MOV DPTR,#0D103H MOV A,R2;取扫描码 MOVX DPTR,A;进行

41、列扫描 MOV DPTR,#0D102H MOVX A,DPTR;读行信号 ANL A,#1FH JNZ KEY;本列有键合,则转判行 LJMP K10KEY:JB ACC.0,K4;PB0=1,第0行无键闭合 MOV A,#00H;PB0=0,有键闭合,行首键号00H LJMP K8K4:JB ACC.1,K5;PB1=1,第1行无健闭合 MOV A,#06H;PB1=0,有键闭合,行首键号06H LJMP K8K5:JB ACC.2,K6;PB2=1,第2行无键闭合 MOV A,#0CH;PB2=0,有键闭全,行首键号0CH LJMP K8K6:JB ACC.3,K7;PB3=1,第3行无

42、键闭合矩阵式键盘及其接口第49页/共76页 MOV A,#12H ;PB3=0,有键闭合,行首键号12H LJMP K8K7:JB ACC.4,K10 ;PB4=1,第4行无健闭合 MOV A,#18H ;PB4=0,有键闭合,行首键号18HK8:ADD A,R3 ;键值=行首键号+列号 PUSH ACC ;保存A中的键值K9:LCALL DEL12MS LCALL TESTKEY ;检测键盘 JNZ K9 POP ACC ;键已释放,A中为键值 RET K10:INC R3 ;列号计数器加1 MOV A,R2 ;取列扫描码 JNB ACC.5,K12K11:MOV A,#0FFH ;本次扫描

43、无效,无键闭合标志FFH RET 矩阵式键盘及其接口第50页/共76页 K12:RL A ;扫描码左移1位 MOV R2,A LJMP K3TESTKEY:MOV A,#0FFH;检测键盘子程序 MOV DPTR,#0D103H MOVX DPTR,A;使所有列线都为0 MOV DPTR,#0D102H MOVX A,DPTR;读行线信号 CPL A ANL A,#1FH RETDEL12MS:MOV R7,#18H;延时12ms子程序 LP1:MOV R6,#0FFH LP2:DJNZ R6,LP2 DJNZ R7,LP1 RET矩阵式键盘及其接口第51页/共76页 定时扫描 定时扫描方式是

44、利用单定时扫描方式是利用单片机内部定时器,每隔一定片机内部定时器,每隔一定时间(如时间(如10ms)CPU响应中响应中断后对键盘进行一次扫描,断后对键盘进行一次扫描,并在有键闭合时转入该键功并在有键闭合时转入该键功能处理程序。定时扫描键盘能处理程序。定时扫描键盘电路与查询扫描方式相同。电路与查询扫描方式相同。其程序流程图如图所示其程序流程图如图所示。KM与与KP分别为去抖动标志分别为去抖动标志和处理标志。和处理标志。矩阵式键盘及其接口第52页/共76页(3)中断扫描方式 中断扫描方式,指中断扫描方式,指CPU平时不平时不扫描键盘,只在当键盘上有键闭合扫描键盘,只在当键盘上有键闭合时才产生中断请

45、求,向时才产生中断请求,向CPU申请中申请中断,断,CPU响应键盘中断后立即对键响应键盘中断后立即对键盘进行扫描,识别键值,并作相应盘进行扫描,识别键值,并作相应的处理。这种方式可提高的处理。这种方式可提高CPU的效的效率并能及时响应键盘输入。率并能及时响应键盘输入。扫描方式的矩阵式键盘原理图见扫描方式的矩阵式键盘原理图见右图。四输入端与门输入端与键盘右图。四输入端与门输入端与键盘行线相连,输出端与行线相连,输出端与8051的外部中的外部中断相连。断相连。矩阵式键盘及其接口第53页/共76页10.4 键盘、显示器接口芯片-8279-8279的内部结构的内部结构引脚与功能引脚与功能的命令字与状态

46、字的命令字与状态字与单片机的连接及应用与单片机的连接及应用10.4 主讲内容主讲内容第54页/共76页的内部结构 8279的结构框图 指示主要部件指示主要部件第55页/共76页 1数据缓冲器及I/O控制 数据缓冲器:三态双向的,用来连接内部数据总线与外部的数据总线,在8279与CPU之间传送命令、数据及状态信息。I/O控制电路:通过接收系统的RD#、WR#、CS#、A0等输入信号线对内部不同的寄存器和缓冲器进行读或写。2控制与定时寄存器和定时控制电路 控制与定时寄存器:用于存放键盘和显示器工作方式字和其他状态信息。定时控制电路:包含了定时计数器,其中一个计数器是N分频器,分频系数可通过编程实现

47、,NN的取值范围为的取值范围为2 23131。分频器对CLK端输入的外部时钟频率分频,得到100kHz的内部计数信号,扫描时间为5.1ms,去抖时间为10.3ms。其他的计数器则将100kHz信号再分频,提供合适的键盘扫描和显示器显示时间。的内部结构第56页/共76页 3扫描计数器 作用:键盘和显示器共用部分,提供键盘和显示器的扫描信号线。工作方式:4回复缓冲器与键盘去抖动 作用:接收并锁存来自回复线RL7RL0的8个回复信号在键盘方式时,回复线作为键盘的行(列)输入线,搜索键盘上的闭合键,形成键盘数据,包括该键的地址(行列号)及移位、控制状态,送FIFO/传感器RAM。键盘数据格式:D7D6

48、D5D4D3D2D1D0控制控制移位移位扫描(列号)扫描(列号)回复(行号)回复(行号)CNTLSHIFT编码工作方式:二进制方式计数,4位计数器状态从SL3SL0输出,可接16位显示器和88的键盘 译码工作方式:计数器仅用最低2位,译码后从SL1SL0输出。可接位显示器和键盘。的内部结构第57页/共76页 5.FIFO/传感器RAM及状态寄存器 功能:在键盘和选通方式时,它是FIFO存储器,其读写遵循先入先出的原则。在传感器方式时,RAM的每一单元存放的是传感器矩阵中相应列的状态信息。6.显示RAM及显示地址寄存器等部件组成 显示RAM用来显示存放待显示的数据,为16个字节,显示过程重,存储

49、的显示数据轮流从该寄存器输出。显示地址寄存器用来存放由CPU正在读或写该RAM某单元的地址,或正在显示的两个字节的地址,它可以由命令设定,或者每次读写之后自动递增。的内部结构第58页/共76页引脚与功能8279有40个引脚,其引脚配置见图所示 DB0DB7:双向数据总线,用于在CPU和8279之间传送命令、数据和状态。CLK:时钟输入线,用于产生内部定时。RESET:复位输入线,该引脚上输入一个高电平信号将复位8279,复位后状态为:16位显示左边输入,编码扫描键盘双键封锁,时钟系数为31。CS#:片选输入线,输入低电平时,CPU选中8279,允许对8279进行读、写操作。A0:缓冲器地址输入

50、线,高电平时数据线上传送的是命令或状态信息,低电平时数据线上传送的是数据信息。分析引脚功能第59页/共76页引脚与功能8279有40个引脚,其引脚配置见图所示 RD#:读信号输入线,低电平有效,8279内部缓冲器信息送DB0DB7。WR#:写信号输入线,低电平有效,接收数据总线DB0DB7上的信息写入内部缓冲器。IRQ:中断请求输出线,高电平有效。SL0SL3:扫描输出线,用以对键盘/传感器矩阵和显示器进行扫描。RL0RL7:数据输入线,键盘/传感器矩阵的行(或列)数据输入线。这些输入线内部有拉高电路,使之保持为高电平,也可以由尾部开关拉成低电平。在选通工作方式中RL7RL0可作为8为数据输入

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁