CN109407857B - 键盘系统、嵌入式控制器及键盘系统中发送扫描码的方法 - Google Patents

键盘系统、嵌入式控制器及键盘系统中发送扫描码的方法 Download PDF

Info

Publication number
CN109407857B
CN109407857B CN201810614790.0A CN201810614790A CN109407857B CN 109407857 B CN109407857 B CN 109407857B CN 201810614790 A CN201810614790 A CN 201810614790A CN 109407857 B CN109407857 B CN 109407857B
Authority
CN
China
Prior art keywords
key
pressed
array
scan
keys
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.)
Active
Application number
CN201810614790.0A
Other languages
English (en)
Other versions
CN109407857A (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.)
Lenovo PC International Ltd
Original Assignee
Lenovo Singapore Pte Ltd
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 Lenovo Singapore Pte Ltd filed Critical Lenovo Singapore Pte Ltd
Publication of CN109407857A publication Critical patent/CN109407857A/zh
Application granted granted Critical
Publication of CN109407857B publication Critical patent/CN109407857B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements 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
    • G06F3/0238Programmable keyboards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/0227Cooperation and interconnection of the input arrangement with other functional units of a computer
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M11/00Coding in connection with keyboards or like devices, i.e. coding of the position of operated keys
    • H03M11/20Dynamic coding, i.e. by key scanning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

提供了键盘系统、嵌入式控制器及键盘系统中发送扫描码的方法。该键盘系统包括:键盘矩阵;以及与该键盘矩阵进行通信的嵌入式控制器,其中,该嵌入式控制器被配置成:确定在所述键盘矩阵的单个扫描循环中有多个键被按下还是仅有单个键被按下;如果仅有单个键被按下,则学习在多个扫描循环中的被按下的键的顺序;并且如果有多个键被按下,则基于所学习的被按下的键的顺序来生成被按下的多个键的顺序。

Description

