利用单个IO实现多个按键功能的方法及装置与流程

文档序号:22621150发布日期:2020-10-23 19:26阅读:489来源:国知局
利用单个IO实现多个按键功能的方法及装置与流程

本发明涉及电子电路技术领域,特别是涉及一种利用单个io实现多个按键功能的方法和一种利用单个io实现多个按键功能的装置。



背景技术:

随着电子设备的快速发展,芯片所需检测的信号也越来越多。

以按键信号或者状态控制信号为例,常见的io接口扩展按键的方法主要有独立式和矩阵式,独立式按键需要芯片有足够多的io接口,分别对应连接一个按键或状态控制开关;矩阵式键盘由行和列线组成,按键位于行和列线的交点处,例如4*4矩阵,通过8个io接口控制16个按键,4路输出4路输入。

但是,对于独立式按键来说,一个io接口只能扩展一个按键,如果想扩展多个按键,则需要多个io接口,按键占用较多的io接口资源,导致在选择处理器时需要选择io接口较多的芯片,成本偏高;矩阵式按键通过多个io接口扩展多个按键,占用的io接口资源仍然较多。



技术实现要素:

鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种利用单个io实现多个按键功能的方法和相应的一种利用单个io实现多个按键功能的装置。

为了解决上述问题,本发明实施例公开了一种利用单个io实现多个按键功能的方法,所述io接口集成在按键检测电路中,所述按键检测电路还包括一个处理器和两个及以上按键,所述各按键的一端分别与包含不同阻值的电阻串联后与所述io接口连接,所述各按键的另一端均接地,所述各按键与所述io接口连接的一端串联一个电阻后与直流电源连接,所述各按键与所述io接口连接的一端串联一个电容后接地,包括:

检测所述io接口的电压,获取电压参数;

当所述电压参数达到第一标准时,将所述io接口配置为输出状态;当所述电压参数达到第二标准时,将所述io接口配置为输入状态,并开始计时;当所述电压参数再次达到所述第一标准时,停止计时,获取时间参数;

根据所述时间参数所处的数值区间,输出键值。

优选的,所述按键包括按键k1、按键k2、按键k3、按键k4、按键k5和按键k6;所述按键k1的一端与电阻r1串联后与所述io接口连接,所述按键k2的一端依次与电阻r2和所述电阻r1串联后与所述io接口连接,所述按键k3的一端依次与电阻r3、所述电阻r2和所述电阻r1串联后与所述io接口连接,所述按键k4的一端依次与电阻r4、所述电阻r3、所述电阻r2和所述电阻r1串联后与所述io接口连接,所述按键k5的一端依次与电阻r5、所述电阻r4、所述电阻r3、所述电阻r2和所述电阻r1串联后与所述io接口连接,所述按键k6的一端依次与电阻r6、所述电阻r5、所述电阻r4、所述电阻r3、所述电阻r2和所述电阻r1串联后与所述io接口连接。

优选的,所述根据所述时间参数所处的数值区间,输出键值包括:

判断所述时间参数是否在区间(key1,key2],若是,输出键值1;否则,

判断所述时间参数是否在区间(key2,key3],若是,输出键值2;否则,

判断所述时间参数是否在区间(key3,key4],若是,输出键值3;否则,

判断所述时间参数是否在区间(key4,key5],若是,输出键值4;否则,

判断所述时间参数是否在区间(key5,key6],若是,输出键值5;否则,输出键值6。

为了解决上述问题,本发明实施例还公开了一种利用单个io实现多个按键功能的装置,所述io接口集成在按键检测电路中,所述按键检测电路还包括一个处理器和两个及以上按键,所述各按键的一端分别与包含不同阻值的电阻串联后与所述io接口连接,所述各按键的另一端均接地,所述各按键与所述io接口连接的一端串联一个电阻后与直流电源连接,所述各按键与所述io接口连接的一端串联一个电容后接地,其特征在于,包括:

检测模块,用于检测所述io接口的电压,获取电压参数;

配置模块,用于当所述电压参数达到第一标准时,将所述io接口配置为输出状态;当所述电压参数达到第二标准时,将所述io接口配置为输入状态,并开始计时;当所述电压参数再次达到所述第一标准时,停止计时,获取时间参数;

处理模块,用于根据所述时间参数所处的数值区间,输出键值。

为了解决上述问题,本发明实施例还公开了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述所述的利用单个io实现多个按键功能的方法的步骤。

为了解决上述问题,本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述所述的利用单个io实现多个按键功能的方法的步骤。

本发明实施例包括以下优点:

本发明通过检测所述io接口的电压,获取电压参数,当所述电压参数达到第一标准时,将所述io接口配置为输出状态,当所述电压参数达到第二标准时,将所述io接口配置为输入状态,并开始计时,当所述电压参数再次达到所述第一标准时,停止计时,获取时间参数,根据所述时间参数所处的数值区间,输出键值,可以实现利用单个io接口拓展多个按键的功能,有效节约了io接口资源,使得在处理器选择上可以选择io接口数较少的芯片,从而降低成本,提高产品竞争力。

