- 8
- 0
- 约5.1千字
- 约 24页
- 2023-09-06 发布于广东
- 举报
单片机的输入输出设备接口第5章;第五章 单片机的输入/输出设备接口;一、键盘接口概述
1.单片机实现键盘接口的常用方法
独立式键盘:由一组相互独立的按键组成,每个按键与一位I/O口相连,接口简单,但是占用I/O口较多。
矩阵式按键:键按行列组成矩阵,行和列相交处安放一个按键,每条行线或列线与一位I/O相连,节省I/O资源。 ;硬件去抖动方法:;⑵键值或键号的计算
当确定有键按下时,需进一步根据行线和列线的状态确定按下键的值或键号,以实现键功能的程序。
⑶等待键释放
获得键值后在以延时或查询的方法等待键释放,以保证键的一次闭合只进行一次键功能的实现。
⑷确定键盘的监控方法
中断方式执行。当有键被按下时,向单片机发出中断请求,中断响应后执行键盘扫描工作。
定时方式执行。利用内部定时计数器完成一段时间的重复定时,每次定时完成执行一次键盘扫描工作。 ;KEY:MOV P1,#07H
MOV A,P1
CPL A
ANL A,#07H
JZ GRET
JB ACC.0,KEY1
JB ACC.1,KEY2
JB ACC.2,KEY3
GRET:RET
KEY1:LCALL WORK1
KEY2:LCALL WORK2
KEY3:LCALL WORK3
RET;三、矩阵式按键
1.矩阵式键盘的工作原理
X0~X3为键盘的行线,通过电阻接+5V;Y0~Y3为键盘的列线,由单片机控制其输入信号。每条行线和列线处有一个按键结构,当所有键未被按下时,行线与列线断开,每条行线都呈现高电平。当有键被按下时,按键所在行线与列线短路,此时行线的电平由列线的电位所决定。;3.键盘扫描程序
键输入程序的功能:
(1)判别键盘上有无键闭合:其方法为扫描口PA0~PA7输出全“0”,读PC口的状态,若PC0~PC3,为全“1”(键盘上行线全为高电平),则键盘上没有闭合键;若PC0~PC3不为全“1”,则有键处于闭合状态。
(2)去除键的机械抖动:其方法为判别到键盘上有键闭合后,延迟一段时间再判别键盘的状态,若仍有键闭合,则认为键盘上有一个键处于稳定的闭合期,否则,认为是键的抖动。
(3)判别闭合键的键号:方法为对键盘的列线进行扫描,扫描口PA0~PA7依次输出:
PA7 PA6 PA5 PA4 PA3 PA2 PA1 PA0
1 1 1 1 1 1 1 0
1 1 1 1 1 1 0 1
:
0 1 1 1 1 1 1 1; 相应地顺次读出PC口的状态,若PC0~PC3为全“1”,则列线输出为“0”的这一列上没有键闭合;否则,这一列上有键闭合。闭合键的键号等于为低电平的列号加上为低电平的行的首键号。
eg、PA口的输出,读出PC0~PC3为1101,则1行1列相交的键处于闭合状态,第一行的首键号为8,列号为1,闭合键的键号为:
N:行首键号+列号=8+1=9
(4)使CPU对键的一次闭合仅作一次处理:采用的方法为等待闭合键释放以后再作处理。;键盘扫描程序如下:
KEY1:ACALL KS1 ;调用判别有无键闭合子程序
JNZ LK1
ACALL DIR ;调用显示子程序,延迟6ms
AJMP KEY1
LK1:ACALL DIR
ACALL DIR
ACALL KS1 ;调用判别有无闭合键子程序
JNZ LK2
ACALL DIR
AJMP KEY1
LK2:MOV R2,#0FEH ;扫描初值送R2
MOV R4,#00H ;扫描列号送R4
LK4:MOV DPTR,#7F01H ;指向A口
MOV A
您可能关注的文档
最近下载
- 2025年销售年度工作计划.docx VIP
- 五年级下册生字表语文.pdf VIP
- 区委常委、区纪委书记、监委主任2025年度民主生活会五个带头个人对照检查材料.doc VIP
- 《第三方物流》-第5章-第三方物流的供应链管理-测试.docx VIP
- 蜡基温拌剂对沥青微观特性的影响分析.pdf VIP
- 五种基本句型英语.ppt VIP
- 沥青温拌剂的制备工艺与温拌沥青混合料性能的关联性研究.docx VIP
- 江苏省南通市启东市2025届九年级下学期中考二模英语试卷(含答案).pdf VIP
- 《现代农业节水灌溉技术》课件.ppt VIP
- 17J008 挡土墙(重力式、衡重式、悬臂式)(最新).pdf VIP
原创力文档

文档评论(0)