矩阵式键盘按键的识别.pptx

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

矩阵式键盘按键的识别

AT89C51+VCC逐列扫描法如何识别哪一个按键按下线列线S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15

AT89C51+VCC逐列扫描法输入-行线输出-列线是否有键按下;判断具体按键;逐列扫描法:线列线S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15

AT89C51+VCC逐列扫描法输出向所有的列线上输出低电平,再读入所有的行信号输入信号读入0 0 0 0000001230123行线列线S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15

AT89C51+VCC逐列扫描法输出按键中无键按下,则读入的行电平全为高。输入信号读入0 0 0 0111101230123行线列线S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15

AT89C51+VCC逐列扫描法输出按键中任意一个被按下,那么读入的行电平则不全为高输入0 0 0 0111→0101230123行线列线S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15

S9S0S1S2S3S4S5S6S7S8S10S11S12S13S14S15AT89C5101230123行线列线+VCC逐列扫描法输出输入是否有键按下;判断具体按键;逐列扫描法:

AT89C51+VCC逐列扫描法S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15输出先送列线0为低电平,列线1、2、3为高电平,若读入的行值为全高,则表示无键按下输入0 1 1 1111101230123行线列线

AT89C51+VCC逐列扫描法S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15输出再送列线1为低电平,列线0、2、3为高电平读入的行电平的状态则显示了S1、S5、S9、S13四个按键的状态依次类推输入1 0 1 101230123行线列线

AT89C51+VCC逐列扫描法S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15输出输线列线是否有键按下;行电平不全为高→有键按下判断具体按键;逐列送低电平→判断每列按键状态逐列扫描法:键值=行号*4+列号

AT89C51+VCC二.行列反转法S0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15输出输线列线输出两次行列相反行列反转法:通过给行、列端口输出两次相反的值,再将分别读入的行值和列值进行求和或按位“或”运算,得到每个键的扫描码。

AT89C51+VCCS0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15输出输线列线输出:列全0行全1;读入:行列值行列反转法:0 0 0 01111二.行列反转法

AT89C51+VCCS0S1S2S3S4S5S6S7S8S9S10S11S12S13S14S15输出输线列线输出:列全0行全1;读入:行列值输出:列全1行全0;行列反转法:1 1 1 10000二.行列反转法

行列反转法输出:列全0行全1;再读入:行列值输出:列全0行全1;读入:行列值例S0按下,P0值为0x0E例S0按下,P0值为0xE0两次行列值合并,形成扫描码相加按位或例:0xEE,S0的扫描码16个按键的扫描码确定按键二.行列反转法

文档评论(0)

方世玉 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6101050130000123

1亿VIP精品文档

相关文档