• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

矩阵键盘识别的原理是什么?

leon汉子 2018-09-14 浏览量:1333
它有哪几种识别方式,工作流程是怎么样的?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 有关矩阵键盘的只是,楼主可以参考一下刘平的教程《STC15单片机实战指南》,里面有详细的介绍,还有配套的例程:


    01.png


    资料网盘下载链接:https://pan.baidu.com/s/1_NtSBl2S3Q_kPLiEC1qPDQ


    02.png


    • 发布于 2018-09-14
    • 举报
    • 评论 0
    • 3
    • 0

其他答案 数量:20

  • 当键盘中按键数量较多时,为了减少对 I/O 口的占用,通常将按键排列成矩阵形式,也称为行列键盘,
      矩阵键盘不但在连接上比单独式按键复杂,而且它的按键识别方法也比单独式按键复杂。在矩阵键盘的软件接口程序中,常使用的按键识别方法有行扫描法和线反转法。这两种方法的基本思路是采用循环查循的方法,反复查询按键的状态,因此会大量占用 MCU 的时间,所以较好的方式也是采用状态机的方法来设计,尽量减少键盘查询过程对 MCU 的占用时间。
    • 发布于2018-09-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 就是扫描,两边都是IO口,拿4X4键盘来说,一排是行4个IO一排列4个IO,用程序一直扫面这个行选项或则列选项,列选项IO直接发送高电平

    • 发布于2018-09-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 矩阵按键就相当于先使能某一列或者行,然后去判断行过列的哪个按键有动作。
    • 发布于2018-09-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 其实有两种

    1. 单片机直接对矩阵编码来识别

    2. 矩阵自己编码,单片机读取

    1实现对单片机来说已经是一个比较大的工程了,

    2则和读取一个GPIO没有太大的区别。

    • 发布于2018-09-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 设想一下:首先是一个1x4的键盘,很简单,行输出一个1,看4个列上有谁变为1了,那就可以定位到哪一列上的按键被按下了。拓展开去,现在变成了2行:2x4矩阵,先给第一行上电,情况和1x4一样,接下来第二行上电,此时第一行掉电,还是和1x4一样的情况了。

    矩阵键盘在同一时刻只有一行上电,通过检测哪一列按下,可以定位出某一个按键,以此实现功能。

    • 发布于2018-09-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 扫描矩阵,判断是哪个按键按下了,按键数量多的话,不怎么好用,占用 io 口太多了。现在键盘一般是中断发消息
    • 发布于2018-09-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 原理简单,比如44按键,就是你对端口输出一个数0xfe,然后你再读这个端口,如果是0xee,很明显有按键,如果是0xde,0xbe0x7e,依次都是一行的按键值。
    • 发布于2018-09-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 扫描矩阵,检查什么地方错误,读取端口后判断错误
    • 发布于2018-09-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 矩阵键盘就是行列扫描,因为每一个按键对应的行和列都是固定的,那么对应的行和列都扫描到的时候说明这个按键被按下了
    • 发布于2018-09-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输入端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。
    • 发布于2018-09-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 具体的说就是扫描

    先扫描行,得到一个坐标

    再扫描列,得到另一个坐标

    两个一起确定按键值

    • 发布于2018-09-17
    • 举报
    • 评论 0
    • 0
    • 0

  • 比如4*4

    当按键一次时,每一行和每一列都只有一个IO是相通的,其他的IO都是互不相通的

    那么当我依次给行1到4赋值,那么只要我在列中得到了那个赋值,就说明我按键列,并且能在矩阵中确定唯一的一个按键

    • 发布于2018-09-18
    • 举报
    • 评论 0
    • 0
    • 0

  • 矩阵按键是通过几条按键线,通过不同的按键线路来检测每个按键的按下
    • 发布于2018-09-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 矩阵键盘的原理是单片机逐行逐列扫描电平,通过返回的一组电平值不同判断哪个按键按下。

    • 发布于2018-09-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 就是通过行列扫描,通过不同行列的电平确定不同的按键状态
    • 发布于2018-10-11
    • 举报
    • 评论 0
    • 0
    • 0

  • 首先行扫描,然后进行列扫描,通过电平的是否相同判断按键是否按下。
    • 发布于2018-10-18
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

矩阵键盘识别的原理是什么?