附图说明

图1是本发明的一种利用单个io实现多个按键功能的方法实施例一的步骤流程图;

图2a和图2b分别是单个按键按下时io接口的电压波形图和多个不同按键按下时io接口的电压波形图;

图3是本发明的一种按键检测电路的结构示意图;

图4是本发明的一种利用单个io实现多个按键功能的方法实施例二的步骤流程图;

图5是本发明的一种利用单个io实现多个按键功能的装置实施例的结构框图;

图6是本发明的一种实现利用单个io实现多个按键功能的方法的电子设备实施例的结构框图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

本发明实施例的核心构思之一在于,提供一种利用单个io实现多个按键功能的方法,通过检测所述io接口的电压,获取电压参数,当所述电压参数达到第一标准时,将所述io接口配置为输出状态,当所述电压参数达到第二标准时,将所述io接口配置为输入状态,并开始计时,当所述电压参数再次达到所述第一标准时,停止计时,获取时间参数,根据所述时间参数所处的数值区间,输出键值,可以实现利用单个io接口拓展多个按键的功能,有效节约了io接口资源,使得在处理器选择上可以选择io接口数较少的芯片,从而降低成本,提高产品竞争力。

参照图1,示出了本发明的一种利用单个io实现多个按键功能的方法实施例一的步骤流程图,所述io接口集成在按键检测电路中,所述按键检测电路还包括一个处理器和两个及以上按键,所述各按键的一端分别与包含不同阻值的电阻串联后与所述io接口连接,所述各按键的另一端均接地,所述各按键与所述io接口连接的一端串联一个电阻后与直流电源连接,所述各按键与所述io接口连接的一端串联一个电容后接地,具体可以包括:

s101、检测所述io接口的电压,获取电压参数;

s102、当所述电压参数达到第一标准时,将所述io接口配置为输出状态;当所述电压参数达到第二标准时,将所述io接口配置为输入状态,并开始计时;当所述电压参数再次达到所述第一标准时,停止计时,获取时间参数;

s103、根据所述时间参数所处的数值区间,输出键值。

如上述步骤s101、检测所述io接口的电压,获取电压参数;具体的,在对按键进行区分时,首先检测所述io接口的电压,获取电压参数。

如上述步骤s102、当所述电压参数达到第一标准时,将所述io接口配置为输出状态;当所述电压参数达到第二标准时,将所述io接口配置为输入状态,并开始计时;当所述电压参数再次达到所述第一标准时,停止计时,数获取时间参;具体的,当有按键按下,所述电压参数下降,当所述电压参数下降到所述第一标准时,将所述io接口配置为输出状态,此时所述io接口输出一个高电平脉冲,所述电容开始充电,随后,所述电压参数上升到所述第二标准,此时所述电容处于满电状态,将所述io接口配置为输入状态,并开始计时,由于所述io接口配置为输入状态,同时有按键按下,所以所述电容开始放电,当所述电压参数再次下降到所述第一标准时,停止计时,获取所述电压参数由所述第二标准降至所述第一标准的时间参数。

如上述步骤s103、根据所述时间参数所处的数值区间,输出键值。具体的,根据所述时间参数所处的数值区间,输出相应的键值,所述键值即代表步骤s102中的按键。

如图2a所示:

t1期间:有按键按下,所述电压参数下降;

t2期间:所述电压参数下降到所述第一标准,将所述io接口配置为输出状态;

t3期间:所述电容开始充电,所述电压参数上升;

t4期间:所述电压参数上升到所述第二标准,所述电容处于满电状态,将所述io接口配置为输入状态;

t5期间:仍有按键按下,所述电容开始放电,所述电压参数下降;

t6期间:所述电压参数下降到所述第一标准。

如图2b所示,不同的按键按下,t5期间的时间长度不一样,因此,本实施例可以获取t5期间的时间长度(t5),并根据t5所处的数值区间,输出相应的键值。

本实施例的方法通过检测所述io接口的电压,获取电压参数,当所述电压参数达到第一标准时,将所述io接口配置为输出状态,当所述电压参数达到第二标准时,将所述io接口配置为输入状态,并开始计时,当所述电压参数再次达到所述第一标准时,停止计时,获取时间参数,根据所述时间参数所处的数值区间,输出键值,可以实现利用单个io接口拓展多个按键的功能,有效节约了io接口资源,使得在处理器选择上可以选择io接口数较少的芯片,从而降低成本,提高产品竞争力。

参照图3,示出了本发明的一种按键检测电路的结构示意图,所述io接口集成在按键检测电路中,所述按键检测电路还包括一个处理器cpu和两个及以上按键,所述按键包括按键k1、按键k2、按键k3、按键k4、按键k5和按键k6;所述按键k1的一端与电阻r1串联后与所述io接口连接,所述按键k2的一端依次与电阻r2和所述电阻r1串联后与所述io接口连接,所述按键k3的一端依次与电阻r3、所述电阻r2和所述电阻r1串联后与所述io接口连接,所述按键k4的一端依次与电阻r4、所述电阻r3、所述电阻r2和所述电阻r1串联后与所述io接口连接,所述按键k5的一端依次与电阻r5、所述电阻r4、所述电阻r3、所述电阻r2和所述电阻r1串联后与所述io接口连接,所述按键k6的一端依次与电阻r6、所述电阻r5、所述电阻r4、所述电阻r3、所述电阻r2和所述电阻r1串联后与所述io接口连接,所述各按键的另一端均接地,所述各按键与所述io接口连接的一端串联一个电阻r7后与直流电源vcc连接,所述各按键与所述io接口连接的一端串联一个电容c后接地。

