CN101162905A - 键盘扫描电路及方法 - Google Patents
键盘扫描电路及方法 Download PDFInfo
- Publication number
- CN101162905A CN101162905A CNA2006100630800A CN200610063080A CN101162905A CN 101162905 A CN101162905 A CN 101162905A CN A2006100630800 A CNA2006100630800 A CN A2006100630800A CN 200610063080 A CN200610063080 A CN 200610063080A CN 101162905 A CN101162905 A CN 101162905A
- Authority
- CN
- China
- Prior art keywords
- line
- button
- mouth
- alignment
- scanning circuit
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims abstract description 9
- 230000015572 biosynthetic process Effects 0.000 claims description 6
- 238000003384 imaging method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
Abstract
一种键盘扫描电路包括按N根列线、N根第一行线及第二行线排列的N×N个按键,N个I/O口(输入输出口)、N个二极管、N个电阻及一电源VCC。N根列线分别与N根第一行线及第二行线交错放置呈矩阵方式排列形成若干交叉点。其中,N×N个交叉点对应放置所述N×N个按键。每根行线分别通过一个二极管电性接到一个I/O口上;所述第二行线接地。每根列线一端分别通过一个电阻电性接到所述电源VCC上。所述N根第一行线与N根列线一一对应,所述每对一一对应的行线和列线连通并且它们之间的N个交叉点上没有放置按键。使用上述键盘扫描电路可以用N个I/O口扫描N×N个按键,结构简单,节省I/O口资源,降低成本。此外,还提供了一种键盘扫描方法。
Description
技术领域
本发明涉及一种键盘,特别涉及一种键盘扫描电路及方法。
背景技术
键盘是电脑、PDA(个人数字助理)、手机等电子产品中主要的人机对话设备。目前,电子产品的功能越来越完备,要完成控制复杂多样的功能,这就要求键盘要提供足够多的按键。从结构上来看,键盘一般分为外壳、按键及电路板三大部分。电路板是键盘的核心,位于键盘的内部,由逻辑电路和控制电路所组成。其中,键盘的逻辑电路提供按键的矩阵排列方式;键盘的控制电路分为确定按键位置的扫描电路、产生被按下键代码的编码电路和将代码送入主机的接口电路。其中,扫描电路一般采用软件对键盘上的按键进行扫描来确定按键的位置。
现有矩阵键盘扫描电路大多使用单片机I/O口来进行键盘扫描以控制键盘的按键部分。如图2所示:矩阵键盘扫描电路102包括按N行N列排列的NxN个按键、N个电阻、2N个I/O。在矩阵键盘扫描电路102中,N根行线和N根列线交叉放置形成NxN个交叉点,每个交叉点都设置一个按键S1~Sn2。按键的两端分别与相应的行线和列线连接;每根行线与一个I/O口连接。每根列线一端与一个I/O口连接,其另一端通过一电阻接到+5V电源上。当无按键按下时,列线呈高电平状态;当有按键按下时,相应的行、列线将导通,此时,列线的电平将由与此列线相连的行线的电平决定,因此,通过对相应的行线设置为低电平,可以识别按键是否被按下。
所述矩阵键盘扫描电路102通常采用行列扫描方法来确定按下之按键所在的行列位置。所述行列扫描法是指:把键盘的行线所对应的I/O口设置为输出口,列线所对应的I/O口设置为输入口;在扫描时,轮流将输出口设置为低电平,其它的输出口设置为高电平;再读取输入口的电平状态,并根据输入口发生的电平变化判断所按的按键。使用这种键盘扫描电路,如控制键盘的I/O口数为2N,最大按键数量是N2。这种键盘扫描电路的缺陷在于占用过多的I/O口资源。
另外,为了降低硬件成本市场上推出了大量的小型单片机,而这些小型单片机的主要特点是I/O口的数量少,如果使用上述矩阵键盘扫描电路就会使得有限的I/O口资源变得更为紧张。
发明内容
有鉴于此,有必要提供一种用少量的I/O口实现多按键的键盘扫描电路。
此外,还有必要提供一种键盘扫描方法。
一种键盘扫描电路,其包括按N根列线、N根第一行线、第二行线、NxN个按键、N个I/O口、N个二极管、N个具有阻值元件以及一电源,其中N为自然数;所述N根列线分别与所述N根第一行线及一第二行线交错放置呈矩阵方式排列形成Nx(N+1)个交叉点,其中有NxN个交叉点放置所述NxN个按键,而其它的交叉点上没有放置按键;在所述NxN个按键中,每个按键的第一端电性接在相应的行线上;第二端电性接在相应的列线上。
在所述N根第一行线中,每根分别通过一个二极管与一个I/O口电性相连,所述二极管的阴极与所述I/O口电性相连,所述二极管的阳极与相应的行线上按键的第一端电性相连;所述第二行线接地。
在所述N根列线中,每根列线分别通过一具有阻值元件接在电源VCC上,所述具有阻值元件为电阻。
所述N根第一行线与所述N根列线一一对应,所述每对一一对应连通的第一行线和列线之间的N个交叉点上没有放置按键,且每对一一对应的第一行线和列线经两个互相短接的第一节点和第二节点电性连通,所述第一节点电性接在所述对应行线上的I/O口与二极管的阴极之间,所述第二节点电性接在所述对应列线上的电阻未接在电源VCC的一端。
上述键盘扫描电路,由于电路中接入二极管,保证了按键信号的单一流向,可以将相应的行线与列线彼此间的按键信号进行隔离,因此,使得行线和列线复用,进而减少了I/O口的数量。另外,上述键盘扫描电路还将一根行线接地作为该行的输出又可以减少一个I/O口,从而可以用N个I/O口实现NxN个按键的键盘扫描电路。使用上述键盘扫描电路结构简单,并且比用2N个I/O口实现NxN个按键的传统矩阵键盘扫描电路少用了N个I/O口,降低了成本。
一种键盘的扫描方法,包括以下步骤:
设置与若干第一行线电性连接的若干个I/O口为输入口,设置接地的第二行线为输出;
读取所述若干个I/O口的电平状态;
判断所述接地的第二行线上是否有按键按下;
若所述接地的第二行线上有按键按下,停止扫描;
若所述接地的第二行线上没有按键按下,依次设置所述若干个I/O口为低电平输出口,且对应地设置除低电平输出口之外的I/O口为输入口;
判断设置为低电平输出口的I/O口所对应的行线上是否有按键被按下。
附图说明
图1为现有的矩阵键盘扫描电路图。
图2为本发明一较佳实施方式的键盘扫描电路的电路图。
图3为当I/O口为4时,本发明一较佳实施例的键盘扫描电路的电路图。
图4为当I/O口为5时,本发明一较佳实施例的键盘扫描电路的电路图。
图5为图2中键盘扫描电路的扫描方法的流程图。
图6为图3中键盘扫描电路的扫描方法的流程图。
具体实施方式
请参阅图2,本发明一较佳实施方式的键盘扫描电路103包括N+1根行线L0~Ln、N根列线P1~Pn、NxN个按键S01~Sn(n-1)、N个I/O口K1~Kn、N个电阻R1~Rn、N个二极管D1~Dn及一电源VCC,其中N为自然数。N根列线和N+1根行线交错放置呈矩阵方式排列形成Nx(N+1)个交叉点。在所述N+1根行线中,其中有一根行线接地。在所述Nx(N+1)个交叉点中,其中有NxN个交叉点分别对应放置所述的NxN个按键,而其它的N个交叉点处没有放置按键。在所述按键NxN个按键中,各个按键的第一端与相应的行线电性相连,而第二端与相应的列线电性相连。
在行线L0~Ln中,行线L0由按键S01~Sn(n-1)的第一端顺次电性连接而成,并且行线L0接地。其它的各行线分别由一I/O口、一第一节点、一二极管及N-1个按键的第一端顺次电性连接而成。其中,二极管的阴极与所述第一节点相连,二极管的阳极接到与其最接近的按键的第一端。如行线L1,其包括顺次电性连接的I/O口K1、第一节点J1、二极管D1及N-1个按键S12~S1n的第一端。其中,二极管D1的阴极与第一节点J1电性相连,而二极管的阳极与按键S12的第一端电性相连;按键S12~S1n各有第一端顺次电性连接。
同样,对于行线Lm,其中m为自然数,且2=<m<=n,其包括顺次电性连接的的I/O口Km、第一节点Jm、二极管Dm及N-1个按键Sm1~Sm(m-1)、Sm(m+1)~Smn。其中,二极管Dm的阴极与第一节点Jm电性相连,而二极管Dm的阳极接到按键Sm1的第一端;按键Sm1~Sm(m-1)、Sm(m+1)~Smn各有第一端顺次电性相连。
在列线P1~Pn中,各列线包括顺次电性连接的一电阻、一第二节点、N个按键,并且每个电阻各有一端都与电源VCC电性相连。如列线P1,其包括电阻R1、第二节点J1`、按键S01、S21~Sn1。其中,电阻R1的一端与电源VCC电性相连,另一端与第二节点J1`电性相连;按键S21~Sn1、S01各有第二端顺次电性相连。
同样,对于列线Pm,其中2=<m<=n,其包括电阻Rm、第二节点Jm`、按键S0m~S(m-1)m、S(m+1)m~Snm。其中,电阻Rm的一端与电源VCC电性相连,另一端与第二节点Jm`电性相连;按键S1m~S(m-1)m、S(m+1)m~Snm、S0m各有第二端顺次电性相连。
行线L1~Ln的第一节点J1~Jn与列线Pn~Pn上的第二节点一一对应连接,使得行线L1~Ln与列线Pn~Pn一一对应连通,并且在一一对应连通的行线和列线上没用放置按键。如L1的第一节点J1与P1的第二节点J1`连接,并且L1与P1交叉点没有放置按键。
键盘扫描电路103在程序进行处理时,从扫描接地的行线L0开始扫描逐行即行扫描。首先,根据正在扫描的行线,把I/O口K1~Kn设置为输出口或输入口;接着,对正在扫描的行线设置为电平或对其所连接的I/O口设置为低电平输出口,对其它的I/O口设置为输入口;然后,读取设置为输入口的I/O口电平状态;最后,根据设置为输入口的I/O口发生的电平变化判断所按的键。
对行线L0进行扫描时,首先,把行线L0接地作为该行输出,该键盘扫描电路所用到的I/O口K1~Kn设置为输入口。接着,检测设置为输入口的I/O口K1~Kn的电平状态,若I/O口K1~Kn全为高电平状态,则无键按下,行加1继续扫描下一行;若I/O口K1~Kn中I/O口K1为低电平,则按键S01被按下。同样,若I/O口K1~Kn中I/O口Km为低电平,则按键S0m被按下。
对行线L1~Ln进行扫描时,从行线L1开始,把正在扫描的行线所对应的I/O口设置为电平输出口,其它的I/O口为输入口;接着检测输入口的I/O口状态;若输入口的I/O状态全为高电平,则无键按下行数加1继续扫描下一行;若输入口的I/O口非全为高电平,则有键按下,再根据电平发生变化的输入口I/O口查出所对应的列线,由该列线与正在扫描的行线可以确定被按下的键。
例如:当对L1进行扫描时,设置I/O口K1为低电平输出口,检测I/O口K2~Kn电平状态,若I/O口K2~Kn都呈高电平状态,则无键按下。若I/O口K2为低电平状态,那么可以得知I/O口K2连接的列线P2上有键按下,即可判断连接行线L1与列线P2的按键S12被按下;同样,若I/O口Km为低电平状态,那么可以得知I/O口Km连接的列线Pm上有键按下,即可判断连接行线Lm与列线P2的按键S1m被按下。
以上所述仅为本发明的一较佳实施方式,其中的电阻可以是多个电阻的串联或者并联,或者使用其它具有阻值的元件来替换。
请参看图3,本发明一较佳施实例的键盘扫描电路104包括5根行线L0~L4、4根列线P1~P4、16个按键S01~S43、4个I/O口、4个二极管D1~D4、一电源VCC。5根行线与4根列线交错放置呈矩阵方式排列形成20个交叉点,其中有16个交叉点对应放置键盘扫描电路104的16个按键S01~S43,而其它4个交叉点没有放置按键。在所述16按键S01~S43中,各按键的第一端分别与相应的行线电性相连,另一端分别与相应的列线电性相连。
在所述行线L0~L4中,L0由按键S01~S04的第一端顺次电性连接而成,并且行线L0接地。行线L1~L4各分别包括顺次电性连接的一I/O口、一第一节点,一二极管和3个按键。其中,所述二极管的阴极接到所述第一节点上,所述二极管的阳极接到与其最靠近的按键的第一端。如行线L1,其包括I/O口K1、二极管D1、第一节点J1和按键S12~S14。其中,二极管D1的阴极接到第一节点J1上,二极管D1的阳极接到按键S12的第一端;按键S12~S14各有第一端顺次连接。
同样,对于行线L2~L4,L2包括顺次电性连接的I/O口K2、二极管D2、第一节点J2和按键S21、S23、S24;行线L3包括顺次电性连接的I/O口K3、二极管D3、第一节点J3和按键S31、S32、S34;行线L4包括顺次电性连接的I/O口K4、二极管D4、第一节点J4和按键S41、S42、S43。
在所述根列线P1~P4中,每根列线包括顺次电性连接的一电阻、一第二节点、4个按键,每个电阻的各有一端都与电源VCC电性相连。如列线P1,其包括电阻R1、第二节点J1`、按键S01、S21~S41。其中,电阻R1的一端与VCC电性相连,另一端与第二节点J1`电性相连。按键S21~S41、S01各有第二端顺次连接。
同样,对于列线P2~P4,P2包括依次电性连接的电阻R2、第二节点J2`、按键S02、S12、S32、S42;P3包括依次电性连接的电阻R3、第二节点J3`、按键S03、S13、S23、S43;P4包括依次电性连接的电阻R4、第二节点J4`、按键S04、S14、S24、S34。
行线L1~L4上的第一节点J1、J2、J3和J4分别与列线P1~P4上的第二节点J1`、J2`、J3`和J4`一一对应连接,使得L1和P1、L2和P2、L3和P3、L4和P4一一对应连通,并且L1和P1、L2和P2、L3和P3、L4和P4所形成的4个交叉点上没有放置按键。
键盘扫描电路104在程序处理时,首先,把第一根行线L0接地作为输出,接着设置该电路所用到的I/O口K1~K4作为输入口,接着读取I/O口K1~K4的状态。如果读取的结果非全高电平,行线L0上的按键S01~S04有键按下,再根据读取的I/O口电平变化判断按键S01~S04被按下的键。如果读取的结果全为高电平,无键按下,则轮流设置I/O口K1~K4为低电平输出口,其它的I/O口设置为输入口,再读取设置为输入口的I/O口状态,并根据设置为输入口的I/O口发生的电平变化,判断行线L1~L4的按键中所按下的键。从而实现可用4个I/O口扫描4x4个按键。
图3所示的4x4个不同按键分别被按下时各I/O口的状态如表一所示。
从表一可以看出,同一行上的不同按键按下时各I/O口的状态是唯一的。因此,用4个I/O口实现4x4个按键扫描。
请参看图4,本发明另一较佳施实例的键盘扫描电路图104包括6根行线L0~L5、5根列线P1~P5、25个按键S01~S54、5个I/O口、5个二极管D1~D5及一电源VCC。6根行线与5根列线交错放置呈矩阵方式排列形成30个交叉点,其中有25个交叉点对应放置键盘扫描电路104的25个按键S01~S54,而其它5个交叉点没有放置按键。在所述25个按键中,各个按键的第一端与相应的行线电性相连,第二端与相应的列线电性相连。
在所述行线L0~L5中,L0由按键S01~S05的第一端顺次电性连接而成,并且行线L0接地。行线L1~L5每根分别包括顺次电性连接的一I/O口、一第一节点,一二极管和4个按键。如行线L1,其包括I/O口K1、二极管D1、第一节点J1和按键S12~S15。二极管D1的阴极与I/O口K1电性相连;二极管D1的阳极与按键S12的第一端电性相连;而S12~S15各有第一端顺次电性连接。
同样,对于行线L2~L5,L2包括顺次电性连接的I/O口K2、二极管D2、第一节点J2和按键S21、S23、S24、S25。行线L3包括顺次电性连接的I/O口K3、二极管D3、第一节点J3和按键S31、S32、S34、S35。行线L4包括顺次电性连接的I/O口K4、二极管D4、第一节点J4和按键S41、S42、S43、S45。行线L5包括顺次电性连接的I/O口K5、二极管D5、第一节点J5和按键S51、S52、S53、S54。
在所述列线P1~P5中,每根列线包括顺次电性连接的一电阻、一第二节点、5个按键,每个电阻各有一端与电源VCC电性相连。如列线P1,其包括电阻R1、第二节点J1`、按键S01、S21~S51、其中,电阻R1的一端与VCC电性相连,另一端与第二节点J1`电性相连;按键S21~S51、S01各有第二端顺次电性连接。
同样,对于列线P2~P5,P2包括依次电性连接的电阻R2、第二节点J2`、按键S02、S12、S32、S42、S52;P3包括依次电性连接的电阻R3、第二节点J3`、按键S03、S13、S23、S43、S53;P4包括依次电性连接的电阻R4、第二节点J4`、按键S04、S14、S24、S34、S54;P5包括依次电性连接的电阻R5、第二节点J5`、按键S05、S15、S25、S35、S45。
行线L1~L5上的第一节点J1、J2、J3、J4和J5分别与列线P1~P5上的第二节点J1`、J2`、J3`、J4`和J5`一一对应电性连接,使得L1和P1、L2和P2、L3和P3、L4和P4、L5和P5一一对连通,并且由L1和P1、L2和P2、L3和P3、L4和P4、L5和P5所形成的5个交叉点没有放置按键。使用同样的扫描方法,可以实现用5个I/O口扫描5x5个按键。
图4所示的5x5个不同按键分别被按下时各I/O口的状态如表二所示。
从表二可以看出,同一行上的不同按键按下时各I/O口的状态是唯一的,因此,可以用5个I/O口实现5x5个按键扫描。
以上所述仅为本发明的较佳实施例,其将每对一一对应的行线和列线连通,而且通过电路中接入二极管,使得行线和列线得以复用;另外,其通过将一行接地作为该行输出,从达到用N个I/O口实现扫描NxN个按键的目的,减少了I/O口的数量,降低了成本。
请参看图5,其为图2中键盘扫描电路的扫描方法的流程图。扫描程序启动后,软件逐行开始扫描。
步骤201,扫描行线L0,设置键盘所用到的I/O口K1~Kn为输入,使第一行线L0接地,且以其作为输出,读取I/O口K1~Kn的电平状态,并根据I/O口K1~Kn的状态检测行线L0上的按键S01~S0n是否有键按下。
步骤202,判断行线L0上是否有键按下。如果有键按下,扫描程序结束,否则,继续扫描行线L1。
步骤203,扫描行线L1,将I/O口K1设置为低电平输出口,键盘扫描电路103所用到的其它I/O口K2~Kn设置为输入口,读取I/O口K2~Kn的电平状态,并根据I/O口K2~Kn的电平状态检测行线L1上的按键S12~S1n是否有键按下。
步骤204,扫描行线L2,将I/O口K2设置为低电平输出口,键盘扫描电路103所用到的其它I/O口K1、K3~Kn为输入口,读取I/O口K1、K3~Kn的电平状态,并根据I/O的K3~Kn电平状态检测行线L2上的按键S21、S23~S2n是否有键按下。
步骤205,按照同样的方法,继续对未扫描的行线进行扫描。设置相应的行线Lm,所连接的I/O口Km为低电平输出口,其中m为自然数,且3=<m<=n,键盘扫描电路103所用到的其它I/O口K1~K(m-1)、K(m+1)~Kn为输入口,读取各设置为输入口的I/O口K1~K(m-1)、K(m+1)~Kn的电平状态,根据I/O口K1~K(m-1)、K(m+1)~Kn的电平状态检测行线Lm上的按键Sm1~Sm(m-1)、Sm(m+1)~Smn是否有键按下。
步骤206,扫描最后一根行线Ln,设置I/O口Kn为低电平输出口,键盘扫描电路103所用到的其它I/O口K1~K(n-1)为输入口,读取I/O口K1~K(n-1)的电平状态,再根据I/O口K1~K(n-1)电平状态检测行线Ln上的按键Sn1~Sn(n-1)是否有键按下。
请参看图6,其为图3中键盘扫描电路的扫描方法的流程图。扫描程序启动后,软件逐行开始扫描。
步骤501,扫描行线L0,设置键盘所用到的I/O口K1~K4为输入,使第一行线L0接地,且以其作为输出,读取I/O口K1~K4的电平状态,并根据I/O口K1~K4的状态检测行线L0上的按键S01~S04是否有键按下。
步骤502,判断行线L0上是否有键按下。如果有键按下,扫描程序结束,否则,继续扫描行线L1。
步骤503,扫描行线L1,将I/O口K1设置为低电平输出口,键盘扫描电路103所用到的其它I/O口K2~K4设置为输入口,读取I/O口K2~K4的电平状态,并根据I/O口K2~Kn的电平状态检测行线L1上的按键S12~S14是否有键按下。
步骤504,扫描行线L2,将I/O口K2设置为低电平输出口,键盘扫描电路103所用到的其它I/O口K1、K3、K4为输入口,读取I/O口K1、K3、K4的电平状态,并根据I/O的K1、K3、K4电平状态检测行线L2上的按键S21、S23、S24是否有键按下。
步骤505,扫描行线L3,将I/O口K3设置为低电平输出口,键盘扫描电路103所用到的其它I/O口K1、K2、K4为输入口,读取I/O口K1、K2、K4的电平状态,并根据I/O的K1、K2、K4电平状态检测行线L3上的按键S31、S32、S34是否有键按下。
步骤506,扫描行线L4,设置I/O口K4为低电平输出口,键盘扫描电路103所用到的其它I/O口K1、K2、K3为输入口,读取I/O口K1、K2、K3的电平状态,再根据I/O口K1、K2、K3电平状态检测行线Ln上的按键S41、S42、S43是否有键按下。
Claims (10)
1.一种键盘扫描电路,包括按N根列线、N根第一行线、若干个按键、N个I/O口、N个具有阻值的元件、N个二极管以及一电源VCC,其中N为自然数,其特征在于:所述键盘扫描电路进一步包括第二行线,所述第二行线接地;每根第一行线通过一个二极管阴极与一个I/O口相连;每根列线分别通过一个所述具有阻值的元件接在所述电源VCC上;所述N根第一行线与所述第二行线分别与所述N根列线交错放置呈矩阵方式排列形成若干个交叉点,所述若干个按键放置在所述矩阵的部分交叉点上;所述N根第一行线与所述N根列线一一对应,且每对一一对应的第一行线和列线经两个互相短接的第一节点与第二节点连通。
2.如权利要求1所述的键盘扫描电路,其特征在于:所述每对一一对应的第一行线和列线之间的交叉点上没有放置按键。
3.如权利要求1所述的键盘扫描电路,其特征在于:所述若干个按键为NxN个按键。
4.如权利要求1所述的键盘扫描电路,其特征在于:所述若干个按键每个按键第一端电性接在一行线上,第二端电性接在一列线上。
5.如权利要求1所述的键盘扫描电路,其特征在于:所述第一节点电性接在所述对应行线的I/O口与二极管的阴极之间,而第二节点电性接在所述对应列线上,并与所述具有阻值的元件未接在电源的一端电性相连。
6.如权利要求1所述的键盘扫描电路,其特征在于:所述具有阻值的元件为电阻。
7.如权利要求1所述的键盘扫描电路,其特征在于:所述二极管的阳极与相应的行线上的按键的第一端电性相连。
8.一种键盘的扫描方法,包括以下步骤:
设置与若干第一行线电性连接的若干个I/O口为输入口,设置接地的第二行线为输出;
读取所述若干个I/O口的电平状态;
判断所述接地的第二行线上是否有按键按下;
若所述接地的第二行线上没有按键按下,依次设置所述若干个I/O口为低电平输出口,且对应地设置除低电平输出口之外的I/O口为输入口;
判断设置为低电平输出口的I/O口所对应的行线上是否有按键被按下。
9.根据权利要求8所述的键盘的扫描方法,其特征在于:将接地作为所述接地的第二行线的输出。
10.根据权利要求8所述的键盘的扫描方法,其特征在于:进一步包括:若所述第二行线上有按键按下,停止扫描。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610063080A CN100592637C (zh) | 2006-10-13 | 2006-10-13 | 键盘扫描电路及方法 |
US11/616,824 US20080088589A1 (en) | 2006-10-13 | 2006-12-27 | Scanning circuit and method for keyboard |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200610063080A CN100592637C (zh) | 2006-10-13 | 2006-10-13 | 键盘扫描电路及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101162905A true CN101162905A (zh) | 2008-04-16 |
CN100592637C CN100592637C (zh) | 2010-02-24 |
Family
ID=39297758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200610063080A Expired - Fee Related CN100592637C (zh) | 2006-10-13 | 2006-10-13 | 键盘扫描电路及方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20080088589A1 (zh) |
CN (1) | CN100592637C (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599770A (zh) * | 2008-06-03 | 2009-12-09 | 深圳长城开发科技股份有限公司 | 一种键盘及键盘检测方法 |
CN101834609A (zh) * | 2010-05-25 | 2010-09-15 | 上海海洋大学 | 新型键盘扫描系统及扫描方法 |
CN101860369A (zh) * | 2010-06-24 | 2010-10-13 | 鸿富锦精密工业(深圳)有限公司 | 矩阵键盘及其扫描方法 |
CN101951263A (zh) * | 2010-10-22 | 2011-01-19 | 刘利华 | 一种按键扫描方法及系统 |
CN102075194A (zh) * | 2009-11-23 | 2011-05-25 | 鸿富锦精密工业(深圳)有限公司 | 键盘扫描电路和方法及电子设备 |
CN102111159A (zh) * | 2010-12-27 | 2011-06-29 | 青岛文达通科技发展有限公司 | 键盘扫描电路及其扫描方法 |
CN102142846A (zh) * | 2010-01-28 | 2011-08-03 | 环旭电子股份有限公司 | 键盘扫描装置及其按键矩阵电路与其扫描方法 |
CN102467243A (zh) * | 2010-11-17 | 2012-05-23 | 南京百敖软件股份有限公司 | 一种键盘矩阵分析结构及方法 |
CN102565694A (zh) * | 2011-12-31 | 2012-07-11 | 广东盈科电子有限公司 | 一种非ad口按键检测电路及其检测方法 |
CN101943948B (zh) * | 2009-07-07 | 2012-11-14 | 扬智科技股份有限公司 | 键盘扫描装置及键盘扫描方法 |
CN103560796A (zh) * | 2013-11-11 | 2014-02-05 | 物联微电子(常熟)有限公司 | 矩阵电路及扫描方法 |
CN107481681A (zh) * | 2017-07-04 | 2017-12-15 | 昆明理工大学 | 一种基于fpga的电子相框系统 |
CN110308707A (zh) * | 2019-07-04 | 2019-10-08 | 无锡琼智信息科技有限公司 | 控制器、智能家具和按键控制方法 |
CN112073070A (zh) * | 2020-09-22 | 2020-12-11 | 君凯迪科技(深圳)有限公司 | 一种分时动态变换键位扫描方法及系统 |
CN112124287A (zh) * | 2020-09-25 | 2020-12-25 | 上海拿森汽车电子有限公司 | 一种epb按键的故障识别方法、装置、设备和介质 |
CN113948332A (zh) * | 2021-10-29 | 2022-01-18 | 广东美的厨房电器制造有限公司 | 按键的触发检测电路、按键组件和家电设备 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI487279B (zh) * | 2009-12-21 | 2015-06-01 | Hon Hai Prec Ind Co Ltd | 鍵盤掃描電路和方法及電子設備 |
CN103368581B (zh) * | 2012-03-28 | 2016-05-04 | 光宝电子(广州)有限公司 | 键盘扫描方法及应用该方法的键盘 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4667181A (en) * | 1983-07-15 | 1987-05-19 | Honeywell Inc. | Keyboard data input assembly |
JPH0348180A (ja) * | 1989-04-27 | 1991-03-01 | Casio Comput Co Ltd | スイッチ状態高速検出装置 |
US5692203A (en) * | 1993-03-12 | 1997-11-25 | Psc, Inc. | Power up/power down for electronic hardware which conserves electric power |
GB2283846B (en) * | 1993-11-11 | 1997-07-16 | Alcatel Australia | Arrangement for interfacing a keyboard with a microprocessor |
US5554985A (en) * | 1995-06-14 | 1996-09-10 | United Microelectronics Corporation | Method for scanning keypad architecutre employing power source and ground of digital electronic devices |
US5805085A (en) * | 1996-07-26 | 1998-09-08 | United Microelectronics Corporation | Apparatus and method for scanning a key matrix |
US6424274B1 (en) * | 1999-04-13 | 2002-07-23 | Legerity, Inc. | Keypad scanning with few pins |
US7030858B1 (en) * | 1999-10-28 | 2006-04-18 | Lucent Technologies Inc. | Bi-directional scan switch matrix method and apparatus |
TWI254274B (en) * | 2002-03-22 | 2006-05-01 | Winbond Electronics Corp | Keyboard scanning circuit and method thereof |
US7123170B1 (en) * | 2003-08-26 | 2006-10-17 | National Semiconductor Corporation | System and method for a data-input array capable of being scanned using a reduced number of signals |
US7167107B2 (en) * | 2003-09-19 | 2007-01-23 | Motorola, Inc. | Keypad array having reduced number of input/outputs and method for generating same |
DE10360241B4 (de) * | 2003-12-16 | 2006-04-27 | Visteon Global Technologies, Inc., Dearborn | Schaltmatrix für ein Eingabegerät |
CN2669264Y (zh) * | 2004-01-02 | 2005-01-05 | 广东科龙电器股份有限公司 | 键盘扫描电路 |
US7218250B2 (en) * | 2004-09-09 | 2007-05-15 | General Electric Company | Method and apparatus for keyboard control with programmable debounce and jog |
US7230548B2 (en) * | 2004-09-28 | 2007-06-12 | Broadcom Corporation | Method and apparatus for high performance key detection with key debounce |
CN1787719A (zh) * | 2004-12-06 | 2006-06-14 | 明基电通股份有限公司 | 静电放电防护的按键扫描电路 |
-
2006
- 2006-10-13 CN CN200610063080A patent/CN100592637C/zh not_active Expired - Fee Related
- 2006-12-27 US US11/616,824 patent/US20080088589A1/en not_active Abandoned
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599770A (zh) * | 2008-06-03 | 2009-12-09 | 深圳长城开发科技股份有限公司 | 一种键盘及键盘检测方法 |
CN101943948B (zh) * | 2009-07-07 | 2012-11-14 | 扬智科技股份有限公司 | 键盘扫描装置及键盘扫描方法 |
CN102075194A (zh) * | 2009-11-23 | 2011-05-25 | 鸿富锦精密工业(深圳)有限公司 | 键盘扫描电路和方法及电子设备 |
CN102075194B (zh) * | 2009-11-23 | 2015-03-11 | 鸿富锦精密工业(深圳)有限公司 | 键盘扫描电路和方法及电子设备 |
CN102142846B (zh) * | 2010-01-28 | 2013-11-06 | 环旭电子股份有限公司 | 键盘扫描装置及其按键矩阵电路与其扫描方法 |
CN102142846A (zh) * | 2010-01-28 | 2011-08-03 | 环旭电子股份有限公司 | 键盘扫描装置及其按键矩阵电路与其扫描方法 |
CN101834609A (zh) * | 2010-05-25 | 2010-09-15 | 上海海洋大学 | 新型键盘扫描系统及扫描方法 |
CN101860369A (zh) * | 2010-06-24 | 2010-10-13 | 鸿富锦精密工业(深圳)有限公司 | 矩阵键盘及其扫描方法 |
CN101860369B (zh) * | 2010-06-24 | 2012-11-21 | 鸿富锦精密工业(深圳)有限公司 | 矩阵键盘及其扫描方法 |
CN101951263A (zh) * | 2010-10-22 | 2011-01-19 | 刘利华 | 一种按键扫描方法及系统 |
CN101951263B (zh) * | 2010-10-22 | 2012-10-10 | 刘利华 | 一种按键扫描方法及系统 |
CN102467243A (zh) * | 2010-11-17 | 2012-05-23 | 南京百敖软件股份有限公司 | 一种键盘矩阵分析结构及方法 |
CN102467243B (zh) * | 2010-11-17 | 2015-04-29 | 南京百敖软件有限公司 | 一种键盘矩阵分析结构及方法 |
CN102111159B (zh) * | 2010-12-27 | 2013-03-20 | 青岛文达通科技股份有限公司 | 键盘扫描电路及其扫描方法 |
CN102111159A (zh) * | 2010-12-27 | 2011-06-29 | 青岛文达通科技发展有限公司 | 键盘扫描电路及其扫描方法 |
CN102565694A (zh) * | 2011-12-31 | 2012-07-11 | 广东盈科电子有限公司 | 一种非ad口按键检测电路及其检测方法 |
CN102565694B (zh) * | 2011-12-31 | 2014-06-18 | 广东盈科电子有限公司 | 一种非ad口按键检测电路 |
CN103560796A (zh) * | 2013-11-11 | 2014-02-05 | 物联微电子(常熟)有限公司 | 矩阵电路及扫描方法 |
CN103560796B (zh) * | 2013-11-11 | 2016-01-27 | 物联微电子(常熟)有限公司 | 矩阵电路及扫描方法 |
CN107481681A (zh) * | 2017-07-04 | 2017-12-15 | 昆明理工大学 | 一种基于fpga的电子相框系统 |
CN107481681B (zh) * | 2017-07-04 | 2019-07-16 | 昆明理工大学 | 一种基于fpga的电子相框系统 |
CN110308707A (zh) * | 2019-07-04 | 2019-10-08 | 无锡琼智信息科技有限公司 | 控制器、智能家具和按键控制方法 |
CN112073070A (zh) * | 2020-09-22 | 2020-12-11 | 君凯迪科技(深圳)有限公司 | 一种分时动态变换键位扫描方法及系统 |
CN112073070B (zh) * | 2020-09-22 | 2024-04-05 | 君凯迪科技(深圳)有限公司 | 一种分时动态变换键位扫描方法及系统 |
CN112124287A (zh) * | 2020-09-25 | 2020-12-25 | 上海拿森汽车电子有限公司 | 一种epb按键的故障识别方法、装置、设备和介质 |
CN112124287B (zh) * | 2020-09-25 | 2022-02-22 | 上海拿森汽车电子有限公司 | 一种epb按键的故障识别方法、装置、设备和介质 |
CN113948332A (zh) * | 2021-10-29 | 2022-01-18 | 广东美的厨房电器制造有限公司 | 按键的触发检测电路、按键组件和家电设备 |
CN113948332B (zh) * | 2021-10-29 | 2024-03-22 | 广东美的厨房电器制造有限公司 | 按键的触发检测电路、按键组件和家电设备 |
Also Published As
Publication number | Publication date |
---|---|
US20080088589A1 (en) | 2008-04-17 |
CN100592637C (zh) | 2010-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100592637C (zh) | 键盘扫描电路及方法 | |
CN101860369B (zh) | 矩阵键盘及其扫描方法 | |
CN102075194B (zh) | 键盘扫描电路和方法及电子设备 | |
CN101686060B (zh) | 控制电路及配置方法 | |
CN101995956B (zh) | 键盘、键盘扫描电路及方法 | |
CN101394185A (zh) | 一种按键检测电路及其方法 | |
CN1522398A (zh) | 紧凑的字母数字键盘 | |
CN101951263B (zh) | 一种按键扫描方法及系统 | |
CN2669264Y (zh) | 键盘扫描电路 | |
CN101079637A (zh) | 按键系统及其检测方法 | |
CN100476700C (zh) | 控制移动终端的按键的装置和方法 | |
CN101470527A (zh) | 一种可减少输入输出口的键盘电路 | |
CN202364197U (zh) | 一种按键检测和led控制电路 | |
US8253604B2 (en) | Keyboard scanning circuit | |
CN101626247A (zh) | 键盘扫描方法 | |
CN201662609U (zh) | 一种按键检测电路 | |
CN202472565U (zh) | 一种键盘电路、键盘及输入装置 | |
TW200820636A (en) | Keyboard scanning circuit and method | |
CN202841104U (zh) | 一种按键检测电路 | |
CN209803294U (zh) | 一种矩阵按键的检测装置 | |
CN102857232B (zh) | 一种按键检测电路及检测方法 | |
US20050068303A1 (en) | Key inputting circuit of electronic device | |
CN212305393U (zh) | 一种单摄像头和多摄像相互灵活切换的智能主板 | |
CN1251053C (zh) | 一种键盘信号感知装置 | |
CN2816909Y (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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100224 Termination date: 20111013 |