首页 > 技术 > 内容

矩阵按键原理图_矩阵按键扫描实例

时间:2026-01-28  作者:Diven  阅读:0

键盘分编码键盘和非编码键盘。键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或键值的称为编码键盘,如计算机键盘。而靠软件编程来识别的称为非编码键盘。

在一般嵌入式应用中,用的最多的是非编码键盘,也有用到编码键盘的。非编码键盘又分为独立键盘和行列式(又称为矩阵式)键盘。所谓独立式键盘,即嵌入式CPU(或称MCU)的一个GPIO口对应一个按键输入,这个输入值的高低状态就是键值。矩阵键盘用于采集键值的GPIO是复用的,一般分为行和列采集,例如4*4矩阵键盘就只需要行列各4个按键就可以了,矩阵键盘的控制较独立键盘要复杂得多,本实验未涉及,所以对其原理不做详细介绍。

独立按键一般有2组管脚,虽然市面上我们常常看到有4个管脚的按键,但一般是两两导通的,这2组管脚在按键未被按下时是断开的,在按键被按下时则是导通的。基于此原理,我们一般会把按键的一个管脚接地,另一个管脚上拉到VCC,并且也连接到GPIO。这样,在按键未被按下时,GPIO的连接状态为上拉到VCC,则键值为1;按键被按下时,GPIO虽然还是上拉到VCC,但同时被导通的另一个管脚拉到地了,所以键值实际上是0。

我们的SF-CY4开发板上有一组4*4矩阵键盘。通过P12的PIN1-2短接时,其实S1/S2/S3/S4可以作为独立按键使用,一端接地,另一端在上拉的同时连接到FPGA的I/O口。当I/O口的电平为高(1)时,说明按键没有被按下,当I/O口的电平为低(0)时,说明按键被按下了。这是8.4节中我们的使用方法。在本实例中,我们不再只局限于独立按键这么low的应用了,这里我们将要把所有16个按键都使用起来,实现我们真正的矩阵按键功能。要做矩阵按键,那么大家首先要确认把自己的SF-CY4开发板插座P12的PIN2-3用跳线帽短接。矩阵按键的原理图如图8.85所示。

图8.85 矩阵按键原理图

接续上面的原理图,我们来看看矩阵按键的键值如何获得。

通常,我们将这个矩阵按键分为两组信号,即列信号(包括BUT0/BUT1/BUT2/BUT3)和行信号(BUT4/BUT5/BUT6/BUT7)。列信号作为FPGA的输入信号,行信号作为FPGA的输出信号。

若FPGA输出的行信号为高电平时,无论是否有按键被按下,列信号输入到FPGA的电平始终为高电平,这是无法实现任何的矩阵按键值采集的;若FPGA输出的行信号为低电平时,没有按键按下,那么列信号会保持高电平(因为有上拉),有键按下时,则由于按键将行、列信号短接,那么列信号的电平会由于行信号而被拉低,通过这种方式,我们就可以达到键值的检测。

但是,可能大家还有疑惑,4个行信号若同时拉低,那么任意一个4X4按键被按下,所有的列信号也都会拉低啊,这只能判断是否有按键被按下,具体哪一个按键被按下就不得而知了。确实如此,解决办法也很简单,我们在同一时刻只能拉低4个行信号中的一个,那么就将按键状态定位到具体的行,这样就如同独立按键一样可以直接定位到这一行按键中的哪个按键被按下了。在实现上,我们会让4个行信号循环的拉低,同一时刻有且只有一个行信号输出为低电平,这就是我们所说的“键盘扫描”原理。

本实例实现矩阵按键值的采集(即判断16个按键的哪个被按下了),然后通过数码管显示按键值(显示值为16进制的0-F),数码管最低位显示最后一次的键值,高3位显示之前的值,即每按下一次按键,数码管的键值右移一位。

如图8.86所示,用8个信号检测16个按键值,有点难度,不过原理上一节我们已经讲过。从功能上,我们首先对4个作为输入的列信号进行按键消抖处理,然后依次输出不同的行信号值,以此找到有键按下时的特殊列信号值,这样便能采集键值,送往数码管显示。

图8.86 矩阵按键扫描实例功能框图

工程结构如图8.87所示,cy4.v为顶层模块,不做逻辑,只做信号接口定义和连接。anykeyscan.v模块实现行信号输出;sigkeyscan.v实现列信号的按键消抖和键值采集;seg7.v为数码管驱动模块。

图8.87 矩阵按键扫描实例模块层次

猜您喜欢


贴片电阻通常使用数字编码来表示阻值,最常见的是三位数和四位数编码。三位数编码:前两位数字表示有效数字,第三位数字表示乘数,即10的几次方。例如,电阻上的标注为「...
2024-11-26 11:29:19
危险品标识是确保安全管理的重要工具,具有多重作用。能够明确标识出危险物品的种类,如易燃、腐蚀性、毒性等,帮助人们快速识别潜在风险,避免意外事故的发生。危险品标识...
2012-11-20 00:00:00
喉镜是重要的医学工具,主要用于检查和治疗喉部及其周围结构。通过喉镜,医生可以清晰地观察声带、喉咙及气管的状况,及时发现潜在的病变,如肿瘤、炎症或异物堵塞等。这种...
2018-08-09 00:00:00
压敏电阻作为重要的保护元件,其性能直接影响设备的安全性和稳定性。VITROHM作为知名的压敏电阻品牌,优异的品质和可靠的性能赢得了市场的认可。那么,在众多型号和...
2021-08-24 11:41:43
工作模式1)连续测量模式连续测量模式,在客户所选择的速率下进行连续的测量,并所测量的更新数据输出寄存器。如果有必要,数据可以从数据输出寄存器重新读取,但是,...
2023-07-20 10:51:00
防硫化电阻作为关键元件在电路设计中是重要配件。FH(风华高科)作为国内知名的电子元件制造商,其防硫化电阻产品因优异的性能和可靠的品质受到认可。本文将围绕FH防硫...
2015-08-05 22:13:52
随着现代家庭生活水平的提高,冰箱已成为不可少的家用电器。冰箱的正常运行直接关系到食品的保存质量,而温度保险丝作为冰箱的重要安全保护元件,其工作状态直接影响冰箱的...
2025-12-02 21:00:04
电子产品维修或DIY时,常常需要识别电路板上的贴片元器件。贴片电阻、电容、电感是其中最常见的被动元件,快速识别对于电路分析和故障排除很重要。贴片电阻通常体型较小...
2024-11-29 10:26:31
液压冲孔工具是高效、便捷的金属加工设备,应用于建筑、机械制造和汽车行业。通过液压系统产生强大的压力,能够轻松穿透各种厚度的金属材料,快速实现精确的冲孔作业。这款...
2010-07-11 00:00:00
安规电容是电子设备中一个重要的元件。的主要功能是确保电气安全,防止电击和火灾。本文将介绍安规电容的不同用途,帮助大家更好地理解这个元件。保护电气安全安规电容主要...
2025-03-22 01:31:07