键盘系统、嵌入式控制器及键盘系统中发送扫描码的方法
技术领域
本发明总体上涉及键盘,并且更具体地,涉及对键盘中扫描码的发送进行排序的装置和方法。
背景技术
计算机键盘——例如用于膝上型电脑、笔记本电脑、台式电脑、移动电话的键盘——可以包括将按键转换为扫描码的控制电路。扫描码是计算机键盘发送到计算机以报告哪个键被按下的数据。键盘上的每个键都分配有数字或数字序列。键开关经由印刷电路板连接在电气X-Y矩阵中,其中向Y线顺序地提供电压,并且当键被按下时,通过扫描X线顺序地对电压进行检测,反之亦然。
在大多数打字中,一次仅按下一个键,并且然后在下一个键被按下之前将其释放。然而,在一些情况下可能会同时或非常快速地依次按下多个键。这在例如游戏中经常发生。
图1A描绘了常规的键盘矩阵10。驱动线或输入线是列,而检测线或感测线是行。矩阵扫描可以从A1开始并进行到G7,或者从G7开始并进行到A1,但不能同时进行。在使用过程中,例如,可以同时或非常快速地依次按下键C4和F5。当从矩阵10接收到按键信号,键盘集成电路11(即嵌入式控制器(EC))可以按照特定顺序将扫描码发送到中央处理单元12。
在图1A中,如果矩阵扫描从A1开始并进行到G7,则将按照C4、F5的顺序发送扫描码。在另一方面,如果矩阵扫描从G7开始并进行到A1,则将按照F5、C4的顺序发送扫描码。无论扫描方向如何,方向都是固定的。因此,发送扫描码的顺序是固定的。但是这个固定顺序可能对于给定的情况是错误顺序。换句话说,作为示例,可能按照C4、F5的顺序将键按下,但是由于扫描方向的原因,可能按照F5、C4的顺序发送扫描码。
图1B描绘了当在单个扫描循环期间依次按下同一驱动线中的两个或更多个键时键盘矩阵10中的另一潜在问题。扫描循环是依次将每个驱动线扫描一次的时间段。因此,例如,扫描循环可以在驱动线1处开始并在驱动线7处结束。作为另一示例,扫描每个驱动线可能需要0.5毫秒。
因此,在图1B中,在键盘矩阵10的示例性使用期间,从A到G扫描驱动线1,然后0.5毫秒之后,从A到G扫描驱动线2,以此类推。例如,如果在驱动线7的扫描期间,C6被按下。当在驱动线7之后扫描驱动线1至4时,从驱动线7被扫描起已经经过2.0毫秒。在驱动线5的扫描期间,例如在以驱动线7开始的单个扫描循环中按下D6。当驱动线6被扫描时,矩阵10确定C6和D6已被按下。但是由于该键是在同一扫描循环期间被按下并且在同一驱动线中,所以矩阵10不能辨别出是C6还是D6先被按下。因此,扫描码可能被不正确地发送为D6、C6而非C6、D6。这是由于具有固定的发送扫描码的顺序。
可以看出,需要经改进的装置和方法来对键盘中扫描码的发送进行排序。
发明内容
在本发明的一个方面,一种键盘系统包括:键盘矩阵;以及与键盘矩阵进行通信的嵌入式控制器,其中,嵌入式控制器被配置成:确定在键盘矩阵的单个扫描循环中有多个键被按下还是仅有单个键被按下;如果仅有单个键被按下,则学习在多个扫描循环中的被按下的单个键的顺序;并且如果有多个键被按下,则基于所学习的被按下的单个键的顺序来生成被按下的多个键的顺序。
在本发明的另一方面中,一种键盘系统中的嵌入式控制器,键盘系统具有键盘矩阵,其中,嵌入式控制器被配置成:针对键盘矩阵的多个扫描循环中的每一个,确定是否仅有单个键被按下;针对每个所确定的被按下的单个键,以二维数组创建相应数组,其中,根据[Latest_key][1...n];[1...n][Latest_key];[Latest_key][Latest_key]来创建每个相应数组;其中,Latest_key是在给定的扫描循环中被按下的单个键,并且n是二维数组中的列数和行数;针对键盘矩阵的多个扫描循环中的每一个,确定在该扫描循环中的一个扫描循环期间是否有数量为M的多个键被按下;对于多个键中被按下的每个键key_m,计算数组[key_m][1...M]的总和;以总和数字顺序排列所有SUM key_m;并且按照根据总和数字顺序的发送顺序来发送在单个扫描码期间被按下的每个键key_m的扫描码。
在本发明的另一方面中,一种在键盘系统中发送扫描码的方法,键盘系统具有键盘矩阵,该方法包括:当在键盘矩阵的多个扫描循环中的每一个期间仅有单个键被按下时,则对于被按下的每个单个键:将第一数组[Latest_key][1...n]设定为第一数值;将第二数组[1...n][Latest_key]设定为第二数值;并将第三数组[Latest_key][Latest_key]设定为第三数值;其中,Latest_key是在给定的扫描循环中被按下的单个键;其中,n是所创建的数组中的列数;以及当在单个扫描循环中有多个键被按下时,则对于被按下的每个键key_m:计算数组[key_m][1...M]的总和;按数字递减顺序排列数组的总和;按照该数字递减顺序发送每个键key_m的扫描码,其中M是被按下的键key_m的总数。
参照以下附图、说明书和权利要求书将更好地理解本发明的这些和其他特征、方面和优点。
附图说明
图1A是根据现有技术的键盘系统的示意图;
图1B是根据现有技术的键盘矩阵的示意图;
图2是根据本发明的示例性实施方式的键盘系统的示意图;
图3A至图3C是根据本发明的示例性实施方式的键数组的学习序列;
图4A至图4B是根据本发明的示例性实施方式的当多个键被同时按下时学习之后的键数组;
图5是根据本发明的另一示例性实施方式的方法的流程图;
图6是本发明的示例性方法的流程图。
具体实施方式
以下详细描述是预期的当前最佳的实施本发明的模式。该描述并非取限制性意义,而仅是出于说明本发明的一般原理的目的而做出该描述,因为本发明的范围由所附权利要求书进行最好地限定。
以下描述了各个发明特征,每个发明特征可以彼此独立使用或者与其他特征组合使用。然而,任何单个发明特征可能无法解决以上讨论的任何问题,或者可能仅解决以上讨论的问题之一。此外,以上讨论的问题中的一个或更多个问题可能不能由下文描述的任何特征完全解决。
概括地说,本发明提供了用于对键盘系统中扫描码的发送进行排序的装置和方法,特别是在多个键被同时按下或被快速地接连按下的情况下。在本发明中,顺序不是固定的。替代的是,本发明在单个键被接连按下时学习扫描码的顺序,每一个扫描循环有一个键被按下。任何数量的键都可以是所学习的顺序的主题。之后,当这些单个键被同时或非常快速地接连被按下时,本发明基于所学习的顺序来发送扫描码。
在本发明中,所学习的顺序表示特定用户如何按下一组键的顺序。从而,当特定用户按下该组键时,将按照与该特定用户期望的顺序更好地匹配的顺序来发送扫描码。因此,在本发明中,针对一组键的所学习的顺序可能因用户的不同而改变。此外,所学习的顺序可能会随着时间而改变,因此,任何给定的键的集合的扫描码顺序可能随时间而改变。
图2是根据本发明的实施方式的键盘系统20的示意性框图。系统20可以包括键盘矩阵21,其与图1A至图1B所示的矩阵10的总体结构类似。嵌入式控制器(EC)22可以包括CPU22a和存储器22b。EC 22还可以包括键盘扫描接口22c,其可以经由键扫描输入(KSI)和键扫描输出(KSO)引脚与键盘矩阵21进行通信。
由此,EC 22能够轮询或扫描矩阵21中的驱动线和感测线,并由此识别出哪个键被按下。如下所述,当在同一扫描循环中有多个键被按下时,EC 22可以确定发送扫描码的顺序。常规的8042模拟键盘控制器22d可以模仿8042的行为,正如现有技术中已知的,经由低引脚数(LPC)总线将经排序的扫描码发送到常规的平台控制器集线器(PCH)23和最终显示器。
在图3A至图3C中,根据示例性实施方式,嵌入式控制器22可以被配置成学习被按下的键的组合/集合中被单独按下的键的顺序。图3A至图3C描绘了被学习为具有特定顺序的三个键。
在图3A中,作为示例,在一个扫描循环中仅有一个键被按下,例如键6。在所创建的二维的键的数组中,使用三个数组描绘了键6的按下。二维数组可以有数量为n的列和数量为n的行。一个数组是[6][1...n]并被设定为“0”。另一数组是[1...n][6]并被设定为“1”。第三数组为空或被保留并被设定为“-1”数组。然后将Latest_key设定为键6。
在图3B中,作为示例,在下一个连续的扫描循环中,仅有一个键被按下,例如键4。在二维的键的数组中使用三个数组描绘了键4的按下。一个数组是[4][1...n]并被设定为“0”。另一数组是[1...n][4]并被设定为“1”。第三数组为空或被保留并被设定为“-1”。然后将Latest_key设定为键4。
在图3C中,作为示例,在下一个连续的扫描循环中,仅有一个键被按下,例如键2。在二维的键的数组中使用两个数组描绘了键2的按下。一个数组被设定为[2][1...n]=0。另一数组被设定为[1...n][2]=1。数组中的“-1”依然为空或被保留。然后将Latest_key设定为键2。
尽管前述示例描绘了对于每个扫描循环有不同的单个键被按下,但是本发明预期在不同的扫描循环中一个或更多个单个键可以是相同的。此外,尽管三个键的各个数组被设定为数值1、0和-1,但是可以使用其他数值。
图4A和图4B表示来自图3A至图3B的所学习的三个键中的两个键和三个键被同时按下的示例性情况。
在图4A中,作为示例,在同一扫描循环中有两个键——键4和键2——被按下。
对于键4,数组[4][1...n]的总和被计算为:
Figure GDA0003568274500000051
对于键2,数组[2][1...n]的总和被计算为:
Figure GDA0003568274500000052
由于数组[4][1...n]的总和大于数组[2][1...n]的总和,所以确定键的顺序应该是键4、键2(而不是键2、键4)。因此,可以按照键4、键2的顺序发送扫描码。
可替选地,可以通过检查数组[4][2]的值和数组[2][4]的值来确定扫描码顺序。数组[4][2]的值是1;因此,可以确定键4应该在键2之前。数组[2][4]的值是0;因此,可以确定键2应该在键4之后。
在图5中,作为示例,在同一扫描循环中有三个键——键4、键2和键6——被按下。
对于键4,数组[4][1...n]的总和被计算为:
Figure GDA0003568274500000061
对于键2,数组[2][1...n]的总和被计算为:
Figure GDA0003568274500000062
对于键6,数组[6][1...n]的总和被计算为:
Figure GDA0003568274500000063
由于数组[6][1...n]的总和大于数组[4][1...n]的总和,数组[4][1...n]的总和大于数组[2][1...n]的总和,所以确定键的顺序应该是键6、键4、键2(而非例如键2、键4、键6)。因此,可以按照键6、键4、键2的顺序发送扫描码。
尽管前述示例描述了所学习的单个键与被按下的多个键相同,但是本发明预期被按下的多个键通常在所学习的被按下的单个键之中。因此,例如,所学习的键可以包括总共4个键,而被按下的多个键可以仅包括4个所学习的键中的3个键。
尽管前述示例描绘了数组的总和是以递减顺序排列,但本发明预期可以以递增顺序来排列数组的总和。
从前述内容中可以理解,键盘系统20以及特别是嵌入式控制器22可以被配置成执行学习方法的步骤,并且基于该学习来确定当在单个扫描循环期间有多个键被按下时发送扫描码的顺序。
图6是根据本发明的示例性方法60的流程图。在实施方式中,方法60概括了图3A至图3C、图4A至图4B和图5中描绘的特定示例。
在步骤61中,可以确定是否开始对键盘矩阵进行扫描。如果“否”,则方法60可以环回至步骤61。如果“是”,则步骤62可以启动单个扫描循环。
在步骤63中,可以确定是否有至少一个键已被按下。如果“否”,则方法60可以前进到步骤64。如果“是”,则该方法可以前进到步骤65。
在步骤64中,可以确定是否要继续进行下一个扫描循环。如果“是”,则方法60返回到步骤62。如果“否”,则方法60结束。
在步骤65中,可以确定在单个扫描循环中是否有多个键(即,一组键)已被按下。如果“否”,则方法60可以继续经过一系列步骤(66至68)以学习在多个扫描循环中的被按下的单个键(或扫描码)的顺序,其中每个单个扫描循环仅一个键。如果“是”,则方法60可以继续经过一系列步骤(70至73)以生成在单个扫描循环中被同时按下(或快速地接连按下)的键(或扫描码)的顺序,所生成的顺序是基于所学习的在多个扫描循环中的被按下的单个键的顺序。
在学习步骤中,步骤66可以确定在单个扫描循环中哪个单个键被按下,然后将所确定的键设定为“Latest_key”。
在学习步骤中的步骤67中,可以针对在多个扫描循环中的每个被单独按下的键以二维数组创建相应数组。可以将每个相应数组设定为数值。因此,所创建的二维数组中的第一数组可以被创建为[Latest_key][1...n],并且可以将该数组中的每个条目设定为“0”。二维数组中的第二数组可以被创建为[1...n][Latest_key],并且可以将该数组中的每个条目设定为“1”。二维数组中的第三数组可以被创建为[Latest_key][Latest_key],并且可以将该数组中的每个条目设定为“-1”。
如上所述,单个扫描循环可以扫描数量为n的键,二维数组可以具有数量为n的行和数量为n的列。
在学习步骤中的步骤68中,可以将Latest_key放置在EC 22的发送队列中,以在步骤69中对Latest_key的扫描码进行最终传输。
在扫描码顺序生成步骤中,步骤70可以确定在单个扫描循环期间已被按下的所有键,其中,有数量为M的键。
在步骤71中,对于二维数组中被按下的每个键key_m,其中m=1...M,可以根据下式来计算数组[key_m][1...M]的总和:
Figure GDA0003568274500000081
在步骤72中,所有SUM key_m(m=1...M)可以按照总和递减顺序来排列。
在步骤73中,按照生成的顺序根据总和递减顺序将键号码发送到EC22的发送队列以在步骤69中对扫描码进行最终传输。因此,具有最高数值的SUM key_m使得相关联的扫描码能够被首先发送。并且,具有最低数值的SUM key_m使得相关联的扫描码被最后发送。然而,本发明预期顺序可以颠倒。
可以理解,随着方法60继续循环通过其步骤,方法60不断地学习不同组单个键的顺序。当用户改变这些单个键的顺序时,方法60也会进行学习以改变同一组单个键的顺序。因此,所生成的在单个扫描循环期间被按下的键组的顺序可以随时间改变。
当然,应当理解,前述内容涉及本发明的示例性实施方式,并且可以在不偏离由所附权利要求书阐述的本发明的精神和范围的情况下做出修改。

