一种按键检测电路及检测方法

文档序号:7519008阅读:452来源:国知局
专利名称:一种按键检测电路及检测方法
技术领域
本发明涉及按键技术,尤其涉及一种按键检测电路。
背景技术
当一个系统的通用输入/输出接口(简称GPI0)较少时,通常只能支持较少的按键,且GPIO的个数与检测按键的个数相同。如当GPIO的个数为3个,按键的个数也为3个,所以在不改变GPIO个数的同时需要增加可以识别的按键只能通过增加附加的器件来实现,使得电路设计较复杂,同时生产成本也高,实用性较低。现有市面上采用的矩阵扫描电路可通过6个GPIO实现9个按键的实时检测,但这样依然需要较多的GPIO个数来实现按键的实时扫描,实用性依然不强,生产成本较高。因此有必要提供一种设计简单,可靠性高,且能够极大节约系统资源,降低生产成本的按键检测电路。

发明内容
本发明的目的是提供一种设计简单,可靠性高,且能够极大节约系统资源,降低生产成本的按键检测电路。。根据本发明的一个方面,提供了一种按键检测电路,包括中央处理器MCU、若干按键和电源,所述中央处理器MCU设置有η个通用输入/输出接口 GPI0,其特征在于所述按键的个数为η2个,所述η2个按键按SWnxn的矩阵布置,其中,η为大于I的整数;所述按键检测线路包括η2条检测线路,具体地,每个通用输入/输出接口 GPIO均为输入接口,GPIOi通过按键SWlm接地构成检测 Sfflm的检测线路,其中m为I到η的自然数;GPIOi 为输出接口,GpIO1-GpIOh,以及 GPI0i+1_GPI0n 为输入接口,GpIO1-GPIOh 以及GPI0i+1-GPI0n分别通过SW2i、Sff3i> Sff4i- Sffni与GPIOi连接构成n_l条检测线路,用于实现对按键SW2i、SW3i、Sff4i. . . Sffni的检测,其中,i为I到η的自然数。作为优选,GPIOi通过按键SWli接地构成检测线路中,GPIOi和按键SWli之间设置有二极管,用于防止检测电路中电流倒灌而损坏通用输入/输出接口 GPIOit5进一步地,所述每个GPIO与电源之间设置有上拉电阻。其中,所述η为2。或者,所述η为3。根据发明的另一方面,提供了一种按键检测电路的检测方法,其中,所述按键检测电路包括中央处理器MCU、n2个按键和电源,所述中央处理器MCU设置有η个通用输入/输出接口 GPI0,所述η2个按键按SWnxn的矩阵布置,其中,η为大于I的整数,所述按键检测方法包括以下步骤中央处理器MCU控制每个GPIO的输入输出状态;
当需要检测按键SWli时,中央处理器MCU控制每个GPIO均为输入接口,GPIOi与按键SWli构成的检测线路上的按键SWli被扫描,若GPIOi为低电平,则表示按键SWli被按下,其中,i为I到η的自然数,本步骤中,实现对按键矩阵中第一行的η个按键的扫描;当需要检测按键SW2i、Sff3i> Sff4i-Sffni时,中央处理器控制GPIOi为输出接口,GPIO1-GPiO^1,以及 GPI0i+1-GPI0n 为输入接口,按键 SW2i、Sff3i > Sff4i. · · Sffni 被扫描,若GPIO1-GPiO^1, GPI0i+1-GPI0n 中的 GPIO 接口为低电平时,则按键 SW2i、Sff3i> SWySWni 中与GPIO接口相应的按键表示 被按下,其中,i为I到η的自然数,本步骤中,按键矩阵中除第一行的η*(η-1)个按键被扫描。具体地,η的个数为3。所述中央处理器MCU设置的三个GPIO接口对9个按键的检测步骤为当三个GPIO均为输入接口时,GPIOp GPIO2、GPIO3分别与按键SW11、SW12、SW13构成的检测线路上的按键3111、5112、5113被扫描,GPIO1为低电平,则表示按键SW11被按下;GPI02为低电平,则表示按键SW12被按下;GPI03S低电平,则表示按键SW13被按下;当GPIO1为输出接口,GPIO2、GPIO3为输入接口时,按键SW21、Sff31被扫描,当GPIO2为低电平时,则表示SW21被按下,当GPIO3为低电平时,则表示SW31被按下;当GPIO2为输出接口,GPIO^ GPIO3为输入接口时,按键SW22、Sff32被扫描,当GPIOi为低电平时,则表示SW22被按下,当GPIO3为低电平时,则表示SW32被按下;当GPIO3为输出接口,GPIOp GPIO2为输入接口时,按键SW23、Sff33被扫描,当GPIOi为低电平时,则表示SW23被按下,当GPIO2为低电平时,则表示SW33被按下。由以上技术方案可知,本发明中按键检测电路的中央处理器设置η个GPIO接口,通过本发明中的按键检测电路和按键检测方法η个GPIO接口可实现对η2个按键的检测。因此本发明不需较多的GPIO个数便可实现大量按键的实时扫描,能够极大节约系统资源,降低生产成本,同时本发明还具有可靠性高、适用性强的优点。


