第次《单片机原理与应用》键盘与显示

上传人:太丑****片 文档编号:292930024 上传时间:2022-05-15 格式:PPT 页数:51 大小:15.46MB
返回 下载 相关 举报
第次《单片机原理与应用》键盘与显示_第1页
第1页 / 共51页
第次《单片机原理与应用》键盘与显示_第2页
第2页 / 共51页
第次《单片机原理与应用》键盘与显示_第3页
第3页 / 共51页
第次《单片机原理与应用》键盘与显示_第4页
第4页 / 共51页
第次《单片机原理与应用》键盘与显示_第5页
第5页 / 共51页
亲,该文档总共51页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第次《单片机原理与应用》键盘与显示》由会员分享,可在线阅读,更多相关《第次《单片机原理与应用》键盘与显示(51页珍藏版)》请在金锄头文库上搜索。

1、可编程通用并行接口芯片可编程通用并行接口芯片82558255结构与引脚结构与引脚82558255用于扩展单片机并行用于扩展单片机并行I/I/O接口。接口。一、结构:一、结构:1. 31. 3个个8 8位并行位并行I/I/O接口接口PAPA、PBPB和和PCPC: 包含包含I/OI/O数据锁存器,控制寄存器和状态寄数据锁存器,控制寄存器和状态寄存器。存器。2. 22. 2组控制:组控制: A A组:组:PAPA和和PCPC0 03 3; B B组:组:PBPB和和PCPC4 47 7:第一页,共五十一页。8255A的内部结构图的内部结构图第二页,共五十一页。3. 33. 3种工作方式:种工作方式

2、:方式方式0 0(基本(基本I/I/O方式)方式): A A口、口、B B口、口、C C口均为数据口均为数据I/OI/O。输出锁存,输入三态,。输出锁存,输入三态,不用联络信号。不用联络信号。 适用于无条件或查询方式的数据传送。适用于无条件或查询方式的数据传送。方式方式1 1(选通(选通I/I/O方式):方式): A A口和口和B B口用于数据口用于数据I/OI/O,输入,输入/ /输出均锁存,输出均锁存, C C口用于传口用于传送联络信号,读送联络信号,读C C口可了解外设当前状态。口可了解外设当前状态。 适用于查询或中断方式的数据适用于查询或中断方式的数据I/OI/O。方式方式2 2(双向

3、数据传送方式):(双向数据传送方式): A A口为数据口为数据I/I/O,B B口只能为方式口只能为方式0 0,C C口用作口用作A A口双向传口双向传送的联络信号线。送的联络信号线。 适用于查询或中断方式的数据适用于查询或中断方式的数据I/OI/O。第三页,共五十一页。二、二、8255A的芯片引脚信号的芯片引脚信号4040脚脚第四页,共五十一页。引脚(引脚(4040脚):脚):1.1.数据线:数据线:D D0 07 7:传送计算机与传送计算机与82558255之间的数据、控制字和状态字。之间的数据、控制字和状态字。PAPA0 07 7 PB PB 0 07 7 PC PC0 07 7:传送传

4、送82558255与外设之间的数据和联络与外设之间的数据和联络 信息,信息,PCPC0 07 7可用作数据线或联络线。可用作数据线或联络线。2.2.地址线:地址线:CSCS:片选线片选线A A1 1、A A0 0:口选线,寻址口选线,寻址 PAPA、PBPB、PCPC数据口和控制口。数据口和控制口。3.3.读写控制线:读写控制线:RDRD、WRWR控制计算机与控制计算机与82558255之间的信息传送和流向。之间的信息传送和流向。4.4.复位线:复位线:RESETRESET高电平复位,使内部寄存器全部清零。高电平复位,使内部寄存器全部清零。第五页,共五十一页。三、例题:三、例题:例:例:求求8

5、2558255口地址:口地址:解:解: A A口口(7F00H)(7F00H); B B口口(7F01H)(7F01H); C C口口(7F02H)(7F02H); 控制口控制口(7F03H)(7F03H)。 P0 P2.780C51A0A1CS8255373Q0Q1ABABi i: 15 14 1315 14 13 12 11 10 9 8 7 6 5 4 3 2 1 012 11 10 9 8 7 6 5 4 3 2 1 0A A口:口: 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 7F00H7F00HB

