历史上的今天
返回首页

历史上的今天

今天是:2025年03月20日(星期四)

正在发生

2018年03月20日 | 利用两个I/O引脚将4×3矩阵键盘连接至微控制器

2018-03-20 来源:eefocus

    在基于微控制器(MCU)的项目中,矩阵式键盘常被用作输入设备。将矩阵键盘连接至微控制器的常规做法需使用微控制器的多个I/O引脚。然后MCU运用扫描算法来确认按住了哪些键。这种办法的一个弊端就是需要大量MCU的I/O引脚来连接键盘。例如,连接一个4×3键盘需7个数字I/O引脚。而当项目采用的是低引脚数MCU,或使用的MCU不具备足够的可用I/O引脚数时,就出现了问题。

 

    对于这一问题,有两个解决办法:使用现成的I/O扩展器,或用一只电阻排,为每个键设定一个唯一的电压,然后使用模拟引脚来读取电压值,判断按住了哪个键。每个方案都有其不足之处。

    由于在大多数情况下,I/O扩展器需通过特殊的通信协议(如I2C协议或SPI协议)来读写数据,MCU需要具备内置通信模块,或用户需实现相关的通信协议软件,而这明显增加了MCU的负担。另一方面,当按键数量增加时,通过电阻排给各按键分配独特电压会变得很繁琐,而这最终将导致电压裕度较小。此外,由于电阻值会随温度而变化,使用较小的电压裕度可能导致读取错误,甚至连开关弹跳都可能成为导致电压出错的重要原因。这种方法的另一个弊端是要求MCU中有模拟输入引脚。这里描述的实例显示出能够高效解决上述所有问题的办法,及其具备的几个优势:它只需要两只I/O引脚,而不论连接的开关数量有多少;不需要特别的通信协议;不需要模拟引脚。本实例基于两个CD4017约翰逊计数器,这种计数器很常见而且不贵。

    图1显示出4×3键盘采用的电路。R1、R4、R5和R6用于限流,D7、D4、D5和D6构成一个“或”门。

使用两个I/O引脚将4×3矩阵键盘连接至微控制器

    这里描述的例子显示出如何采用这种方法来读取4×3键盘。其中一个CD4017被用来控制键盘行,另一个控制键盘列。

    MCU生成时钟信号,然后将其供给控制列的计数器IC。起初,列计数器和行计数器的第0个输出处于逻辑高位。在收到时钟脉冲后,列计数器将增加。在收到第四个时钟脉冲时,列计数器将重置,并同时将行计数器增加1。在列控制器重置后,行控制器增加,并在收到第五个来自列控制器的时钟脉冲后重置。在生成时钟脉冲的同时,应增加MCU的计数变量,并且在第五个时钟脉冲到达行控制器时,将计数变量重置为1。键盘的两个输出做“或”运算,并连接到MCU的一个外部中断引脚。

    只有当行和列的相关按钮均处于逻辑高位,一个按钮被按下时才会发生中断。如果按钮的行或列处于逻辑零值,则不会发生中断。

    中断发生时,MCU读取当时的计数值,所读取的值即对应于刚按下的按钮。

    当MCU每隔一段时间产生时钟脉冲时,MCU内的时钟计数增加;这一计数等于键盘上的开关数目,按下这些开关时可造成中断。图2中的流程图描述了这一情况。

使用两个I/O引脚将4×3矩阵键盘连接至微控制器

    注意:虽然本例仅展示了4×3键盘的读取方法,但可以用两个4017计数器的剩余输出来读取10×10键盘。另外,必要时,还可以级联更多的4017IC来扩展键盘。


推荐阅读

史海拾趣

德尔创(Dersonic)公司的发展小趣事

德尔创(Dersonic)公司成立于XXXX年,由一群电子工程领域的专家共同创立。成立之初,公司面临着资金紧张、市场竞争激烈等挑战。然而,他们凭借对电子技术的深刻理解和对市场的敏锐洞察,决定专注于研发和生产高品质的电子元器件。通过不断的研发和创新,德尔创成功推出了其首款具有竞争力的产品,并在市场上获得了初步认可。

Clover Display Limited公司的发展小趣事

随着中国内销市场的不断扩大,Clover Display Limited看到了巨大的商机。为了更好地服务中国内销客户,公司在2001年在深圳南山区成立了高华电子显示(深圳)有限公司。这家子公司以独资经营方式运作,可以开具增值税发票,以人民币结算,从而更加便捷地服务中国客户。深圳子公司的成立不仅拓宽了公司的销售渠道,也为其在中国市场的进一步发展奠定了坚实基础。

