CN102289291B - 一种提高键盘扫描速度的键盘电路 - Google Patents

一种提高键盘扫描速度的键盘电路 Download PDF

Info

Publication number
CN102289291B
CN102289291B CN 201110132961 CN201110132961A CN102289291B CN 102289291 B CN102289291 B CN 102289291B CN 201110132961 CN201110132961 CN 201110132961 CN 201110132961 A CN201110132961 A CN 201110132961A CN 102289291 B CN102289291 B CN 102289291B
Authority
CN
China
Prior art keywords
alignment
mouth
positive
switch triode
link
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN 201110132961
Other languages
English (en)
Other versions
CN102289291A (zh
Inventor
杨旭东
孙晓朋
戴广永
杨乾乾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN 201110132961 priority Critical patent/CN102289291B/zh
Publication of CN102289291A publication Critical patent/CN102289291A/zh
Application granted granted Critical
Publication of CN102289291B publication Critical patent/CN102289291B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Input From Keyboards Or The Like (AREA)

Abstract

本发明提出了一种提高键盘扫描速度的键盘电路,行线和列线的一端均分别通过限流电阻与电源相连,行线的另一端通过PNP开关三极管,前m根列线另一端通过NPN开关三极管,复用后与I/O口P1.1、P1.2、……P1.m对应相连;剩余列线一半通过PNP开关三极管,另一半通过NPN开关三极管,复用后与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2对应相连,所有开关三极管的基极分别通过限流电阻连接到I/O口P1.0;在每个按键位置行线与列线通过复合开关与地线相连;所有行线通过与门电路连接到中断输入口。本键盘电路当行列数之和为2N时,所需的I/O口数为N+1,当行列数之和为2N+1时,所需的I/O口数为N+2,且过两次扫描就能得出按键的行值和列值。

Description

一种提高键盘扫描速度的键盘电路
技术领域
本发明涉及计算机及自动控制系统的输入设备领域,具体为一种提高键盘扫描速度的键盘电路。
背景技术
目前通用的键盘主要以矩阵式键盘为主,在键盘应用中,如何提高键盘扫描速度,如何在一定数量的I/O口下尽可能多地增加按键个数是两个重要问题。传统地采用线反转法可以通过较少的扫描步骤实现对键盘的扫描,从而减少键盘扫描时间,如实现N×N的矩阵键盘,采用线反转法可以实现简单的扫描程序,但所需的I/O口数量为2N个,占用I/O口数量较多。在申请号为200420014528的专利文献中公开了一种键盘电路,能够有效的减少占用的I/O口数量,实现N×N的矩阵键盘扫描所需的I/O口数量为N+1个,但是其扫描过程复杂,确定一个按键值需要扫描N次,且在矩阵键盘行列数不相等时无法实现减少占用I/O口数量的目的。
发明内容
要解决的技术问题
为解决现有技术中的问题,实现在一定按键数量的前提下,既减少键盘扫描电路占用的I/O口数,又能简化键盘扫描过程的目的,本发明提出了一种提高键盘扫描速度的键盘电路。
技术方案
本发明的技术方案为:
所述一种提高键盘扫描速度的键盘电路,键盘电路为m×n的矩阵键盘电路,m表示行线数,n表示列线数,且行线数不大于列线数,其特征在于:行线和列线的一端均分别通过限流电阻与电源相连,行线的另一端分别通过PNP型开关三极管与I/O口P1.1、P1.2、……P1.m对应相连,列线中前m根列线的另一端分别通过NPN型开关三极管连接到I/O口P1.1、P1.2、……P1.m上;当n-m为偶数时,后n-m根列线中的一半列线分别通过PNP型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2相连,另一半列线分别通过NPN型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2相连;当n-m为奇数时,另外n-m-1根列线中的一半列线分别通过PNP型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n-1)/2相连,另一半列线分别通过NPN型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n-1)/2相连,剩余的一根列线通过开关三极管与I/O口P1.(m+n+1)/2相连;所有开关三极管的基极分别通过限流电阻连接到I/O口P1.0;在每个按键位置行线与列线通过复合开关与地线相连;所有行线通过与门电路连接到中断输入口。
所述一种提高键盘扫描速度的键盘电路,其特征在于:当行线数大于列线数时,将行线与列线互换。
所述一种提高键盘扫描速度的键盘电路,其特征在于:行线的另一端分别通过NPN型开关三极管与I/O口P1.1、P1.2、……P1.m对应相连,列线中前m根列线的另一端分别通过PNP型开关三极管连接到I/O口P1.1、P1.2、……P1.m上。
所述一种提高键盘扫描速度的键盘电路,其特征在于:当n-m为偶数时,后n-m根列线中的一半列线分别通过NPN型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2相连,另一半列线分别通过PNP型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2相连;当n-m为奇数时,另外n-m-1根列线中的一半列线分别通过NPN型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n-1)/2相连,另一半列线分别通过PNP型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n-1)/2相连。
有益效果
本发明设计的矩阵键盘电路,当行列数之和为2N,即为偶数时,所需的I/O口数为N+1,当行列数之和为2N+1,即为奇数时,所需的I/O口数为N+2,远比线反转法占用的I/O口数要少,且不要求矩阵行列数一定相等;同时采用该矩阵键盘电路,通过两次扫描就能得出按键的行值和列值,即可得出按键键值,无论是顺序扫描、定时扫描,还是中断扫描,均可提高键盘扫描速度,节省CPU时间。
附图说明
图1:m×n矩阵键盘电路;
图2:3×5矩阵键盘电路。
具体实施方式
下面结合具体实施例描述本发明。
本实施例是一个3×5的矩阵键盘电路。行线数为3,列线数为5.
参照附图2,所有行线的一端分别通过限流电阻R21-R23与+5V电源VCC相连,所有列线的一端分别通过限流电阻R11-R15与+5V电源VCC相连。行线的另一端分别通过PNP型或NPN型开关三极管与I/O口P1.1、P1.2和P1.3依次相连,在本实施例中,行线另一端采用的是PNP型开关三极管Q1、Q2和Q3;列线中前3列列线的另一端分别通过NPN型或PNP型开关三极管与I/O口P1.1、P1.2和P1.3依次相连,这里要保证行线相连的开关三极管与前m列列线相连的开关三极管结构类型相反,由于本实施例中行线另一端连接PNP型开关三极管,所以这里前3列列线另一端分别通过NPN型开关三极管Q4、Q5和Q6与I/O口P1.1、P1.2和P1.3依次相连。
在其余的2根列线中,取1根列线通过PNP型或NPN型开关三极管与I/O口P1.4相连,本实施例中取的是第5列列线通过PNP型开关三极管Q8与I/O口P1.4相连;取另外1根列线通过NPN型或PNP型开关三极管与I/O口P1.4相连,这里要保证这两根列线相连的开关三级管结构类型相反,由于本实施例中第5列列线已经通过PNP型开关三极管Q8与I/O口P1.4相连,所以这里取第4列列线通过NPN型开关三极管Q7与I/O口P1.4相连。
本实施例中,其余的列线个数为偶数,当其余的列线个数为奇数时,就在其余的列线中单独取出一根列线,其另一端通过NPN型或PNP型开关三极管与单独的一个I/O口相连,这样剩余的列线个数又为偶数了,就可以如上述分成两部分,分别通过结构类型相反的开关三极管与I/O口相连。若当行数大于列数时,只需将行线与列线互换。
本实施例中,开关三极管的基极分别通过限流电阻R31-R38连接到I/O口P1.0上,通过P1.0的状态控制开关三极管的通断;在每个按键位置行线与列线通过复合开关与地线相连;所有行线通过与门电路G1连接到中断输入口,构成键盘扫描中断输入电路。
键盘工作时,当没有按键按下时,各行均为高电平,经与门电路G1后连接到中断输入口的电平为高电平,此时不触发中断。当有按键按下时,经与门电路G1后连接到中断输入口的电平为低电平,此时触发键盘扫描中断,开始执行键盘扫描中断程序。扫描过程中,首先在P1.0口置1,此时PNP型开关三极管Q1、Q2、Q3和Q8均导通,行线及第五列列线与相应I/O口相连通,扫描行线及第五列列线,若某行或第五列有键按下,则对应输入口读得为0,其余输入口读得为1,从而得到所按按键的行状态值和第五列的状态值,将此值暂存。然后在P1.0口置0,此时NPN型开关三极管Q4-Q7导通,前3列列线和第4列列线与相应I/O口相连通,扫描该四列列线,若该四列无键按下则对应输入口均为高电平,输入口状态读得全为1;若某列有键按下则对应此列输入口读得为0,其余输入口读得仍为1,从而得到所按按键的该四列的状态值,将此状态值暂存。P1.0口完成一次1→0循环,则完成一次扫描,根据两次读得的按键状态值即可计算出键值。扫描过程中,可通过延时比较前后所得键值是否相同来去除干扰、抖动,避免误操作,同时也可判断区分键的按下、释放和长按,从而保证每个键按一次执行一次操作。