6、B口:口: 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 0 1 7F01H7F01HB B口:口: 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 0 1 0 7F02H7F02H控制口:控制口:0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 7F03H7F03H第六页,共五十一页。82558255编程规定编程规定方式选择控制字:方式选择控制字:D D7 7=1=1C C口

7、置位口置位/ /复位控制字:复位控制字:D D7 7=0=082558255初始化编程:初始化编程:往控制口写入控制字,确定往控制口写入控制字,确定82558255工作方式。工作方式。 第七页,共五十一页。方式选择控制字方式选择控制字8255A方式选择注意:方式选择注意:有三种基本工作方式:有三种基本工作方式: 方式方式0基本的输入输出方式基本的输入输出方式 方式方式1选通的输入输出方式选通的输入输出方式 方式方式2双向传输方式双向传输方式 只有端口只有端口A能工作在方式能工作在方式2; 同一组的两端口可分别工作在输入和输出方式。同一组的两端口可分别工作在输入和输出方式。第八页,共五十一页。例

8、:例: 8255PA 8255PA口方式口方式0 0输出单片机片内输出单片机片内RAMRAM数据,数据, PBPB口方式口方式1 1输入输入。PIOS:M MOV V DPTR DPTR,#7F03H#7F03H;控制口地址;控制口地址 M MOV V A A,#86H#86H ;写控制字;写控制字 M MOVX DPTRVX DPTR,A A ;设工作方式;设工作方式 M MOV V DPTR DPTR,#7F00H #7F00H ;PAPA数据口地址数据口地址 M MOV V A A,R0R0 ;取;取RAMRAM的数据的数据 M MOVX DPTRVX DPTR,A A ;由;由PAPA

9、口输出口输出第九页,共五十一页。键盘接口技术键盘接口技术抖动时间抖动时间10ms开关动作时间开关动作时间100ms“ 1 ”“ 0 ”10ms前沿抖动前沿抖动后沿抖动后沿抖动I/O接接口口+5v+5v消除抖动电路消除抖动电路开关开关单单片片机机2.2.键译码:键译码: 键号为键盘位置码,根据键号查表得键号为键盘位置码,根据键号查表得出被按键的键值。出被按键的键值。键值:数字键键值:数字键0 09 9; 字符键字符键0AH0AH0FH0FH; 功能键功能键10H10H 。键码键码键码键码= = = =行首键号行首键号行首键号行首键号+ + + +列号列号列号列号(键号必须依次是从左至右书写)(键

10、号必须依次是从左至右书写)(键号必须依次是从左至右书写)(键号必须依次是从左至右书写) 或或或或键码键码键码键码= = = =列首键号列首键号列首键号列首键号+ + + +行号行号行号行号(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)一、键盘处理程序任务:一、键盘处理程序任务:1.键输入:键输入: 检查键盘是否有键被按下,消除按键抖动。确定被按键检查键盘是否有键被按下,消除按键抖动。确定被按键的键号,获取键号。的键号,获取键号。 硬件电路消除抖动或软件消除抖动。硬件电路消除抖动或软件消除抖动。第十页,共五十一页。3.3.

11、键处理:键处理: 根据键值转移到不同程序段。根据键值转移到不同程序段。 若键值属于数字、字符键,则调用显示数字若键值属于数字、字符键,则调用显示数字和字符的子程序。和字符的子程序。 若键值属于功能键,则进行多分支转移,执若键值属于功能键,则进行多分支转移,执行各个功能程序段。行各个功能程序段。延时等待延时等待10ms 仍有按键信号?仍有按键信号?Y 有按键信号?有按键信号?NYN键盘处理键盘处理 按键释放?按键释放?NY二、键盘接口方法:二、键盘接口方法:1 1、利用单片机本身的并行口;、利用单片机本身的并行口;2 2、利用单片机本身的串行口;、利用单片机本身的串行口;3 3、利用通用接口芯片