GeneSiC公司的发展小趣事

技术创新是Clover Display Limited得以持续发展的核心动力。公司高度重视研发团队的建设,不仅在香港设立了一支强大的研发团队,还不断引进国内外优秀人才。这些研发人员致力于开发液晶显示器(LCD)及液晶显示屏(LCM)的新应用,为公司带来了众多具有市场竞争力的产品。在他们的努力下,Clover Display Limited在液晶显示技术领域取得了多项突破,为公司的快速发展奠定了坚实基础。

Connector City公司的发展小趣事

随着全球环保意识的不断提高,电子行业对绿色环保的要求也越来越高。Connector City公司积极响应国家环保政策,加强了对生产过程的环保管理。公司引进了先进的环保设备和技术,减少了生产过程中的废弃物排放和能源消耗。同时,公司还注重产品的环保性能设计,推出了多款符合环保标准的新型连接器产品。通过坚持绿色环保和可持续发展理念,公司赢得了社会的广泛赞誉和支持。

这五个故事仅是对Connector City公司可能发展路径的一种虚构描述,实际情况可能因市场变化、公司策略调整等多种因素而有所不同。在实际发展中,公司需要根据自身情况和市场环境做出灵活的调整和决策。

Atlanta Micro公司的发展小趣事

Atlanta Micro的创立,源于几位对射频(RF)技术充满热情的工程师。他们看到了在航空航天和国防领域,高性能RF模块和组件的巨大需求,于是决定共同创业,致力于这一领域的研发。在创业初期,公司面临着资金短缺、市场竞争激烈等诸多挑战,但凭借着对技术的执着和不懈努力,Atlanta Micro逐渐在业界积累了声誉,并获得了初步的市场认可。

EHC(ELECTRONICHARDWARE)公司的发展小趣事

在电子行业中,产品质量是企业生存和发展的关键。EHC公司深知这一点,因此一直将品质管理作为企业发展的重要战略。公司建立了完善的质量管理体系,从原材料采购到生产制造再到产品出厂,每一个环节都经过严格的把控。这种对品质的坚持和追求让EHC公司的产品在市场上赢得了广泛的信任和认可。

问答坊 | AI 解惑

应用射频芯片怎样实现定向功能?

现有一块nRF24L01芯片和单片机,怎样实现较近距离上的定向功能??…

查看全部问答>

录像机输出的视频信号能传多远

我从汉邦16路录像机输出的16路视频信号 通过75-5 能传送多远的距离? 我实际要传送到1公里左右的距离,1公里外只要看就行了 中间要加视频信号放大器吗?…

查看全部问答>

单片机下C编程的问题

#include unsigned char i,j; unsigned char code tab[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,                         0x87,0xff,0xef} ; void Init_Com( ...…

查看全部问答>

lantronix程序对硬件进行设置时候出现问题,请高手帮忙解决!

单位购买了一套系统,使用非接触IC卡消费机实现对卡上消费数据的操作,串口处标识的为rs232 rs485。现在由于服务器故障,要重新安装调试服务器,但是我把当初对消费机设置的软件弄丢了,只能在网上找了lantronix的不同版本来做设置,总是不能通过。 ...…

查看全部问答>

USB设计和测试的问题

我在测试人家的USB仿真模型时碰到了大问题 我用自己写的数据发送模块仿真USB HOST的数据发送,将数据 发送给要测试的USB DEVICE的仿真模型,当我发送完第一个SETUP 包后 USB DEVICE是不是应该回一个ACK信号啊? 为什么我的USB DEVICE的仿真模型 ...…

查看全部问答>

紧急啊!紧急!求问

我在下载lm3s811时 出现了 如图情况,终解决不了。以至于下载无法完成!!紧急求解!!我该如何办!!…

查看全部问答>

CMRR & PSRR

为求取得最大不失真输出,最简差动放大器两臂的初始电位皆应居中,而静态电流则该小于 Icm 之半。…

查看全部问答>

一个小白电子工程师采购物料的经验分享

和很多痴迷电子的工程师一样,自己家中常常进行一些实验,螺丝刀到示波器,必须的开发及测试设备虽然简单却也一应俱全,平常用的电子器件和芯片也是大袋小兜的数不尽,如果用到外国的料,一般只好到外国网站找,好像Findchips,oemtrade,但都需要用信 ...…

查看全部问答>

电脑硬盘

哪位大侠能分析一下我的电脑硬盘…

查看全部问答>

LSD-FET430UIF usb转并口 的驱动安装不了

我的笔记本是win7的,驱动安装不了,什么问题呢…

查看全部问答>