Claims (4)

1.一种提高键盘扫描速度的键盘电路,所述键盘电路为m×n的矩阵键盘电路,m表示行线数,n表示列线数,且行线数不大于列线数,其特征在于:行线和列线的一端均分别通过限流电阻与电源相连,行线的另一端分别通过PNP型开关三极管与I/O口P1.1、P1.2、……P1.m对应相连,列线中前m根列线的另一端分别通过NPN型开关三极管连接到I/O口P1.1、P1.2、……P1.m上;当n-m为偶数时,后n-m根列线中的一半列线分别通过PNP型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2相连,另一半列线分别通过NPN型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2相连;当n-m为奇数时,另外n-m-1根列线中的一半列线分别通过PNP型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n-1)/2相连,另一半列线分别通过NPN型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n-1)/2相连,剩余的一根列线通过开关三极管与I/O口P1.(m+n+1)/2相连;所有开关三极管的基极分别通过限流电阻连接到I/O口P1.0;在每个按键位置行线与列线通过复合开关与地线相连;所有行线通过与门电路连接到中断输入口。
2.根据权利要求1所述的一种提高键盘扫描速度的键盘电路,其特征在于:当行线数大于列线数时,将行线与列线互换。
3.根据权利要求1或2所述的一种提高键盘扫描速度的键盘电路,其特征在于:行线的另一端分别通过NPN型开关三极管与I/O口P1.1、P1.2、……P1.m对应相连,列线中前m根列线的另一端分别通过PNP型开关三极管连接到I/O口P1.1、P1.2、……P1.m上。
4.根据权利要求1或2所述的一种提高键盘扫描速度的键盘电路,其特征在于:当n-m为偶数时,后n-m根列线中的一半列线分别通过NPN型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2相连,另一半列线分别通过PNP型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n)/2相连;当n-m为奇数时,另外n-m-1根列线中的一半列线分别通过NPN型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n-1)/2相连,另一半列线分别通过PNP型开关三极管与I/O口P1.m+1、P1.m+2、……P1.(m+n-1)/2相连。
CN 201110132961 2011-05-20 2011-05-20 一种提高键盘扫描速度的键盘电路 Expired - Fee Related CN102289291B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110132961 CN102289291B (zh) 2011-05-20 2011-05-20 一种提高键盘扫描速度的键盘电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110132961 CN102289291B (zh) 2011-05-20 2011-05-20 一种提高键盘扫描速度的键盘电路

