一种用于手机的全键盘扩展电路及其按键扫描方法

文档序号:7574684阅读:322来源:国知局
专利名称:一种用于手机的全键盘扩展电路及其按键扫描方法
技术领域
本发明涉及移动终端设备领域,尤其涉及的是一种用于手机的全键盘扩展电路及 其按键扫描方法。
背景技术
为了满足手机全键盘的需求,通常需要手机平台芯片有足够多的按键接口。但是 对很多低端平台,按键接口数量有限,但是又常有设计全键盘的需求。因此可以通过I/O扩 展芯片来扩展按键接口,但是对于手机按键来说,I/O扩展芯片又有一些缺陷,使用普通电 路及扫描方式会影响手机的性能甚至安全,如产生漏电等造成安全隐患。因此,现有技术还有待于改进和发展。

发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种用于手机的 全键盘扩展电路及其按键扫描方法,通过电路设计和扫描方式设计,即实现了全键盘扩展, 又解决了 I/O扩展芯片的缺陷问题。本发明解决技术问题所采用的技术方案如下
一种用于手机的全键盘扩展电路,其中,包括与基带芯片连接的I/O扩展芯片,并将I/ 0扩展芯片的I/O 口的0组管脚连接多个键盘列输入线,将I/O 口的1组管脚连接多个键盘 行输出线,所述多个键盘列输入线与所述多个键盘行输出线共同组成键盘矩阵;
并将多个键盘列输入线通过上拉电阻连接至第一工作电源,以及将多个键盘行输出线 通过下拉电阻连接参考地。所述的全键盘扩展电路,其中,I/O扩展芯片的每一 I/O 口管脚内部电路包括第 一 MOS管和第二 MOS管;
第一 MOS管的S极连接第二工作电源、第一 MOS管的D极与第二 MOS管的D极连接,第
一MOS管的D极与第二 MOS管的D极连接的公共端连接至I/O扩展芯片的I/O 口管脚,第
二MOS管的S极连接参考地。所述的全键盘扩展电路,其中,所述I/O扩展芯片I/O 口的0组的7个管脚P0. 1 至P0. 7,分别与键盘矩阵的7条列输入线KCOLl至KC0L7 —一对应连接。所述的全键盘扩展电路,其中,所述I/O扩展芯片I/O 口的1组的7个管脚Pl. 1 至Pl. 7,分别与键盘矩阵的7条行输出线KROWl至KR0W7 —一对应连接。所述的全键盘扩展电路,其中,所述I/O扩展芯片I/O 口的管脚P0. 0、管脚Pl. 0, 分别通过第一上拉电阻、第二上拉电阻连接至第一工作电源。一种所述的全键盘扩展电路的按键扫描方法,其中,包括以下步骤
A、当有按键按下时,产生按键中断,基带芯片开始进行按键扫描;
B、将I/O扩展芯片连接多个键盘列输入线和多个键盘行输出线的管脚设置为输入口;
C、根据实际的键盘行输出线和键盘列输入线的数量,分别设置键盘行输出线的行数常量H和键盘列输入线的列数常量L ;同时设置行变量i和列变量j,并将行变量i和列变量 j的初始值赋为0 ;
D、从第i行开始扫描,并将该扫描的第i行设置为输出口,输出0;以及从第j列开始 逐个检查是否有被拉低为0的列,每检查一个,列变量j加1 ;
E、当检测到第j列被拉低为0时,确定当前扫描的第i行和第j列的按键被按下,并将 当前扫描的行数i和列数j作为该被按下按键的按键值发送给基带芯片。所述的全键盘扩展电路的按键扫描方法,其中,所述步骤E之后还包括步骤F、把 检测过的与键盘行输出线连接的I/O扩展芯片管脚重新设置为输入口,按键扫描结束。所述的全键盘扩展电路的按键扫描方法,其中,所述步骤E还包括步骤
E1、当当前扫描的列数j等于列数常量L,所有列扫描完,没有检测到被拉低为0的列 时,则将该扫描完的行i的管脚设置为输入口,将行变量i加1 ;
E2、并判断该行变量i加1是否小于等于所述行数常量H,当是时返回步骤D。所述的全键盘扩展电路的按键扫描方法,其中,所述步骤E还包括步骤E3、当判 断该行变量i加1大于所述行数常量H时,返回步骤F。所述的全键盘扩展电路的按键扫描方法,其中,所述步骤B中的将管脚设置为输 入口具体包括设置管脚内部电路的第一 MOS管和第二 MOS管为关闭,使管脚呈高阻状态。本发明所提供的用于手机的全键盘扩展电路及其按键扫描方法,由于采用了同时 通过设计外围电路,以及新的扫描方式,当检测到有按键按下时,需要进行扫描的行配置为 输出I/O 口,其余的行设置为输入I/O 口(当I/O 口设置为输入口的时候,I/O 口为高阻状 态,内部的两个MOS管关闭)。配置为输出I/O 口的行扫描完后立即重新设置为输入口。这 样当同一列上不同行的两个以上按键按下时,因为除了正在扫描的按键行是输出口,其余 的行是输入口,为高阻状态,不会形成电流回路,防止了漏电情况的出现,从而解决了出现 危险的隐患。


