行列式键盘
好的,我们用中文来解释行列式键盘(也称为矩阵键盘)。
什么是行列式键盘?
行列式键盘是一种常用的、由多个按键组成的输入设备设计结构。它的核心思想是将按键排列成行和列的矩阵形式,而不是将每个按键都独立连接到控制器。这样可以显著减少控制器(如单片机、Arduino等)所需使用的输入/输出引脚数量。
基本结构
- 按键排列: 按键按物理结构排列成一个网格,例如 2x2, 3x3, 4x3, 4x4, 8x8 等(代表行数 x 列数)。
- 行线与列线:
- 行: 每一横排按键的一端连接在一根公用的水平线路上,称为行线。
- 列: 每一竖列按键的另一端连接在一根公用的垂直线路上,称为列线。
- 交叉点: 每个按键恰好位于某一行线和某一列线的交叉点上。按下按键相当于在该交叉点将相应的行线和列线连接(短接)起来。
工作原理 (按键扫描)
为了检测哪个按键被按下,控制器使用一种叫做扫描的技术:
- 初始化设置:
- 将所有行线设置为控制器输出模式。
- 将所有列线设置为控制器输入模式,并通常使能内部上拉电阻(这样默认状态下读取到的列线电平是高电平)。
- 逐行扫描:
- 控制器先将第一行线设置为低电平(
0),其余行线都保持高电平(1)。 - 然后依次读取所有列线的电平状态。
- 如果某一列线读到了低电平(
0),说明位于“当前扫描行”和“该列线”交叉点上的按键被按下了(因为该按键将低电平的行线连接到该列线,使其电平被拉低)。 - 如果所有列线读取到的都是高电平(
1),说明当前扫描行没有按键被按下。
- 控制器先将第一行线设置为低电平(
- 移至下一行:
- 完成第一行扫描后,将第一行线重新设置为高电平(
1)。 - 接着将第二行线设置为低电平(
0),再次读取所有列线状态。 - 重复这个过程,依次扫描完所有的行。
- 完成第一行扫描后,将第一行线重新设置为高电平(
- 确定键值: 当扫描到某一行时,如果有某一列线变低,即可根据当前扫描的行号和检测到低电平的列号,唯一确定是哪个按键被按下。将这个行、列坐标信息转换成一个具体的键值(如数字、字母或功能代码)。
为什么使用行列式结构?(优点)
- 节省 I/O 口资源: 这是最主要优点!对于一个
N行M列的矩阵键盘,只需要N + M个 I/O 口。例如:- 独立的 16 个按键:需要 16 个 I/O 口。
- 4x4 矩阵键盘:只需要 4 + 4 = 8 个 I/O 口。
- 按键数量越多,节省的 I/O 口数量优势越明显。
缺点和注意事项
- 需要扫描: 必须持续执行扫描过程才能检测按键,这需要处理器资源(虽然开销很小)。
- 可能存在按键冲突/误判:
- 消抖: 按键按下时触点会弹跳,导致电平快速跳变(抖动)。需要在软件(或硬件)上进行消抖处理(通常延时几毫秒后再次确认)。
- 多个按键同时按下:
- 同列不同行: 如果不同行的按键在同一列,同时按下时会使得该列始终为低电平(无论扫描哪行),难以区分具体按下了哪几个(这叫“重键”)。简单的扫描程序可能无法正确处理或可能误判。
- 同行不同列: 如果同行的按键在不同列,扫描该行时能检测到多个列低电平,可以识别出按下了多个键。
- 设计考量: 复杂的应用(如需要处理组合键的游戏键盘)需要更精细的扫描或专用芯片来处理多键同时按下的情况。
- 速度: 扫描整个键盘需要一定时间(行数越多时间越长),但在普通应用中通常不是问题。
典型应用场景
行列式键盘广泛应用于需要多个按键但处理器 I/O 口有限的地方:
- 计算器
- 密码输入面板(如门禁系统)
- 遥控器按键
- 仪器仪表控制面板
- 简单的游戏控制器
- 嵌入式系统的人机接口
- 电话拨号键盘
- 微波炉/洗衣机等家电的按键操作面板
总结
行列式键盘利用行和列的结构,通过扫描技术有效地利用有限的 I/O 口资源来实现大量按键的检测。它是一种成本低廉、设计简单且应用广泛的按键输入解决方案,尤其适合 I/O 引脚紧张的单片机或嵌入式系统。
你想知道具体的实现代码(比如用 C 语言在单片机上驱动 4x4 键盘)吗?
什么是矩阵键盘?矩阵键盘扫描原理介绍
,由于电路设计时需要更多的外部输入,单独的控制一个按键需要浪费很多的IO资源,所以就有了矩阵键盘,常用的矩阵键盘有4X4和8X8,其中用的最多的是4X4。矩阵
矩阵键盘的特点有哪些
多,当需要较多按键时可能产生I/O口资源紧张问题。为此,可以采用行列式键盘方案,具体做法是,将I/O口分为行线和列线,按键设置在跨接行线和列线的交点上,列线通过上拉电阻接正电源。分为4x4
Proteus仿真-矩阵键盘(实验一)
多,当需要较多按键时可能产生I/O口资源紧张问题。为此,可以采用行列式键盘方案,具体做法是,将I/O口分为行线和列线,按键设置在跨接行线和列线的交点上,列线通过上拉电阻接正电源。分为4x4
资料下载
fansz
2021-12-28 19:23:21
51单片机按键控制数码管0~9_基于proteus的51单片机开发实例24-矩阵键盘(行列式键盘)...
1. 基于proteus的51单片机开发实例24-矩阵键盘1.1. 实验目的图1 矩阵键盘电路本实例我们来学习矩阵键盘(
资料下载
佚名
2021-11-23 16:36:34
掌握单片机系统行列式键盘驱动程序的编写方法
扩展行列式键盘一、实验目的二、实验内容三、实验步骤四、C代码如下五、实验结果六、实验体会一、实验目的学习并掌握行列式
学习行列式键盘的实现
流水灯我们已经学过了,那么我们来学习行列式键盘的实现。我的依旧是IAP15F2K61S2芯片,建的工程是IAP89C52的首先要是写行列式
求方阵A所对应的行列式的值
方阵的行列式det(A):求方阵A所对应的行列式的值。矩阵的秩rank(A):求矩阵A的秩。>> A=[3,2,1;3,1,5;3,2,3]A =321315323>> det(A)ans =
采用RS232实现行列式矩阵键盘接口设计
一、引言本方案是用VHDL语言来实现的基于RS232按位串行通信总线的行列式矩阵键盘接口电路,具有复位和串行数据的接收与发送功能,根据发光二极管led0-led2的显示状态可判断芯片的工作情况;实现
换一换
- 如何分清usb-c和type-c的区别
- 中国芯片现状怎样?芯片发展分析
- vga接口接线图及vga接口定义
- 芯片的工作原理是什么?
- 华为harmonyos是什么意思,看懂鸿蒙OS系统!
- 什么是蓝牙?它的主要作用是什么?
- ssd是什么意思
- 汽车电子包含哪些领域?
- TWS蓝牙耳机是什么意思?你真的了解吗
- 什么是单片机?有什么用?
- 升压电路图汇总解析
- plc的工作原理是什么?
- 再次免费公开一肖一吗
- 充电桩一般是如何收费的?有哪些收费标准?
- ADC是什么?高精度ADC是什么意思?
- EDA是什么?有什么作用?
- dtmb信号覆盖城市查询
- 苹果手机哪几个支持无线充电的?
- type-c四根线接法图解
- 华为芯片为什么受制于美国?
- 怎样挑选路由器?
- 元宇宙概念股龙头一览
- 锂电池和铅酸电池哪个好?
- 什么是场效应管?它的作用是什么?
- 如何进行编码器的正确接线?接线方法介绍
- 虚短与虚断的概念介绍及区别
- 晶振的作用是什么?
- 大疆无人机的价格贵吗?大约在什么价位?
- 苹果nfc功能怎么复制门禁卡
- 单片机和嵌入式的区别是什么
- amoled屏幕和oled区别
- 复位电路的原理及作用
- BLDC电机技术分析
- dsp是什么意思?有什么作用?
- 苹果无线充电器怎么使用?
- iphone13promax电池容量是多少毫安
- 芯片的组成材料有什么
- 特斯拉充电桩充电是如何收费的?收费标准是什么?
- 直流电机驱动电路及原理图
- 传感器常见类型有哪些?
- 自举电路图
- 通讯隔离作用
- 苹果笔记本macbookpro18款与19款区别
- 新斯的指纹芯片供哪些客户
- 伺服电机是如何进行工作的?它的原理是什么?
- 无人机价钱多少?为什么说无人机烧钱?
- 以太网VPN技术概述
- 手机nfc功能打开好还是关闭好
- 十大公认音质好的无线蓝牙耳机
- 元宇宙概念龙头股一览