Publications (2)

Publication Number Publication Date
CN102289291A CN102289291A (zh) 2011-12-21
CN102289291B true CN102289291B (zh) 2013-04-24

Family

ID=45335765

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110132961 Expired - Fee Related CN102289291B (zh) 2011-05-20 2011-05-20 一种提高键盘扫描速度的键盘电路

Country Status (1)

Country Link
CN (1) CN102289291B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130249714A1 (en) * 2012-03-20 2013-09-26 Chia-Chu HO Keypad module and detecting method for keypad matrix
CN103049956A (zh) * 2013-01-09 2013-04-17 冯晓晗 一种基于fpga的安全门禁控制装置
CN104575397B (zh) * 2015-02-09 2017-01-25 东华大学 一种可减少微处理器i/o口占用的动态led显示电路
CN104898853B (zh) * 2015-05-21 2017-08-25 四川大学 一种三端轻触开关
CN105549499A (zh) * 2016-03-03 2016-05-04 深圳市博巨兴实业发展有限公司 一种面向键控类应用的低功耗mcu-soc系统
CN107301726A (zh) * 2017-07-03 2017-10-27 惠州市天泽盈丰物联网科技股份有限公司 智能卡数据采集终端、按键扫描系统及方法
TWI800839B (zh) * 2021-05-25 2023-05-01 群光電子股份有限公司 電子裝置及其控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450080A (en) * 1992-04-22 1995-09-12 Samsung Semiconductor, Inc. Keyboard encoding
CN2669264Y (zh) * 2004-01-02 2005-01-05 广东科龙电器股份有限公司 键盘扫描电路
CN101470527A (zh) * 2007-12-24 2009-07-01 深圳安凯微电子技术有限公司 一种可减少输入输出口的键盘电路
CN202058106U (zh) * 2011-05-20 2011-11-30 西北工业大学 一种提高键盘扫描速度的键盘电路

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5450080A (en) * 1992-04-22 1995-09-12 Samsung Semiconductor, Inc. Keyboard encoding
CN2669264Y (zh) * 2004-01-02 2005-01-05 广东科龙电器股份有限公司 键盘扫描电路
CN101470527A (zh) * 2007-12-24 2009-07-01 深圳安凯微电子技术有限公司 一种可减少输入输出口的键盘电路
CN202058106U (zh) * 2011-05-20 2011-11-30 西北工业大学 一种提高键盘扫描速度的键盘电路