12、、利用通用接口芯片81558155、82558255等;等;4 4、利用专用接口芯片、利用专用接口芯片82798279等。等。三、键盘接口的控制方式:三、键盘接口的控制方式:1 1、随机方式:每当、随机方式:每当CPUCPU空闲时执行键盘扫描程序。空闲时执行键盘扫描程序。2 2、中断方式:键的按下引起中断后,单片机对键盘进行扫描。、中断方式:键的按下引起中断后,单片机对键盘进行扫描。3 3、定时方式:单片机定时地对键盘进行扫描。、定时方式:单片机定时地对键盘进行扫描。第十一页,共五十一页。(1 1 1 1)独立式键盘电路:)独立式键盘电路:)独立式键盘电路:)独立式键盘电路:(2 2)矩阵式键

13、盘:)矩阵式键盘: 0 1+5v C0 C1 R0 R1键盘键盘I/O接口接口(2 2)矩阵式键盘电路:)矩阵式键盘电路: 1 1)扫描法:)扫描法: 列线输出,行线输入。列线输出,行线输入。 列线逐列输出列线逐列输出0 0,某行有按键,行线输入就为,某行有按键,行线输入就为0 0; 若无按键,行线输入全部为若无按键,行线输入全部为1 1。 2 2)反转法:)反转法: 行列线交换输入、输出,两步获取按键键号。行列线交换输入、输出,两步获取按键键号。(1)独立式键盘电路:每个按键单独占有一根)独立式键盘电路:每个按键单独占有一根I/O接口引线。接口引线。四、键盘接口形式:四、键盘接口形式:P1.

14、0P1.1P1.7+5v第十二页,共五十一页。按键处理程序:按键处理程序:按键处理程序:按键处理程序:延时消抖延时消抖键扫描求键号键扫描求键号延时等待延时等待键译码求键值键译码求键值修改显示缓冲区修改显示缓冲区跳转各功能程序跳转各功能程序有按键输入?有按键输入?确有按键?确有按键?按键释放?按键释放?是数字键?是数字键?YYYNNNYN第十三页,共五十一页。1、使用、使用8155作键盘接口:作键盘接口:接口应用:接口应用:P2.7=0,P2.0=1:A口地址为:口地址为:0101H;C口地址为:口地址为:0103H。扫描法:列线输出,行线输入。扫描法:列线输出,行线输入。列线逐列输出列线逐列输

15、出0 0,某行有按键,行线,某行有按键,行线输入就为输入就为0 0;若无按键,行线输入全部为若无按键,行线输入全部为1 1。01678914 15键码键码键码键码= =行首键号行首键号行首键号行首键号+ +列号列号列号列号(键号必须依次是从左至右书写)(键号必须依次是从左至右书写)(键号必须依次是从左至右书写)(键号必须依次是从左至右书写) 或键码或键码或键码或键码= =列首键号列首键号列首键号列首键号+ +行号行号行号行号(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)(键号必须依次是从上至下书写)第十四页,共五十一页。判定有无键闭合的子程序:判定有

16、无键闭合的子程序:MOVDPTR,#0101HMOVA,#00H;A口送口送00HMOVXDPTR,AINCDPTRINCDPTR;建立;建立C口地址口地址MOVXA,DPTR;读;读C口口CPLA;A取反,无键按下则全取反,无键按下则全“0”ANLA,#0FH;屏蔽;屏蔽A高半字节(高半字节(C口只口只4位)位)RET执行执行KS1子程序的结果是:有闭合键则(子程序的结果是:有闭合键则(A) 0; 无闭合键则(无闭合键则(A) 0。CPL A;负逻辑不直观,常采取行列线加反相器或;负逻辑不直观,常采取行列线加反相器或 软件求反的方法把键盘改成正逻辑。软件求反的方法把键盘改成正逻辑。KS1:第十五页,共五十一页。 键盘扫描子程序如下:(键盘扫描子程序如下:(8155的的A口、口、B口、口、C口和控制口地址口和控制口地址分别为分别为7F00H、7F01H、7F02H、7F03H,设,设8155A已已在主程序中初始化。已设定为在主程序中初始化。已设定为A口方式口方式0输出,输出,C口的低口的低4位方位方式式0输入。)输入。)KEY1:ACALL KS1 ;调用判断有无键按下子程序;调用判断

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

当前位置:首页 > 办公文档 > 心得体会

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号