参照图4,示出了本发明的一种利用单个io实现多个按键功能的方法实施例二的步骤流程图,所述根据所述时间参数所处的数值区间,输出键值具体可以包括:

s401、判断所述时间参数是否在区间(key1,key2],若是,输出键值1;否则,执行步骤s402;

s402、判断所述时间参数是否在区间(key2,key3],若是,输出键值2;否则,执行步骤s403;

s403、判断所述时间参数是否在区间(key3,key4],若是,输出键值3;否则,执行步骤s404;

s404、判断所述时间参数是否在区间(key4,key5],若是,输出键值4;否则,执行步骤s405;

s405、判断所述时间参数是否在区间(key5,key6],若是,输出键值5;否则,输出键值6。

具体的,假设所述处理器的内阻为无穷大,所述电容的容量为100nf,所述电容通过10k放电时间为10ms,当检测到放电时间为10ms时,表示按键k1按下了,当检测到放电时间为20ms时,表示按键k2按下了,以此类推判断其他按键。但是,实际应用过程中存在误差的可能,放电时间不可能为一个定值,因此,可以通过时间区间来判断按键,例如:

判断所述时间参数是否在区间(5ms,15ms],若是,输出键值1;否则,

判断所述时间参数是否在区间(15ms,25ms],若是,输出键值2;否则,

判断所述时间参数是否在区间(25ms,35ms],若是,输出键值3;否则,

判断所述时间参数是否在区间(35ms,45ms],若是,输出键值4;否则,

判断所述时间参数是否在区间(45ms,55ms],若是,输出键值5;否则,输出键值6。

需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

参照图5,示出了本发明的一种利用单个io实现多个按键功能的装置实施例的结构框图,所述io接口集成在按键检测电路中,所述按键检测电路还包括一个处理器和两个及以上按键,所述各按键的一端分别与包含不同阻值的电阻串联后与所述io接口连接,所述各按键的另一端均接地,所述各按键与所述io接口连接的一端串联一个电阻后与直流电源连接,所述各按键与所述io接口连接的一端串联一个电容后接地,具体可以包括:

检测模块51,用于检测所述io接口的电压,获取电压参数;

配置模块52,用于当所述电压参数达到第一标准时,将所述io接口配置为输出状态;当所述电压参数达到第二标准时,将所述io接口配置为输入状态,并开始计时;当所述电压参数再次达到所述第一标准时,停止计时,获取时间参数;

处理模块53,用于根据所述时间参数所处的数值区间,输出键值。

具体的,所述检测模块51可以是电压表,用于检测所述io接口的电压,并记录电压参数;所述配置模块52和所述处理模块53可以集成在所述处理器内部;所述检测模块51、所述配置模块52和所述处理模块53之间电连接。

本实施例的装置通过所述检测模块51检测所述电压参数,通过所述配置模块52改变所述io接口状态并记录所述电压参数下降的时间,并通过所述处理模块53进行键值区分,可以实现利用单个io接口拓展多个按键的功能,有效节约了io接口资源,使得在处理器选择上可以选择io接口数较少的芯片,从而降低成本,提高产品竞争力。

参照图6,示出了本发明的一种实现利用单个io实现多个按键功能的方法的电子设备实施例的结构框图,具体可以包括:处理器61、存储器62及存储在所述存储器62上并能够在所述处理器61上运行的按键检测程序63,所述按键检测程序63被所述处理器61执行时实现上述所述的利用单个io实现多个按键功能的方法的步骤。

所述处理器61在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(centralprocessingunit,cpu)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器61是所述电子设备6的控制核心(controlunit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器62内的程序或者模块(例如所述按键检测程序63等),以及调用存储在所述存储器62内的数据,以执行所述电子设备6的各种功能和处理数据。

所述存储器62至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:sd或dx存储器等)、磁性存储器、磁盘、光盘等。所述存储器62在一些实施例中可以是所述电子设备6的内部存储单元,例如所述电子设备6的移动硬盘。所述存储器62在另一些实施例中也可以是所述电子设备6的外部存储设备,例所述电子设备6上配备的插接式移动硬盘、智能存储卡(smartmediacard,smc)、安全数字(securedigital,sd)卡、闪存卡(flashcard)等。优选的,所述存储器62还可以既包括所述电子设备6的内部存储单元也包括外部存储设备。所述存储器62不仅可以用于存储安装于所述电子设备6的应用软件及各类数据,例如所述按键检测程序63的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本发明所提供的一种利用单个io实现多个按键功能的方法和一种利用单个io实现多个按键功能的装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1