Also Published As

Publication number Publication date
CN102289291A (zh) 2011-12-21

Similar Documents

Publication Publication Date Title
CN102289291B (zh) 一种提高键盘扫描速度的键盘电路
CN105206246A (zh) 扫描驱动电路及具有该电路的液晶显示装置
DE102008043947A1 (de) Anschlusszustandserkennungssystem für ein Netzwerkkabel
CN101807053A (zh) 用于工业控制触摸显示屏的多通道高速脉冲计数的结构
CN201138470Y (zh) 自动切换器
CN102622136A (zh) 一种多点触摸系统数据处理方法及装置
CN103699511A (zh) 一种给多个mcu串行写程序的接口装置
CN202058106U (zh) 一种提高键盘扫描速度的键盘电路
CN105071816A (zh) 一种高效率快速按键扫描方法
CN103324101B (zh) 基于Profinet带扩展输入输出的控制面板
CN204652436U (zh) Io总线接口电路
CN104423616B (zh) 输入装置及控制单元
CN208444485U (zh) 一种学习led点阵显示控制原理的实验教学电子教具
CN203250202U (zh) 基于Profinet带扩展输入输出的控制面板
CN102937885A (zh) 一种龙芯双路刀片服务器系统中切换显示通道的方法
CN104698960A (zh) 一种液压机自动化控制系统用数据交换技术
CN204557092U (zh) 具有减少断线功能和蓝牙传输功能的电脑绗缝控制器
CN204556722U (zh) 数字电压表
CN202837932U (zh) 一种基于以太网口可远程控制的开关系统
CN103645886A (zh) 多浮点操作数加/减、乘、除运算控制器
CN204337724U (zh) 一种手环式游戏手柄
CN108257517B (zh) 一种led显示屏虚拟显示单元板
CN203663427U (zh) 电脑游戏多手柄装置
CN203134334U (zh) 双通道数控系统lcd液晶显示转换电路
CN204697058U (zh) 一种基于电力线载波的信息发布装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130424

Termination date: 20150520

EXPY Termination of patent right or utility model