- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
按键的特点及工作原理
独立式按键
矩阵式按键;;;按键的特点及工作原理
独立式按键
矩阵式按键;按键的特点及工作原理;键盘接口需要解决的问题;;独立式按键;例1:用P1口检测三个按键的状态并完成相应的功能;ORG0000H如果不送高电平,原来是低电平
KB:MOVP1,#0FFH;状态的管脚读进来会出错
MOVA,P1;有键按下为0,无键按下为1
CPLA
ANLA,#07H;屏蔽其它位状态
JZKB
LCALLD10MS;去抖动
MOVA,P1
CPLA
ANLA,#07H
JZKB;矩阵式按键;键值产生的原理
1)扫描法产生键值
具体方法是,以行线作为扫描输出,以列线作为接收输入,依次将行线置为低电平,并在列线上逐次接收数据。扫描完成后,如果发现接收到的某一列线有低电平,则表示该列线与行线连接的按键已经闭合。在接收到低电平的那次扫描中,行线数据与列线数据的组合便是所期望的键值,由该键值可确定闭合键在矩阵连接中的连接位置。;2)线反转识别法产生键值
具体方法是,先将行线全部置为低电平,列线全部置为高电平,从列线对应的I/O口线接收数据,如果发现有口线变低,则证明该列线与闭合的按键连接。反之,将列线全部置为低电平,行线全部置为高电平,从行线对应的I/O口线接收数据,如果发现有口线变低,则证明该行线与闭合的按键连接。对上述两次操作的结果所获得的两个8位数据进行综合分析,便可确定闭合的按键所在位置。;键盘扫描子程序一般包括以下内容:
1.判别有无键按下;
2.扫描获取闭合键的行、列值;
3.用计算法或查表法得到键值;
4.判断闭合键释放否,如没释放则继续等待;
5.保存闭合键号。;键按下/释放判断;按键识别——扫描法;例2:键盘扫描程序; AJMPTRYK
LINE3:JBACC.0,LINE4
MOVA,#0CH
AJMPTRYK
LINE4:INCR3;4行都没有查到,列号加1
MOVA,R2;初值左移1位 ,变
RLA
JNBACC.0,BACK,子程序返回,重来
MOVR2,A;列号左移为,则在从第一行开始查
AJMPLINE0
TRYK:ADDA,R3;行首号和列号相加
BACK:RET ;定时扫描方式;利用定时器,定时的去扫描按键。查询法;中断的方法;中断扫描方式;;INT0的中断入口地址
文档评论(0)