用于开关矩阵和开关感应的电路和方法

文档序号:7525648阅读:407来源:国知局
专利名称:用于开关矩阵和开关感应的电路和方法
技术领域
本发明涉及一种开关矩阵,并且更特别涉及一种有效率、低成本的开关矩阵。
背景技术
在多种接口装置,比如键区,操纵杆,操纵轮,游戏键盘等中,需要检测用户选择的不同按钮和开关。标准的开关矩阵像水平和垂直的导线格一样操作。在所有水平和垂直的导线交叉的点上放置开关。按压/闭合开关连接两根导线。图1示出了十六(16)开关的标准矩阵8,一个4×4矩阵的逻辑图。在标准的16开关矩阵中,四根导线或行线,行0,行1,行2和行3专用于将对应于逻辑电平零的电压驱动进矩阵。在一个时间仅将四行中的一行驱动为低,剩余的行由在矩阵顶部的工作电阻(pull-up resistor)10a,10b,10c或10d被动地拉高。四条线,列0,列1,列2和列3,充当扫描线并且用来读回矩阵的状态。被扫描的行在逻辑零。通过取样列导线来读取矩阵。例如,在图1的表示中,由圆圈指示闭合的开关,由一簇点表示断开的开关。这样,示出一个开关,开关14bc,为闭合的。当在扫描矩阵的过程中将行1驱动为低时,列2读取零,指示处理器12驱动行并且执行闭合/按压对应于行1和列2的开关14bc的扫描。
在特定情况中,可能发生将开关错误的解释为闭合的问题。图2示出了在图1的开关矩阵功能逻辑图中闭合/按压的三个开关,开关14bb,开关14cb,和开关14cc。为了确定是否按压了行1上的任意开关,处理器将行1驱动为低。因为按压了开关14bb,列1和行1连接,从而使列1为低。之后,处理器12正确地检测到按压了在行1和列1的交叉点的开关14bb。因为列1为低,并且还按压了开关14cb,行2也和行1通过列1连接。这个连接将行2拉低。因为还按压了在行2上的按钮开关14cc,同样地将列2拉低。因为处理器12将行1驱动为低,其将列2的低解释为好像闭合了开关14bc,如图2的三角所示。以这种方式,将开关14bc错误地解释为闭合,并且被认为是“虚拟(ghost)”了开关14cc。为了避免这种“虚拟”,通常矩阵方案的设计必须实现适当地识别闭合的开关同时说明并克服“虚拟”的问题的性能。通常,对于如图1和2所示的标准矩阵图,仅允许扫描行中在唯一低状态的一个,从而避免虚拟问题。
图3示出了现有的用于避免虚拟的开关选择的标准4×4开关矩阵20。如图所示,有16个开关,S1到S16,以及16个二极管,D1到D16。二极管充当单向电子管,仅允许电子以一个方向流过开关,也就是,在现有电路中从高电平(逻辑1)到低电平(逻辑0)。二极管进一步担当避免短路的职责,通过按压任意两个在同一列的开关可能会发生短路,其可能从驱动输出线的处理器12引起过大的电流。
在标准开关矩阵中的二极管还担当克服虚拟问题的职责。在图3的实例中,开关S6示为闭合。当行1由处理器22驱动为低时,二极管D6允许电流流过S6,将列2拉低。注意到,在示意图中,二极管允许状态为低的行(被扫描的)将列拉低。但是,一旦按压在一列中的第二开关,比如开关S10,因为二极管D10是反偏压的(也就是,箭头指向的二极管的一侧的电压(+5V)比二极管的另一侧的电压(0V)要高),二极管D10防止在列2上的低电压将行2拉低。因为反偏压的二极管不导通,仅仅由处理器22驱动为低的行将为低,并且即使在一列内按压多个开关,其它行也不会被拉低。以这种方式,如参考图2描述的虚拟问题才不会发生。
虽然现有的开关矩阵可能提供开关选择指示并且避免虚拟,现有的方法是输入/输出(I/O)密集的,在提供扫描线处理中需要大量的处理器资源。现有的开关矩阵进一步需要每一开关具有一个二极管来防止虚拟,随着矩阵中的开关的数量增加,这增加了可观的累计成本。因此,需要相比现有的开关矩阵更有效率和具有更低成本的开关矩阵。

