C51矩阵键盘的检测全解.ppt

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C51矩阵键盘的检测全解

矩阵键盘的结构 矩阵键盘的检测方法 矩阵键盘的编程操控及功能处理 掌握独立键盘的检测原理及软件编程方法 行扫描法 线反转法 中断式矩阵键盘如何与单片机连接电路? 回 顾 独立键盘的检测: 按键状态的扫描; 软件消抖及松手检测; 按键按下的处理 教学内容 教学要求 矩阵键盘的结构 矩阵键盘实际上是由排列成矩阵形式的一系列按键开关组成,用户通过键盘可以向CPU输入数据、地址和命令。常见的接口电路如右图所示。 4*4矩阵式键盘 矩阵键盘的结构 矩阵键盘特点 电路结构复杂,但提高了I/O引脚的利用率,软件编程较复杂,适用于所需按键较多的场合。 矩阵键盘的检测需解决以下问题: 1、开关状态的可靠输入——可设计硬件去抖动电路或设计去抖动软件。 2、键盘检测的方法(即如何编写键盘扫描函数)。 3、键盘检测的控制方式(即扫描函数如何被调用)——顺序查询方式、定时查询方式和中断方式。 4、键盘控制程序的编写。 按键的消抖 按键抖动时间约5ms-10ms,可软件消抖或者硬件消抖。 软件消抖:延时约10ms再次判断。 硬件消抖:并联电容或双稳态消抖电路。 消抖电路 矩阵键盘的检测方法 矩阵键盘识别按键的方法有两种:一是行扫描法,二是线反转法。 1)行扫描法 通过行线发出低电平信号,如果该行线所连接的键没有按下的话,则列线所接的端口得到的是全“1”信号,如果有键按下的话,则得到非全“1”信号。 为了防止双键或多键同时按下,往往从第0行一直扫描到最后1行,若只发现1个闭合键,则为有效键,否则全部作废。 找到闭合键后,读入相应的键值,再转至相应的键处理程序。 键号 = 行首键号(0、4、8、12)+列号(0、1、2、3) 矩阵键盘的检测方法 矩阵键盘的检测方法 2)线反转法 先将行线作为输出线,列线作为输入线,行线输出全“0”信号,读入列线的值; 然后将行线和列线的输入输出关系互换,并且将刚才读到的列线值从列线所接的端口输出,再读取行线的输入值。那么在闭合键所在的行线上值必为0。这样,当一个键被按下时,必定可读到一对唯一的行列值。 键值 = 行值 | 列值 ?查表得键号。 矩阵键盘的检测方法 以4*4矩阵键盘接P3口为例 先列扫描置P3=0xf0,当有键按下得列值,再行扫描置P3=0x0f,当有键按下得行值,最后合并行列值得键值。 矩阵键盘检测的控制方式 单片机在运行过程中,何时进行键盘扫描和处理,有以下几种方式: 顺序查询方式 定时扫描方式 中断方式 矩阵键盘检测的控制方式 顺序查询方式 单片机主程序通过调用键盘扫描子程序,查询有无按键按下。 何时调用键盘扫描子程序,何时扫描键盘;否则不进行键盘的扫描。 矩阵键盘检测的控制方式 定时扫描方式 每隔一段时间调用键盘扫描子程序对键盘扫描一次。 利用单片机内部的定时器产生一定时间(例10ms)的定时,当定时时间到就产生定时器溢出中断。CPU响应中断后对键盘进行扫描,并在有键按下时识别出该键,再执行该键的功能程序。 矩阵键盘检测的控制方式 中断方式 为提高CPU工作效率,可采用中断扫描工作方式。其工作过程如下:当无键按下时,CPU处理自己的工作,当有键按下时,产生中断请求,CPU转去执行键盘扫描子程序,并识别键号。 矩阵键盘案例(1)--线反转法 矩阵键盘控制2位数码管显示,分别按下0-15号按键,数码管显示对应的键号,最初无键按下时数码管显示16,用线反转法实现。 参考程序见“矩阵键盘-线反转法” 矩阵键盘案例(1)--线反转法 矩阵键盘案例(2)--行扫描法+定时扫描 矩阵键盘控制2位数码管显示,分别按下0-15号按键,数码管显示对应的键号,最初无键按下时数码管显示16,用行扫描法+定时扫描实现。 参考程序见“矩阵键盘-行扫描法+定时扫描” 矩阵键盘案例(2)--行扫描法+定时扫描 小 结 矩阵键盘的检测: 按键的识别:行扫描法、线反转法; 软件消抖及松手检测; 按键按下的处理 思考题

文档评论(0)

6952225 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档