Claims (19)

1.一种键盘系统,包括:
键盘矩阵;以及
嵌入式控制器,所述嵌入式控制器与所述键盘矩阵进行通信,其中,所述嵌入式控制器被配置成:
确定在所述键盘矩阵的单个扫描循环中有多个键被按下还是仅有单个键被按下;
如果仅有单个键被按下,则学习在多个扫描循环中的被按下的单个键的顺序;并且
如果有多个键被按下,则基于所学习的所述被按下的单个键的顺序来生成被按下的所述多个键的顺序,其中,
当在单个扫描循环中有多个键被按下时,针对被按下的每个键key_m:
计算数组[key_m][1...M]的总和;
按照数字递减顺序或数字递增顺序排列所述数组的总和;
按照所述数字递减顺序或数字递增顺序发送每个键key_m的扫描码,
其中,M是被按下的键key_m的总数。
2.根据权利要求1所述的系统,还包括:与所述嵌入式控制器进行通信的平台控制器集线器。
3.根据权利要求1所述的系统,其中,所述嵌入式控制器包括与所述键盘矩阵进行通信的键盘扫描接口。
4.根据权利要求1所述的系统,其中,所述嵌入式控制器包括8042模拟键盘控制器。
5.根据权利要求1所述的系统,其中,所述嵌入式控制器还被配置成:
针对在所述多个扫描循环中被按下的每个单个键,以二维数组创建相应数组。
6.根据权利要求5所述的系统,其中,每个相应数组被设定成数值。
7.根据权利要求1所述的系统,其中,在所述单个扫描循环中的被按下的所述多个键在所述多个扫描循环中的所述被按下的单个键之中。
8.一种键盘系统中的嵌入式控制器,所述键盘系统具有键盘矩阵,其中,所述嵌入式控制器被配置成:
针对所述键盘矩阵的多个扫描循环中的每一个,确定是否仅有单个键被按下;
针对每个所确定的被按下的单个键,以二维数组创建相应数组,其中,根据以下来创建每个相应数组:
[Latest_key][1...n];
[1...n][Latest_key];
[Latest_key][Latest_key];
其中,Latest_key是在给定的扫描循环中被按下的单个键,并且
n是所述二维数组中的列数和行数;
针对所述键盘矩阵的所述多个扫描循环中的每一个,确定在所述扫描循环中的一个扫描循环期间是否有数量为M的多个键被按下;
对于所述多个键中被按下的每个键key_m,根据下式计算数组[key_m][1...M]的总和:
Figure FDA0003568274490000021
以总和数字顺序排列所有SUM key_m;以及
按照根据所述总和数字顺序的发送顺序来发送在单个扫描码期间被按下的每个键key_m的扫描码。
9.根据权利要求8所述的控制器,还被配置成:向所确定的被按下的单个键的每个相应数组分配数值-1、0或1。
10.根据权利要求8所述的控制器,其中,在所述二维数组中,列数与行数相同。
11.根据权利要求8所述的控制器,其中,被按下的每个键key_m是已确定的被按下的单个键。
12.根据权利要求8所述的控制器,其中,具有最高数值的SUM key_m使得相关联的扫描码能够被首先发送。
13.根据权利要求8所述的控制器,其中,具有最低数值的SUM key_m使得相关联的扫描码能够被最后发送。
14.一种在键盘系统中发送扫描码的方法,所述键盘系统具有键盘矩阵,所述方法包括:
当在所述键盘矩阵的多个扫描循环中的每一个期间仅有单个键被按下时,针对被按下的每个单个键:
将第一数组[Latest_key][1...n]设定为第一数值;
将第二数组[1...n][Latest_key]设定为第二数值;并且
将第三数组[Latest_key][Latest_key]设定为第三数值;
其中,Latest_key是在给定的扫描循环中被按下的单个键;
其中,n是所创建的数组中的列数;以及
当在单个扫描循环中有多个键被按下时,针对被按下的每个键key_m:
计算数组[key_m][1...M]的总和;
按照数字递减顺序排列所述数组的总和;
按照所述数字递减顺序发送每个键key_m的扫描码,
其中,M是被按下的键key_m的总数。
15.根据权利要求14所述的方法,其中,所述第一数值、所述第二数值和所述第三数值各自彼此不同。
16.根据权利要求15所述的方法,其中,所述第一数值是0,所述第二数值是1,并且所述第三数值是-1。
17.根据权利要求14所述的方法,其中,所述第一数组、所述第二数组和所述第三数组是单个二维数组的形式。
18.根据权利要求17所述的方法,其中,在所述二维数组中,行数等于列数。
19.根据权利要求14所述的方法,其中,所述多个扫描循环中的每一个按照相同的驱动线顺序而发生。
CN201810614790.0A 2017-08-15 2018-06-14 键盘系统、嵌入式控制器及键盘系统中发送扫描码的方法 Active CN109407857B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/677,418 US10303263B2 (en) 2017-08-15 2017-08-15 Auto swap order of finding key to generate scan codes
US15/677,418 2017-08-15