图1是本发明实施例的全键盘扩展电路结构示意图。图2是本发明实施例的键盘矩阵结构示意图。图3是一种I/O扩展芯片管脚内部电路原理图。图4是本发明实施例的I/O扩展芯片管脚内部电路原理图。图5是实施例的管脚与按键连接示意图。图6是本发明实施所述的全键盘扩展电路的按键扫描方法流程图。图7是本发明实施例的按键扫描方法局部流程图。
具体实施例方式本发明所提供的用于手机的一种全键盘扩展电路及其按键扫描方法,用于在芯片 键盘接口不足,又需要设计全键盘时,利用I/O扩展芯片扩展按键。同时通过设计外围电 路,以及新的扫描方式,解决常用I/O扩展芯片用于手机全键盘时的缺陷。为使本发明的目 的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。 应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供的一种用于手机的全键盘扩展电路,如图1所示,包括通过I2C 总线与基带芯片连接的I/O扩展芯片U1,并将I/O扩展芯片的I/O 口的0组管脚连接多个 键盘列输入线,将I/O 口的1组管脚连接多个键盘行输出线,所述多个键盘列输入线与所述 多个键盘行输出线共同组成键盘矩阵。如图1所示,I/O扩展芯片Ul的SCL (时钟线)管脚、SDA (双向数据线)管脚、INT 管脚分别通过I2C总线的I2C_SCL线(时钟线)、I2C_SDA线(双向数据线)及INT_0UT线与 基带芯片连接。其中,所述I/O扩展芯片I/O 口 0组的7个管脚P0. 1至P0. 7,分别与键盘 矩阵的7条列输入线KCOLl至KC0L7 —一对应连接。如图1所示的
P0. 1管脚与第一列输入线KCOLl对应连接; P0. 2管脚与第二列输入线KC0L2对应连接; P0. 3管脚与第三列输入线KC0L3对应连接; P0. 4管脚与第四列输入线KC0L4对应连接; P0. 5管脚与第五列输入线KC0L5对应连接; P0. 6管脚与第六列输入线KC0L6对应连接; P0. 7管脚与第七列输入线KC0L7对应连接;
进一步地,所述I/O扩展芯片I/O 口 1组的7个管脚Pl. 1至Pl. 7,分别与键盘矩阵的 7条行输出线KROWl至KR0W7——对应连接。如图1所示的 Pl. 1管脚与第一行输出线KROWl对应连接; Pl. 2管脚与第二行输出线KR0W2对应连接; Pl. 3管脚与第三行输出线KR0W3对应连接; Pl. 4管脚与第四行输出线KR0W4对应连接; Pl. 5管脚与第五行输出线KR0W5对应连接; Pl. 6管脚与第六行输出线KR0W6对应连接; Pl. 7管脚与第七行输出线KR0W7对应连接。通过本发明图1所示的电路可以扩展出49个按键,如图2所示,上述7条列输入线 KCOLl至KC0L7与上述7条行输出线KROWl至KR0W7共同组成本发明实施例的键盘矩阵。本实施例中,所述I/O扩展芯片I/O 口的管脚P0. 0、管脚P1.0管脚没有用到,如图 1所示,将管脚Po. 0、管脚Pl. 0分别通过第一上拉电阻R1、第二上拉电阻R2连接至第一工 作电源VCC。进一步地,本发明中将多个键盘列输入线通过上拉电阻连接至第一工作电源VCC, 以及将多个键盘行输出线通过下拉电阻连接参考地,如图1所示,将图1所示的第一列输入 线KCOLl至第七列输入线KC0L7的七条列输入线分别通过上拉电阻R3、R4、R5、R6、R7、R8、 R9连接至第一工作电源VCC。以及将图1所示的第一行输出线KROWl至第七行输出线KR0W7 的七条输出线分别通过下拉电阻R17、R16、R15、R14、R13、R12、Rll连接至参考地。本实施例中I/O扩展芯片Ul的I/O 口 0组作为键盘列输入,I/O 口 1组作为键盘 行输出。当没有按键按下时,列输入管脚被上拉电阻上拉为高电平,行输出管脚被下拉电阻 下拉为低电平。当有按键按下时,按键所在的列输入管脚被拉低。如图1和图2所示,当第 一行输出线KROWl与第一列输入KCOLl的按键被按下时,第一列输入KCOLl被第一行输出 线KROWl拉低。同时Ul内部产生中断,通知给手机基带芯片。手机基带芯片收到中断后,通过I2C总线接口控制Ul扫描按键阵列,识别出是哪个按键被按下。目前常用的I/O扩展芯片,其I/O 口管脚的结构有下面图3和图4所示两种图 3和图4是不同种类的I/O扩展芯片的内部结构图。图3和图4的粗黑线位置的是芯片的 I/O 口管脚,其他的地方都是芯片的内部电路。其中,图4所示的I/O 口管脚结构是本发明实施例所采用的,图4所示的I/O扩展 芯片的每一 I/O 口管脚内部电路包括第一 MOS管Ql和第二 MOS管Q2。第一 MOS管Ql的S极连接第二工作电源VDD、G极连接第一输出号端,第一 MOS管 的D极与第二 MOS管的D极连接,第一 MOS管的D极与第二 MOS管的D极连接的公共端连接 至I/O扩展芯片的I/O 口管脚;第二 MOS管的S极连接参考地、G极连接第二输出信号端。当I/O 口管脚作为输入脚时,Ql,Q2关闭,I/O 口管脚为高阻态,图3所示结构内部 有100K电阻上拉使芯片的I/O 口管脚为高电平;图4所示结构需要外加上拉或下拉电阻使 I/O 口管脚为高或低电平。当I/O 口管脚作为输出脚时,要输出高电平,Q2关闭,Ql打开,I/O 口管脚连到第 二工作电源VDD,输出高电平;当要输出低电平时,Ql关闭,Q2打开,I/O 口管脚连到地,输 出低电平。对于图3所示的I/O 口结构,当作为行时,配置为输出,这时就会产生一个VDD经 过100K电阻和Q2到地的通路,这样就会产生漏电,电流为VDD/100K,当行越多时,漏电就越 大。对电流消耗敏感的手机设计来说,这是不能接受的。因此,本发明实施例中采用具有图4所示I/O 口结构的I/O扩展芯片来扩展全键
ο图1所示的键盘扩展电路,没有用到的I/O 口管脚P0. 0,Pl. 0,配置为输入脚,为 避免I/O 口出现不确定状态,产生漏电,这些没用到的I/O 口管脚P0. 0、P1.0分别通过外 加的第一上拉电阻R1、第二上拉电阻R2,使状态明确。因为,配置为输入脚时,芯片内部的 Q1,Q2是关闭的。这个时候芯片管脚的状态是不确定的,有可能处在高低电平之间,容易使 芯片产生漏电,这时必须使芯片的管脚处在高电平或者是低电平状态。因此没有用到的I/ 0 口,配置为输入口,同时外加上拉电阻Rl和R2,使没有用到的I/O 口处在高电平状态。选用具有图4所示I/O 口管脚结构的I/O扩展芯片来扩展全键盘,虽然可以避免 漏电,但是如果用常规的扫描算法扫描,则会有严重的隐患。当有按键被按下时,常规的扫 描算法是从中断可以知道是哪一列的按键被按下,然后从0行开始,逐行设为低电平,其余 行设为高电平,当某一行设为低时,列被拉低,则可判断出是哪一行与哪一列的按键被按 下。但是如用图1所示电路扩展的全键盘,当同一列上不同行的两个按键被同时按下 时,如果用常规扫描方式,则扫描到其中一个被按下的按键时,该按键的行是通过Q2连到 地上的,另外一个按键的行信号是置高,被拉到VDD的,因为在同一列上,两个按键是短路 的,电源VDD就被短路到地上,I/O 口上流过大电流,如图5所示。这样就会出现I/O 口被 烧坏,电源被短路的危险,产生严重的安全问题。如图1和图2所示,当处在第一列输入线KC0L1,第一行输出线KROWl和第二行输 出线KR0W2上的两个按键同时按下时,当扫描管脚Pl. 2时,I/O扩展芯片的I/O 口管脚Pl. 1 管脚的Ql打开,Q2关闭,被置成高电平,如图5所示,Pl. 2管脚的Ql关闭,Q2打开,被置成低电平。这样给芯片供电的第二工作电源VDD就通过P 1.1管脚的Ql和Pl. 2管脚的Q2 被短路到地上,这样电源VDD就有被烧掉的危险。同时因为VDD被短路,I/O扩展芯片的管 脚Pl. 1和Pl. 2上有大电流通过,芯片管脚也存在被烧坏的危险。为了解决这个问题,针对I/O 口的特点,本发明实施例还提供了一种上述全键盘 扩展电路的按键扫描方法,解决该问题。当I/O 口设置为输入口的时候,I/O 口为高阻状态, 内部的两个MOS管关闭。以图5为例,当KR0W2扫描时,KROWl设置为输入口,这样,管脚Pl. 1的Ql、Q2就 是关闭的。这样当两个按键同时按下时,VDD不会通过管脚Pl. 1的Ql短路到管脚Pl. 2的 地VSS上,就形成不了电流回路,解决了短路的问题。因此新的扫描方式设为当检测到有按 键按下时,需要进行扫描的行配置为输出I/O 口,其余的行设置为输入I/O 口。配置为输出 I/O 口的行扫描完后立即重新设置为输入口。这样当同一列上不同行的两个以上按键按下 时,因为除了正在扫描的按键行是输出口,其余的行是输入口,为高阻状态,形成不了电流 回路,从而解决了出现危险的隐患。具体地,如图6所示,本发明实施例的一种如上述全键盘扩展电路的按键扫描方 法,包括以下步骤
步骤S610、当有按键按下时,产生按键中断信号,基带芯片开始进行按键扫描。如图1和图2所示,当有按键按下时,产生按键中断信号通过INT_0UT通知基带芯 片开始进行扫描。步骤S620、将I/O扩展芯片连接多个键盘列输入线和多个键盘行输出线的管脚设 置为输入口 ;其中,将管脚设置为输入口具体包括设置管脚内部电路的第一 MOS管Ql和 第二 MOS管Q2为关闭,使管脚呈高阻状态,如图4和图5所示。步骤S630、根据实际的键盘行输出线和键盘列输入线的数量,分别设置键盘行输 出线的行数常量H和键盘列输入线的列数常量L ;如图1所示,H= 7,L=7 ;同时设置行变量 i和列变量j,并将行变量i和列变量j的初始值赋为0,如图7所示的S31、初始设置变量
i=0, j=0o步骤S640、从第0行(i行)开始扫描,并将该扫描的第i行设置为输出口,输出0, 如图7所示的S41 ;以及从第0列(j列)开始逐个检查是否有被拉低为0的列,每检查一个, 列变量j加1。步骤S650、当检测到第j列被拉低为0时,确定当前扫描的第i行和第j列的按键 被按下,并将当前扫描的行数i和列数j作为该被按下按键的按键值发送给基带芯片。如图7所示的S42、判断当前检测到第j列是否等于0,当是时进入S650,当否时进 入 S43 ;
543、判断当前扫描的第j列的变量j是否小于L列数常量L?当是时进入S45,当否时 进入S44 ;
544、判断当前扫描的第i行的变量i是否小于行数常量H,是的话进入S46,否则进入 S660。S45、列变量j加1,返回S42,以进行下一列扫描。S46,设置当前扫描的第i行的管脚为输入口,并进入S47。S47、行变量i加1,返回S41,以进行下一行扫描。
另外,也可以采用当当前扫描的列数j等于列数常量L所有列扫描完,没有检测到 被拉低为0的列时,则将该扫描完的行i的管脚设置为输入口,将行变量i加1 ;并判断该 行变量i加1是否小于等于所述行数常量H,当是时返回步骤S640。当判断该行变量i加 1大于所述行数常量H时,进入步骤S660。步骤S660、把检测过的与键盘行输出线连接的I/O扩展芯片管脚重新设置为输入 口,按键扫描结束。综上所述,本发明所提供的用于手机的全键盘扩展电路及其按键扫描方法,由于 采用了同时通过设计外围电路,以及新的扫描方式,当检测到有按键按下时,需要进行扫描 的行配置为输出I/O 口,其余的行设置为输入I/O 口(当I/O 口设置为输入口的时候,I/O 口 为高阻状态,内部的两个MOS管关闭)。配置为输出I/O 口的行扫描完后立即重新设置为输 入口。这样当同一列上不同行的两个以上按键按下时,因为除了正在扫描的按键行是输出 口,其余的行是输入口,为高阻状态,不会形成电流回路,防止了漏电情况的出现,从而解决 了出现危险的隐患。应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可 以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保 护范围。
权利要求
1.一种用于手机的全键盘扩展电路,其特征在于,包括与基带芯片连接的I/O扩展芯 片,并将I/O扩展芯片的I/O 口的0组管脚连接多个键盘列输入线,将I/O 口的1组管脚 连接多个键盘行输出线,所述多个键盘列输入线与所述多个键盘行输出线共同组成键盘矩 阵;并将多个键盘列输入线通过上拉电阻连接至第一工作电源,以及将多个键盘行输出线 通过下拉电阻连接参考地。
2.根据权利要求1所述的全键盘扩展电路,其特征在于,I/O扩展芯片的每一I/O 口 管脚内部电路包括第一 MOS管和第二 MOS管;第一 MOS管的S极连接第二工作电源、第一 MOS管的D极与第二 MOS管的D极连接,第一MOS管的D极与第二 MOS管的D极连接的公共端连接至I/O扩展芯片的I/O 口管脚,第二MOS管的S极连接参考地。
3.根据权利要求1所述的全键盘扩展电路,其特征在于,所述I/O扩展芯片I/O口的 0组的7个管脚P0. 1至P0. 7,分别与键盘矩阵的7条列输入线KCOLl至KC0L7 —一对应连 接。
4.根据权利要求3所述的全键盘扩展电路,其特征在于,所述I/O扩展芯片I/O口的 1组的7个管脚Pl. 1至Pl. 7,分别与键盘矩阵的7条行输出线KROWl至KR0W7 —一对应连接。
5.根据权利要求4所述的全键盘扩展电路,其特征在于,所述I/O扩展芯片I/O口的管 脚P0. 0、管脚Pl. 0,分别通过第一上拉电阻、第二上拉电阻连接至第一工作电源。
6.一种如权利要求1所述的全键盘扩展电路的按键扫描方法,其特征在于,包括以下 步骤A、当有按键按下时,产生按键中断,基带芯片开始进行按键扫描;B、将I/O扩展芯片连接多个键盘列输入线和多个键盘行输出线的管脚设置为输入口;C、根据实际的键盘行输出线和键盘列输入线的数量,分别设置键盘行输出线的行数常 量H和键盘列输入线的列数常量L ;同时设置行变量i和列变量j,并将行变量i和列变量 j的初始值赋为0 ;D、从第i行开始扫描,并将该扫描的第i行设置为输出口,输出0;以及从第j列开始 逐个检查是否有被拉低为0的列,每检查一个,列变量j加1 ;E、当检测到第j列被拉低为0时,确定当前扫描的第i行和第j列的按键被按下,并将 当前扫描的行数i和列数j作为该被按下按键的按键值发送给基带芯片。
7.根据权利要求6所述的全键盘扩展电路的按键扫描方法,其特征在于,所述步骤E 之后还包括步骤F、把检测过的与键盘行输出线连接的I/O扩展芯片管脚重新设置为输入 口,按键扫描结束。
8.根据权利要求7所述的全键盘扩展电路的按键扫描方法,其特征在于,所述步骤E还 包括步骤E1、当当前扫描的列数j等于列数常量L,所有列扫描完,没有检测到被拉低为0的列 时,则将该扫描完的行i的管脚设置为输入口,将行变量i加1 ;E2、并判断该行变量i加1是否小于等于所述行数常量H,当是时返回步骤D。
9.根据权利要求8所述的全键盘扩展电路的按键扫描方法,其特征在于,所述步骤E还包括步骤E3、当判断该行变量i加1大于所述行数常量H时,返回步骤F。
10.根据权利要求6所述的全键盘扩展电路的按键扫描方法,其特征在于,所述步骤B 中的将管脚设置为输入口具体包括设置管脚内部电路的第一MOS管和第二MOS管为关闭, 使管脚呈高阻状态。
全文摘要
本发明公开了一种用于手机的全键盘扩展电路及其按键扫描方法,将I/O扩展芯片的I/O口0组管脚连接多个键盘列输入线,将I/O口1组管脚连接多个键盘行输出线,所述多个键盘列输入线与所述多个键盘行输出线共同组成键盘矩阵。本发明由于采用了当检测到有按键按下时,需要进行扫描的行配置为输出I/O口,其余的行设置为输入I/O口(当I/O口设置为输入口的时候,I/O口为高阻状态,内部的两个MOS管关闭)。配置为输出I/O口的行扫描完后立即重新设置为输入口。当同一列上不同行的两个以上按键按下时,因为除了正在扫描的按键行是输出口,其余的行是输入口,为高阻状态,防止了漏电情况的出现,从而解决了出现危险的隐患。
文档编号H04M1/23GK102088502SQ20111002880
公开日2011年6月8日 申请日期2011年1月26日 优先权日2011年1月26日
发明者林子华 申请人:惠州Tcl移动通信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1