为了更清楚地说明本发明实施例或现有技术中的技术方案,以下将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,以下描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员而言,还可以根据这些附图所示实施例得到其它的实施例及其附图。图I示出了中央处理器设置两个GPIO接口实现对4个按键检测的电路图;图2示出了中央处理器设置三个GPIO接口实现对9个按键检测的电路图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。本发明的实施例提供了一种按键检测电路。所述按键检测电路包括中央处理器MCU、若干按键和电源。中央处理器MCU上设置η个通用输入/输出接口 GPI0。每个GPIO与电源之间设置有上拉电阻。相应地按键检测电路中按键的个数为η2个。本实施例的按键检测电路利用η个通用输入/输出接口 GPIO通过η2条检测线路实现对η2个按键的检测。
具体地,η2个按键按SWnxn的矩阵布置。其中,η为大于I的整数。所述η2条检测线路具体为当每个通用输入/输出接口 GPIO均为输入接口时,GPIOi通过按键SWlm接地构成SWlm的检测线路。其中,m为I到η的自然数。即GPIO1通过SW11接地、GPIO2通过SW12接地、GPIO3通过SW13接地,以此类推,GPIOn通过SWln接地构成η条检测线路,分别实现对Sff11, Sff12, Sff13- Sffln的检测。作为优选,GPIOi通过按键SWli接地构成的η条检测线路中,GPIOi和按键SWli之间设置有二极管,用于防止检测电路中电流倒灌而损坏通用输入/输出 接口 GPIOi。当GPIOi 为输出接口,GPIO1-GPiO^1,以及 GPI0i+1_GPI0n 为输入接口,时GPIO1-GPiO^1 以及 GPI0i+1-GPI0n 分别通过 SW2i、Sff3i> Sff4i. . . Sffni 与 GPIOi 连接构成 n_l 条检测线路,用于实现对按键sw2i、Sff3i> Sff4i. . . Sffni的检测,其中,i为I到η的自然数。当i取值为I时,即GPIO1为输出接口,则GPI02、GPI03、GPIOfGPIOn分别通过SW21、SW31、SW41. . . Sffnl 与 GPIO1 连接构成 η-I 条检测线路,从而实现对 SW21、SW31、Sff41. . . Sffnl的检测。当i取值为2时,即GPIO2为输出接口,则GPIOp GPI03、GPIOfGPIOn分别通过SW22、Sff32> SWi·· SWn2 与 GPIO2 连接构成 η-I 条检测线路,从而实现对 SW22、Sff32> Sff42. . . Sffn2的检测。由此类推,当i取值为η时,即GPIOn为输出接口,则GPIO^ GPIO2, GPIO3-GPIOn^1分别通过Sff2n> Sff3n> SWv·· SWnn 与 GPIOn 连接构成 η-I 条检测线路,从而实现对 SW2n、Sff3n> SWV·· SWnn的检测。因此当每个GPIO均为输入接口和一个GPIO为输入接口,其他n_l个GPIO为输出接口两个状态时,共有n+n*(n-l)=n+n2-n = η2条检测电路,每条检测电路上分别设置一个按键,从而通过按键检测电路实现η2个按键的检测。下面对于本发明实施例的按键检测电路的检测方法进行详细阐述。按键电路的检测方法包括以下步骤中央处理器MCU控制每个GPIO的输入输出状态;当检测SWn,SW12,Sff13- Sffln的按键状态时,中央处理器MCU控制每个GPIO均为输入接口,GPIOi与按键SWli构成的检测线路上的按键SWli被扫描,若GPIOi为低电平,则表示按键SWli被按下,其中,i为I到η的自然数,本步骤中,实现对按键矩阵中第一行的η个按键 SWn,Sff12, SW13... SWln 的扫描;当检测SW2i、Sff3i> SWy SWni的按键状态时,中央处理器MCU控制GPIOi为输出接Π, GPIO1-GPiO^1,以及 GPI0i+1-GPIOn 为输入接口时,按键 SW2i、SW3i、Sff4i. . . Sffni 被扫描,若GPIO1-GPiO^1, GPI0i+1-GPIOn中的任一个GPIO接口为低电平时,则相应的按键表示被按下,其中,i为I到η的自然数,本步骤中,按键矩阵中除第一行以外的n*(n-l)个按键被扫描。利用本发明中的检测电路,中央处理器MCU设置两个GPIO接口时,可实现4个按键的实时检测;中央处理器MCU设置三个GPIO接口时,可实现9个按键的实时检测;中央处理器MCU设置四个GPIO接口时,可实现16个按键的实时检测。下面以两个实施例来说明本发明的检测电路结构及检测方法。
实施例I :图I示出了中央处理器设置两个GPIO接口实现对4个按键进行检测的电路图。如图I所示,按键检测电路包括中央处理器MCU、4个按键SWn、SW12、SW21、SW22和电源,中央处理器MCU设置有GpiopGpio2两个gpio接口,Gpio1^Gpio2分别通过上拉电阻RpR2与电源相连。其中GpiopGpio2构成4条检测电路。当GPIO^ GPIO2均为输入接口时=GPIO^ GPIO2分别通过按键SW11、Sff12接地,构成2条检测线路;当GPIO1为输出接口,GPIO2为输入接口时=GPIO2通过SW21与GPIO1构成检测SW21的检测线路;当GPIO2为输出接口,GPIO1为输入接口时=GPIO1通过SW22与GPIO2构成检测SW22 的检测线路;4条检测线路实现对4个按键的实时扫描和检测。下面对按键检测电路对4个按键的检测方法进行详细阐述。当需要检测SW11、SW12时,中央处理器MCU控制GpiOpGPIO2均为输入接口,GPIO^GPIO2与按键SWn、Sff12构成的检测线路上的按键SWn、Sff12被扫描。若GPIO1为低电平时,则表示按键SW11被按下;gpio2为低电平,则表示按键SW12被按下。当需要检测SW2I时,中央处理器MCU控制GPIO1为输出接口,GPIO2为输入接口,按键SW2I被扫描,若GPio2为低电平,则表示SW2I被按下。当需要检测SW22时,中央处理器MCU控制GPIO2为输出接口,GPIO1为输入接口,按键SW22被扫描,若GPIO1为低电平,则表示SW22被按下。此时电路检测完毕,4个按键全部被检测。市面上的按键检测电路通过两个GPIO接口只能实现两个按键的检测,而本发明中的检测电路则可实现4个按键的检测。实施例2 图2示出了中央处理器设置三个GPIO接口实现对9个按键检测的电路图。如图2所示,按键检测电路包括中央处理器MCU、9个按键和电源,中央处理器MCU设置有GPIOpGPIO2, GPIO3三个GPIO接口,GPIO1, GPIO2, GPIO3分别通过上拉电阻R1' R2、R3与电源相连。其中GPIO^ GPIO2、GPIO3三个GPIO接口构成9条检测电路。当三个gpio均为输入接口时GPIOpgpic^gpiO3分别通过按键swn、sw12、Sw13接地,构成3条检测线路;当GPIO1为输出接口,GPI02、GPI03为输入接口时=GPIO2通过SW21与GPIO1构成检测SW21的检测线路;gpio3通过SW31与GPIO1构成检测SW31的检测线路;当GPIO2为输出接口,GpiOpGpIO3为输入接口时=GPIO1通过SW22与GPIO2构成检测SW22的检测线路;gpio3通过SW32与GPIO2构成检测SW32的检测线路;当GPIO3为输出接口,GPIOp GPIO2为输入接口时,GPIO1通过SW23与GPIO3构成检测SW23的检测线路;gpio2通过SW33与GPIO3构成检测SW33的检测线路。由此9条线路实现对9个按键的实时扫描和检测。下面对按键检测电路对9个按键的检测方法进行详细阐述。
当需要检测SWn、Sff12, Sff13时,中央处理器MCU控制GPIO^ GPIO2, GPIO3均为输入接口,GPIO^GPIOy GPIO3与按键SW11、SW12、SW13构成的检测线路上的按键SW11、SW12、SW13被扫描。若GPIO1为低电平时,则表示按键SW11被按下;GPI02S低电平,则表示按键SW12被按下;GPI03S低电平,则表示按键SW13被按下。当需要检测SW21、Sff31时,中央处理器MCU控制GPIO1为输出接口,GPI02、GPIO3为输入接口,按键sw21、Sff31被扫描,若GPIO2为低电平,则表示SW21被按下;若GPIO3为低电平,则表不Sff31被按下。当需要检测SW22、Sff32时,中央处理器MCU控制GPIO2为输出接口,GPIOp GPIO3为输入接口,按键SW22、SW32被扫描,若GPIO1为低电平,则表示SW22被按下;若GPIO3为低电平时,则表不Sff32被按下。当需要检测SW23、Sff33时,中央处理器MCU控制GPIO3为输出接口,GPIO:、GPIO2为输入接口,按键SW23、SW33被扫描,若GPIO1为低电平,则表示SW23被按下,若GPIO2为低电平, 则表不Sff33被按下。此时电路检测完毕,9个按键全部被检测。由于市面上16个及以上数目的按键的检测不常使用,因此本发明中对4个GPIO接口实现16个按键及大于4个以上GPIO接口实现相应数目的按键的实时检测方法在此处不再赘述。由以上技术方案可知,本发明中的按键检测电路可通过η个GPIO接口实现η2个按键的检测。因此不需较多的GPIO个数便可实现大量按键的实时扫描,能够极大节约系统资源,降低生产成本,同时本发明还具有可靠性高、适用性强的优点。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。
权利要求
1.ー种按键检测电路,包括中央处理器MCU、若干按键和电源,所述中央处理器MCU设置有η个通用输入/输出接ロ GPIO,其特征在于 所述按键的个数为η2个,所述η2个按键按SWnxn的矩阵布置,其中,η为大于I的整数; 所述按键检测线路包括η2条检测线路,具体地, 每个通用输入/输出接ロ GPIO均为输入接ロ,GPIOi通过按键SWlm接地构成检测SWlm的检测线路,其中m为I到η的自然数; GPIOi 为输出接 ロ,GPIO1-GPiO^1,以及 GPI0i+1-GPI0n 为输入接 ロ,GPIO1-GPiO^1 以及GPI0i+1-GPI0n分别通过SW2i、Sff3i > Sff4i- Sffni与GPIOi连接构成n_l条检测线路,用于实现对按键SW2i、SW3i、Sff4i. . . Sffni的检测,其中,i为I到η的自然数。
2.如权利要求I所述的按键检测电路,其中,GPIOi通过按键SWli接地构成检测线路中,GPIOi和按键SWli之间设置有ニ极管,用于防止检测电路中电流倒灌而损坏通用输入/输出接 ロ GPIOi。
3.如权利要求I所述的按键检测电路,其中,所述每个GPIO与电源之间设置有上拉电阻。
4.如权利要求I至3之一所述的按键检测电路,其中,所述η为2。
5.如权利要求I至3之一所述的按键检测电路,其中,所述η为3。
6.ー种按键检测电路的检测方法,其中,所述按键检测电路包括中央处理器MCU、η2个按键和电源,所述中央处理器MCU设置有η个通用输入/输出接ロ GPI0,所述η2个按键按Sffnxn的矩阵布置,其中,η为大于I的整数,所述按键检测方法包括以下步骤 中央处理器MCU控制每个GPIO的输入输出状态; 当需要检测按键SWli吋,中央处理器MCU控制每个GPIO均为输入接ロ,GPIOi与按键Sffli构成的检测线路上的按键SWli被扫描,若GPIOi为低电平,则表示按键SWli被按下,其中,i为I到η的自然数,本步骤中,实现对按键矩阵中第一行的η个按键的扫描; 当需要检测按键SW2i、Sff3i > Sff4i- SWni时,中央处理器控制GPIOi为输出接ロ,GPIO1-GPiO^1,以及 GPI0i+1-GPI0n 为输入接 ロ,按键 SW2i、Sff3i> Sff4i. · · Sffni 被扫描,若GPIO1-GPiO^1, GPI0i+1-GPI0n 中的 GPIO 接 ロ 为低电平时,则按键 SW2i、Sff3i> SW‘..SWni 中与GPIO接ロ相应的按键表示被按下,其中,i为I到η的自然数,本步骤中,按键矩阵中除第一行的η*(η-1)个按键被扫描。
7.如权利要求6所述的检测方法,其中,η的个数为3。
8.如权利要求7所述的检测方法,其中,所述中央处理器MCU设置的三个GPIO接ロ对9个按键的检测步骤为 当三个GPIO均为输入接ロ时,GPIO1、GPI02、GPIO3分别与按键SW11、SW12、SW13构成的检测线路上的按键SWn、Sff12, Sff13被扫描,GPIO1为低电平,则表示按键SW11被按下;GPI02为低电平,则表示按键SW12被按下;GPI03为低电平,则表示按键SW13被按下; 当GPIO1为输出接ロ,GPIO2,GPIO3为输入接ロ时,按键SW21、SW31被扫描,若GPIO2为低电平,则表示SW2I被按下,若GPIO3为低电平,则表示SW3I被按下; 当GPio2为输出接ロ,Gpio1^Gpio3为输入接ロ时,按键sw22、sw32被扫描,若GPio1为低电平,则表示SW22被按下,若GPIO3为低电平,则表示SW32被按下; 当GPIO3为输出接ロ,Gpio1^Gpio2为输入接ロ时,按键sw23、sw33被扫描,若GPio1为低电平,则表示SW23被按下,若GPIO2为低电平,则表示SW3 3被按下。
全文摘要
本发明公开了一种按键检测电路,包括中央处理器MCU、n2个按键和电源,中央处理器MCU设置有n个通用输入/输出接口GPIO。n2个按键按SWn×n的矩阵布置。按键检测线路包括n2条检测线路每个GPIO均为输入接口时,GPIOi通过按键SW1m接地构成检测SW1m的检测线路;GPIOi为输出接口,GPIO1-GPIOi-1,以及GPIOi+1-GPIOn为输入接口时,GPIO1-GPIOi-1以及GPIOi+1-GPIOn分别通过SW2i、SW3i、SW4i...SWni与GPIOi连接构成n-1条检测线路,用于实现对按键SW2i、SW3i、SW4i…SWni的检测。本发明不需较多的GPIO个数便可实现大量按键的实时扫描,能够极大节约系统资源,降低生产成本,同时还具有可靠性高、适用性强的优点。
文档编号H03M11/20GK102857232SQ20121034509
公开日2013年1月2日 申请日期2012年9月17日 优先权日2012年9月17日
发明者刘永波 申请人:青岛海信宽带多媒体技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1