Publications (2)

Publication Number Publication Date
CN109407857A CN109407857A (zh) 2019-03-01
CN109407857B true CN109407857B (zh) 2022-06-17

Family

ID=63518576

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810614790.0A Active CN109407857B (zh) 2017-08-15 2018-06-14 键盘系统、嵌入式控制器及键盘系统中发送扫描码的方法

Country Status (5)

Country Link
US (1) US10303263B2 (zh)
JP (1) JP6595053B2 (zh)
CN (1) CN109407857B (zh)
DE (1) DE102018119294B4 (zh)
GB (1) GB2567298B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63237118A (ja) * 1987-03-25 1988-10-03 Matsushita Electric Ind Co Ltd キ−入力処理装置
JPH06149437A (ja) * 1992-11-16 1994-05-27 Hitachi Ltd キーデータ処理方式
US5430443A (en) * 1993-04-12 1995-07-04 National Semiconductor Corporation Scanned switch matrix
CN1327193A (zh) * 2000-06-05 2001-12-19 英业达股份有限公司 检测键盘阵列短路的方法
CN1694049A (zh) * 2005-05-20 2005-11-09 韩亚林 一种基于五键的汉字输入系统
CN101211324A (zh) * 2006-12-29 2008-07-02 金宝电子工业股份有限公司 输入系统
CN201111222Y (zh) * 2007-06-08 2008-09-03 北京工业大学 智能安全键盘
TW200838131A (en) * 2007-03-12 2008-09-16 Coretronic Corp Keypad module having light-indicating functionality and method for controlling the same
CN101510127A (zh) * 2009-03-30 2009-08-19 北京中星微电子有限公司 一种实现键盘模块复合键功能的方法、装置和芯片
JP2011154570A (ja) * 2010-01-27 2011-08-11 Kyocera Corp 携帯電子機器
CN102298445A (zh) * 2011-08-15 2011-12-28 李中才 通用速录键盘
CN103312340A (zh) * 2012-03-12 2013-09-18 联发科技股份有限公司 电路及实现键盘的方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USH1970H1 (en) * 1971-07-19 2001-06-05 Texas Instruments Incorporated Variable function programmed system
SE420447B (sv) * 1978-11-21 1981-10-05 Ibm Svenska Ab Metod for generering av teckenkoder medelst ett tangentbord samt anordning for utforande av metoden
JP2556567B2 (ja) 1988-11-30 1996-11-20 ホーヤ株式会社 ガラス板の製造装置
JPH02148319A (ja) 1988-11-30 1990-06-07 Nec Corp キーボード
TWI289778B (en) * 2003-04-28 2007-11-11 Behavior Tech Computer Corp Method for manufacturing keys of keyboard and keyboard thereof
US7649478B1 (en) * 2005-11-03 2010-01-19 Hyoungsoo Yoon Data entry using sequential keystrokes
US8068097B2 (en) * 2006-06-27 2011-11-29 Cypress Semiconductor Corporation Apparatus for detecting conductive material of a pad layer of a sensing device
US8786554B2 (en) * 2006-07-10 2014-07-22 Atmel Corporation Priority and combination suppression techniques (PST/CST) for a capacitive keyboard
US20130215038A1 (en) * 2012-02-17 2013-08-22 Rukman Senanayake Adaptable actuated input device with integrated proximity detection

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63237118A (ja) * 1987-03-25 1988-10-03 Matsushita Electric Ind Co Ltd キ−入力処理装置
JPH06149437A (ja) * 1992-11-16 1994-05-27 Hitachi Ltd キーデータ処理方式
US5430443A (en) * 1993-04-12 1995-07-04 National Semiconductor Corporation Scanned switch matrix
CN1327193A (zh) * 2000-06-05 2001-12-19 英业达股份有限公司 检测键盘阵列短路的方法
CN1694049A (zh) * 2005-05-20 2005-11-09 韩亚林 一种基于五键的汉字输入系统
CN101211324A (zh) * 2006-12-29 2008-07-02 金宝电子工业股份有限公司 输入系统
TW200838131A (en) * 2007-03-12 2008-09-16 Coretronic Corp Keypad module having light-indicating functionality and method for controlling the same
CN201111222Y (zh) * 2007-06-08 2008-09-03 北京工业大学 智能安全键盘
CN101510127A (zh) * 2009-03-30 2009-08-19 北京中星微电子有限公司 一种实现键盘模块复合键功能的方法、装置和芯片
JP2011154570A (ja) * 2010-01-27 2011-08-11 Kyocera Corp 携帯電子機器
CN102298445A (zh) * 2011-08-15 2011-12-28 李中才 通用速录键盘
CN103312340A (zh) * 2012-03-12 2013-09-18 联发科技股份有限公司 电路及实现键盘的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于S3C44BOX的键盘接口设计;余贵水等;《微计算机信息》;20090715;第25卷(第7-2期);93-94 *
难处理 多按键"同时响应"总结;JasNature;《博客园》;20120308;1 *