发明内容
提供了开关矩阵电路的若干个方面。根据电路方面,在行和列结构中组织多个开关。电流感应电路和多个开关连接。电流感应电路在多个开关的每一列包括晶体管和至少一个电阻。将在一列中由晶体管放大并由至少一个电阻转换的电流感应为指出在用于所选行的列中的开关状态的逻辑电平的指示。
通过本发明,提供更有效率和更低成本的开关矩阵电路。在一个实施例中,本发明感应电流,而不是感应电压,来检测开关的断开或闭合,其中电阻和晶体管用于矩阵的每一列来提供选择信号到处理器,从而确定按压了矩阵的哪个(些)按钮。另外,通过使用双向扫描线和在一个时间仅扫描一个开关而不是在一个时间扫描整行开关,可以减少连到处理器的I/O线的数量。另一个实施例是电流感应矩阵的变型,其可能使用模拟数字转换器来感应开关状态,但是,同样地,使用双向扫描线来减少连到处理器的I/O线的数量。通过下面的详细说明和附图,将可以很容易的理解这些和其它优点。


图1示出了16开关的标准矩阵的逻辑图。
图2示出了图1的开关矩阵逻辑图中的三个开关的闭合/按压。
图3示出了指示开关选择同时避免虚拟的现有的标准4×4开关矩阵。
图4示出了根据本发明的一个实施例的电流感应开关矩阵的示意图。
图5示出了开关S10’和S6’闭合的图4的电路的分压器透视图。
图6示出了本发明的第二实施例,其使用单一组的扫描线用于输入和输出。
图7示出了本发明的另一实施例,其使用双向扫描线。
具体实施例方式
本发明涉及开关矩阵电路。下面的描述使得本领域的普通技术人员可以制造并使用本发明,而且在专利申请和它的要求的内容中提供该描述。对本领域技术人员来说,很明显可以对在这里描述的优选实施例和一般原理及特征做出很多更改。因此,本发明不限于所示的实施例,而是根据和在这里描述的原理和特征一致的最广泛的范围。
图4示出了根据本发明的一个实施例的电流感应开关矩阵100的示意图。如它的名字所指示的,在矩阵中闭合开关的检测是基于电流的。类似于现有的矩阵,在一个时间仅将一行驱动为低。在图4的实例中,包括16个开关,S1’到S16’,并且每一个分别和16个电阻,R1’到R16’中的一个连接(例如,每一240K欧姆)。和开关S1’-S16’连接的还有电流感应电路,该电路包括分别用于开关矩阵的每一列,列0,列1,列2和列3的晶体管(Q1,Q2,Q3和Q4,例如,双极结晶体管)以及至少一个电阻(R17,R18,R19(例如,每一240K欧姆),以及R20,R21,R22,R23和R24(例如,每一4.7K欧姆))。
为了示出在图4的开关矩阵中的操作,将一个开关S6’示为闭合。当行1由和电流感应电路连接的处理器20驱动为低时,电流流过R6和R18,以及Q2的基极到发射极结,像本领域技术人员认可的那样,该基极到发射极结是由Q2的箭头指示的前向电流路径。注意到因为仅将行1驱动为低,仅在行1上的开关(S1’,S2’,S3’,或S4’)可以在晶体管Q1到Q4上进行开关操作。
随着电流流过晶体管Q2,将小的基极电流放大为大的发射极到集电极电流。由R22将发射极电流转换为电压。因为电阻22将电流转换为电压,电流在列1上由处理器120感应为逻辑1。在列1上的逻辑1指示处理器20在行1和列1的交叉点处的开关S6’被闭合。
从分压器方面,如果除了S6’,还闭合了S10’,那么R10’,R18,和R6’将形成如图5所述的分压器网络。因为R6’看到大约4.4V的压降,其产生大约18.3μA(微安培)的电流。R10’和R18每一仅产生大约0.6V/240K=2.5μA。因此,电流的平衡(18.3-2.5-2.5=13.3μA)不得不流过Q2的基极,其仍旧指示Q2被接通并且当用于每一开关的合适的行被驱动为低时,足够检测闭合的开关。事实上,即使闭合在列1的所有四个开关,Q2的基极仍然不得不产生大约8.3μA,其足够打开Q2并将行1拉高来正确指示闭合的开关。通过应用没有两行会同时在唯一的逻辑零状态这一原理,防止了发生多开关闭合的虚拟。因为晶体管的基极到发射极结供应保证了列将不会降到大约4.4V以下,也就是,不会比发射极或本例中的+5V供应电压低超过0.6V左右,例如,即使开关S10’和S6’都闭合了,也不会有足够的电流通过S10’来接通任意其它晶体管。
应该注意这里使用的术语“处理器”指的是多种不同类型的控制器电路,比如微处理器,微控制器,数字信号处理器(DSP),可编程逻辑阵列(PGA),数字逻辑和状态机器等。
图6示出了本发明的开关矩阵200的第二实施例,其使用用于输入和输出的单一组的扫描线(扫描0-扫描4)。但是,每一扫描线不能同时输入和输出。为了支持双向扫描线,优选地将在矩阵中的开关设置为行和列,其中开关矩阵具有开关的偏移对角(off-set diagonal)结构,使得除了每行中的一个交叉点,在每一行和列的交叉点上都有开关,而缺少开关的交叉点在行中位于不同的列。另外,为了维持仅一行可以是唯一的逻辑零状态的原理,在一个时间处理器120仅驱动一条扫描线为低,而其它扫描线中的一个充当输入线,通知处理器读取,所有其它扫描线由处理器驱动为高。例如,如果检验行0的S1,扫描线0由处理器120驱动为高。在这个情况中,扫描线1充当到处理器120的输入,剩余的扫描线2和3由处理器驱动为高,使得没有电流通过任意其它开关。
在另外的实施例中,使用双向扫描线限制在一个时间仅扫描一个开关,而不是在现有技术中的在一个时间扫描一行。但是,对于具有1kHz(千赫兹)的循环率(loop rate)的通常的处理器,在大约20ms(微秒),或者五分之一秒,完成二十个开关的扫描,也就是,每秒可以完整扫描矩阵50次,这对于软件去抖动已经足够了。另外,使用双向扫描线相当大程度上实现了节省成本的可能。
通常,对于标准矩阵,可由给定数量的I/O线支持的开关的数量是R+C,其中R指的是在矩阵中行的数量,C指的是在矩阵中列的数量。在本发明中的矩阵中的开关数量的增长与S(S-1)一致,其中S指的是扫描线的数量。注意到,由现有矩阵支持的开关数量的增长大约是1/4S2,然而对于本发明的矩阵,数量增长为S2-S。如下面的表所示,对于相同数量的I/O线/管脚,相比现有的矩阵,根据本发明的矩阵可以支持的开关数量在三倍以上。