Also Published As

Publication number Publication date
GB2567298A (en) 2019-04-10
DE102018119294A1 (de) 2019-02-21
GB201812870D0 (en) 2018-09-19
CN109407857A (zh) 2019-03-01
JP2019036297A (ja) 2019-03-07
US20190056795A1 (en) 2019-02-21
JP6595053B2 (ja) 2019-10-23
DE102018119294B4 (de) 2023-03-16
US10303263B2 (en) 2019-05-28
GB2567298B (en) 2020-04-22

Similar Documents

Publication Publication Date Title
US8368521B2 (en) Information processing apparatus and information processing method
US5828323A (en) High speed keyboard for computers
CN107943339B (zh) 触摸显示装置和触摸驱动电路及其驱动方法
CN106933403A (zh) 拼接式触控屏幕装置及其触控屏幕的触控检测方法
US20180307313A1 (en) Device and method for transmitting and receiving information by braille
US4237535A (en) Apparatus and method for receiving and servicing request signals from peripheral devices in a data processing system
CN109407857B (zh) 键盘系统、嵌入式控制器及键盘系统中发送扫描码的方法
JP4027285B2 (ja) キーパッド装置
CN102073616A (zh) 个人计算机系统及其多重输出的操作方法
GB2140177A (en) Data entry interface assembly
CN104423616B (zh) 输入装置及控制单元
EP3583617B1 (en) Method for operating an active input element and corresponding input element, input arrangement and computer program product
JP3379873B2 (ja) マトリックス型タッチパネル入力装置
EP1647877A1 (en) Apparatus and method for detecting key signals in a mobile communication terminal
CN106055225A (zh) 一种控件显示方法、终端和服务器
CN101937656A (zh) 驱动电路、液晶显示装置以及用于控制输出电压的方法
CN102193644A (zh) 计算机系统和模拟键盘输入的方法
KR102313523B1 (ko) 노이즈 제거 기능을 구비한 고속 키보드장치
CN212206335U (zh) 一种数字电子秤矩阵键盘模拟器
JP2008123358A (ja) スイッチマトリクス回路、および、スイッチマトリクス回路の走査方法
JP5427331B1 (ja) タイピング訓練システム、タイピング訓練方法、及びタイピング訓練プログラム
KR101340892B1 (ko) 62 키 이상의 엔키 롤오버가 가능한 유에스비 키보드 장치 및 n키 롤오버 기능 제공 방법
CN101634950A (zh) 计算机的基本输入输出系统的设定系统及其设定方法
CN107003799A (zh) 终端装置和用于控制终端装置的程序
US10175870B1 (en) Prototyping apparatus with configurable pins and corresponding methods

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230814

Address after: 23 / F, Lincoln building, 979 King's road, Quarry Bay, Hong Kong, China

Patentee after: Lenovo PC International Ltd.

Address before: Singapore, Singapore City

Patentee before: Lenovo (Singapore) Pte. Ltd.

TR01 Transfer of patent right