这样,相比现有技术,可以使用具有更少I/O线的处理器来支持相同大小或更大的矩阵,这提供了使用更小、更廉价的处理器带来的可能的成本节省。当使用和现有电路相同大小的处理器时,电流感应矩阵可以获得不再需要支持矩阵扫描的另外可用的I/O线,这样相比I/O密集的标准扫描矩阵,允许将其它特征和值添加到本产品。当然,通过去除抗虚拟(anti-ghosting)二极管并以更低成本的电阻替代它们,可以实现另外的成本节省。
图7示出了根据本发明的开关矩阵的另一实施例,其也使用单一组的扫描线,用于输入和输出的扫描1到扫描5。电阻(例如,10K欧姆电阻)和矩阵中的每一开关相关联,二极管和电阻(例如,100K欧姆电阻)和每一开关相关联。对于这个实施例,使用电压感应方法,其中可以使用电压阈值感应电路222来感应在扫描线上和唯一的开关状态相关的电压电平。电路222将从开关电路接收的在扫描线上的电压电平转换为适于处理器220的逻辑状态,例如,将高于设置阈值的电压转换为逻辑状态1,并且将低于阈值的电压转换为逻辑0。处理器220和电路222通过信号总线224连接。例如,电路222可能是模拟数字转换器。在一个实施例中,处理器220,模拟数字转换器222(用于感应电压),以及通用输入/输出电路(用于允许扫描线的扫描)可以全部包括在单一封装中,比如ST7263微控制器。在其它实施例中,组件可以是分开的,或者可以使用其它类型的电路来转换为逻辑状态。例如,在不同实施例中,可在每一扫描线上使用本领域普通技术人员已知的、包括晶体管的电压电平转换器。
电压感应矩阵提供更低成本的实现,因为它以N个二极管代替N个晶体管(其中N表示扫描线的数量),二极管的成本比晶体管要低。确定唯一的开关状态的约束条件包括将一条扫描线用作模拟输入,将一条扫描线驱动到逻辑高电平,并且将剩余的扫描线驱动到逻辑低电平,其中如前所述的处理器执行扫描线驱动。
在这个实施例的感应开关状态中,被感应的开关是由被驱动为高的行以及被感应的列的唯一的交叉点确定的一个开关。例如,在图7所示的矩阵中,如果扫描1到扫描3在逻辑0,扫描4在逻辑1,并且扫描5是输入扫描线,那么开关S154,如果闭合的话,是唯一可以将扫描5拉到高逻辑电平(对于5V CMOS逻辑的+5V)的开关。尽管在矩阵中可能存在其它闭合的开关,即使多个开关闭合,仍然有足够能力指示唯一的开关状态。通常,对于这个实施例,当在输入扫描线上的电压超过逻辑0电压电平一个二极管电压电平压降加上用于噪音容限的小的电压分配时,确定唯一的开关为闭合。像本领域技术人员认可的那样,可能通过使用肖特基二极管而不是标准小信号二极管来添加另外的噪声容限。
举例来说,如果除了S154,还闭合S151,S152和S153或者它们的任意组合,那么根据另外闭合的开关S151到S153的数量,在扫描4上的电压将在1.24V到5V的范围中。如果还闭合开关S115,S125,S135,S141,S142和S143,之后在扫描5上的电压将是至少1.09伏特,仍然高于硅二极管的正常前向电压降0.7V,并且因此,将仍然足够指示用于闭合开关的高逻辑电平。这样,在这个实例中,用于高和低逻辑状态的阈值是大约1.0到1.1伏特。
对于矩阵来说,电阻R101到R105是有用的附加部分,用于其中控制设备具有泄漏电流的应用,其中的泄漏电流将反过来影响在输入扫描线上的电压电平。二极管D101到D105保证了由逻辑一扫描线行和感应线列的交叉点确定的唯一的开关可以将输入扫描线带到超过一个高于逻辑0的二极管压降的电压电平。如果不存在二极管而且线路短路,那么由驱动为高的列和输入感应线行的交叉点确定的第二开关还可将感应线拉到高于逻辑0一个二极管压降的电压。这样,除了上面描述的唯一的开关,没有开关可以将电压施加于输入扫描线,并且同样没有开关的组合可以将电压施加于感应线,其中该电压超过扫描线的逻辑0电压电平的一个二极管压降,并将该扫描线设置为逻辑0。这提供了用于矩阵的抗虚拟。
另外,也可以将矩阵布置为半矩阵,这样仅填充非对角线(off-diagonal)开关组的上部(也就是,开关S121,131,141,151,132,142,152,143,153,154)或下部(也就是,开关S112,113,123,114,124,134,115,125,135,145)。在这个布置中,不再需要二极管,因为将输入扫描线从逻辑0拉到一个二极管压降以上的闭合的开关将是唯一的。还可以和上述的电流感应实施例一起使用半矩阵布置,从而消除使用晶体管的需要。虽然半矩阵布置没有减少被感应的开关的数量,总数量仍然超过了在现有技术的布置中被支持的开关数量。例如,当N=5时,如图7,上述具有有源组件的一个开关矩阵支持20个开关,与此相对,不具有有源组件的半矩阵支持10个开关。而标准开关矩阵则仅支持6个开关。
另一选择方案可通过反转所有驱动线和感应线的逻辑感应并且倒转二极管方向(如果包括二极管的话)来实现。在这个变型中,指示“闭合”的有效的电压电平是在0伏特加上分配用于噪声容限的电压电平之上。类似地,也有一用于电流感应矩阵的对称反转设计。
从前述中可以看出,在不脱离本发明的新颖概念的精神和范围的前提下,可以做出多种修改和变更。应该理解,无意对关于特定方法和在这里图示的设备进行限制的,也不应该推断出有这样的限制。例如,本发明的开关矩阵可以用在多种接口或电子装置,包括键盘,操纵杆,游戏键盘,导航轮,手机,PDA,电子应用,或任意具有多个电气开关或按钮的装置。控制扫描的处理器可以和具有开关的装置集成,或者通过物理或无线总线连接。当然,本发明意旨由权利要求涵盖所有在权利要求范围之内的这样的修改。
权利要求
1.一种开关矩阵电路,包括多个开关,以行和列结构进行组织;和电流感应电路,和所述多个开关连接,所述电流感应电路在所述多个开关的每列包括晶体管和至少一个电阻,其中将在列中由晶体管放大并且由至少一个电阻转换的电流感应为指出在所选行的列内的开关状态指示的逻辑电平。
2.如权利要求1所述的开关矩阵电路,其中,所述晶体管进一步包括双极结晶体管。
3.如权利要求1所述的开关矩阵电路,其中,所述行和列结构进一步包括非对角线结构,该结构除了在每行的一个交叉点外,在每个行和列的交叉点都具有一个开关。
4.如权利要求3所述的开关矩阵电路,其中,每一缺少开关的交叉点位于每一行内的不同列中。
5.如权利要求4所述的开关矩阵电路,其中,单一的扫描线支持对在非对角线结构之内的一行和一列提供行输入信号或读取列输出信号。
6.如权利要求1所述的开关矩阵电路,其中,处理器感应开关状态。
7.一种用于更有效的开关选择感应的电路,所述电路包括开关矩阵,包括多个被组织为多个行和列的开关;电流感应电路,和所述开关矩阵连接;和处理器,和所述开关矩阵以及所述电流感应电路通过多条扫描线连接,其中,由扫描线选择的行从所述电流感应电路返回列电流电平来检测是否选择了在所述开关矩阵的行和列交叉点上的开关。
8.如权利要求7所述的电路,其中,所述多条扫描线进一步包括多条双向扫描线,其中单一的扫描线提供行选择和列感应性能。
9.如权利要求8所述的电路,其中,所述多个开关的组织进一步包括非对角线组织以支持所述双向扫描线。
10.如权利要求7所述的电路,其中,所述电流感应电路进一步包括用于在所述开关矩阵中的每一列的晶体管和电阻电路。
11.如权利要求10所述的电路,其中,所述列电流电平指示何时接通所述晶体管以及何时电流通过所述晶体管。
12.如权利要求10所述的电路,其中,所述晶体管进一步包括双极结晶体管。
13.一种用于感应开关状态的方法,所述方法包括连接电流感应电路和在行和列结构中具有多个开关的开关矩阵;和使用处理器来基于电流感应电路中的电流信号检查开关矩阵中的开关状态。
14.如权利要求13所述的方法,进一步包括将电流感应电路形成为在多个开关的每一列的晶体管和至少一个电阻。
15.如权利要求14所述的方法,其中,使用处理器检测开关状态进一步包括将一列中由晶体管放大和由至少一个电阻转换的电流检测作为指出所选行的列中的开关状态指示的逻辑电平。
16.如权利要求15所述的方法,其中使用处理器进一步包括使用多条双向扫描线,其中单一的扫描线提供行选择和列感应性能。
17.如权利要求16所述的方法,进一步包括将所述多个开关组织为非对角线组织以支持双向扫描线。
18.如权利要求14所述的方法,进一步包括将双极结晶体管用作所述晶体管。
19.一种开关矩阵电路,包括多个开关,在行和列的非对角线结构中组织,该结构除了每行的一个交叉点外,在每个行和列的交叉点都具有一个开关;和多条扫描线,包括多条双向扫描线,其中单一的扫描线提供用于开关选择识别的行选择和列感应性能。
20.如权利要求19所述的开关矩阵,其中,所述缺少开关的每行的一个交叉点位于在每一行内的不同列。
21.如权利要求19所述的开关矩阵,其中,模拟数字转换器感应开关状态。
22.如权利要求19所述的开关矩阵,进一步包括用于每一扫描线的二极管和晶体管电路。
23.一种用于更有效的开关选择感应的电路,所述电路包括开关矩阵,其包括多个开关,组织为多个行和列;和多个电阻,每一电阻和所述多个开关中相关联的一个电气地串连起来;电压阈值感应电路,和所述开关矩阵通过多条扫描线连接;和处理器,和所述电压阈值感应电路通过信号总线连接,其中,由扫描线选择的行从所述开关矩阵返回列电流电平,以检测是否选择了在所述开关矩阵的行和列交叉点上的开关。
24.如权利要求22所述的电路,其中,所述电压阈值感应电路将所述列电压电平转换为逻辑状态。
25.如权利要求22所述的电路,其中,所述电压阈值感应电路包括模拟数字转换器。
26.如权利要求22所述的电路,其中,所述电压阈值感应电路包括电压电平转换器,所述电压电平转换器包括晶体管。
全文摘要
本发明提供了开关矩阵电路(100)的多个方面。根据电路方面,在行和列结构中组织多个开关(S1’-S16’)。电流感应电路和多个开关(S1’-S16’)连接。电流感应电路在多个开关的每一列分别包括晶体管(Q1,Q2,Q3,Q4)和至少一个电阻(R17,R18,R19,R20)。将在一列中由晶体管放大并由至少一个电阻转换的电流感应为指出在所选行的该列中的开关状态指示的逻辑电平。电流感应布置还可能用在使用双向信号控制的实施例中来最小化扫描开关矩阵所需的I/O线的数量。还可能在另一感应电压电平来确定开关闭合的实施例中实现双向信号扫描。
文档编号H03M11/20GK1557050SQ02818440
公开日2004年12月22日 申请日期2002年9月19日 优先权日2001年9月19日
发明者科林·蒂尔林, 科林 蒂尔林 申请人:伊梅森公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1