一种基于GPIO和ADC的多按键控制电路制造技术

技术编号:33646875 阅读:59 留言:0更新日期:2022-06-02 20:23
本实用新型专利技术涉及一种基于GPIO和ADC的多按键控制电路,该方案包括设有GPIO端口和ADC端口的处理器以及与该GPIO端口和ADC端口电连接的多个开关按键、分压电阻和保护二极管。当GPIO端口处于上拉输入中断模式时,ADC端口处于关闭模式;当其中一个开关按键按下时,GPIO端口中断响应,ADC端口打开并将GPIO端口切换位高阻输入模式,读取当前数据,通过ADC数据判断是哪路按键输入,处理完后关ADC并切换GPIO模式为上拉输入模式手动按钮一般在10ms左右,处理器换醒在3~5ms,所以即使在休眠状态下,同样能实中断读取功能。如此本申请可解决系统开销大以及在低功耗下功耗大不能按键唤醒的问题。问题。问题。

【技术实现步骤摘要】
一种基于GPIO和ADC的多按键控制电路


[0001]本技术涉及电路
,具体涉及一种基于GPIO和ADC的多按键控制电路。

技术介绍

[0002]市面上常用多路GPIO或专用键盘控制芯片实现多路按键的控制,也有用一个ADC实现多路控制的方案。但是目前单独用GPIO的方案需要多路GPIO,硬件资源要求高;纯用ADC实现,需实现轮询读取ADC数据,系统开销大,在系统休眠情况下,无实现读取。因此,现有技术存在系统开销大,尤其在低功耗情况下,系统功耗大且无法通过按键换唤醒的问题。
[0003]综上,亟待一种基于GPIO和ADC的多按键控制电路,能够解决上述问题。

技术实现思路

[0004]本技术的目的是针对现有技术中存在的上述问题,提供了一种基于GPIO和ADC的多按键控制电路。
[0005]为了实现上述技术目的,本技术采用了以下技术方案:一种基于GPIO和ADC的多按键控制电路包括设有GPIO端口和ADC端口的处理器以及与该GPIO端口和ADC端口电连接的多个开关按键、分压电阻和保护二极管;GPIO端口具有中断功能。
[0006]工作原理及有益效果:1、针对现有纯用ADC实现的方式,由于按键是触发事件且时间很短,ADC本身不能实现中断读取,如果不用中断方式读取,这就要求每隔1~3ms时间必须读ADC数据才能保证按键事件不丢失,所以即使没有按键事件,系统也要不停读取ADC,从而造成系统资源浪费,而本申请的电路当GPIO端口处于上拉输入中断模式时,ADC端口处于关闭模式;当其中一个开关按键按下时,GPIO端口中断响应,ADC端口打开并将GPIO端口切换位高阻输入模式,读取当前数据,通过ADC端口数据判断是哪路按键输入,处理完后关ADC端口并切换GPIO端口模式为上拉输入模式手动按钮一般在10ms左右,处理器换醒在3~5ms,所以即使在休眠状态下,同样能实中断读取功能,且无需多路GPIO,因此本申请解决了系统开销大以及在低功耗下功耗大不能按键唤醒的问题;
[0007]2、同时由于所有ADC功能模块功耗是mA级别的,如上所述,要保证系统按键事件不丢失,即使系统处于休眠态也不能关闭ADC功能,造成系统功耗大,如关闭ADC功能功耗能够降下来,但唤醒就不能通过按键唤醒。而本申请是用GPIO中断功能,在休眠模式下关闭ADC,当有按键事件,先触发GPIO中断,再打开ADC功能读取按键值,同时解决低功耗及唤醒问题。
[0008]进一步地,分压电阻至少包括第一分压电阻R0、第二分压电阻R1及第三分压电阻R2,保护二极管至少包括用于保护ADC端口的第一二极管D1和用于隔离ADC端口和GPIO端口的第二二极管D2,开关按键至少包括第一开关S1和第二开关S2。
[0009]进一步地,第一分压电阻R0的第一端接入电源电压,第二端分别连接ADC端口、第一二极管D1的第一端、第二二极管D2的第二端、第二分压电阻R1的第一端以及第三分压电阻R2的第一端,第一二极管D1的第二端接地,第二分压电阻R1的第二端连接第一开关S1的第一端,该第一开关S1的第二端接地,第三分压电阻R2的第二端连接第二开关S2的第一端,
该第二开关S2的第二端接地。
[0010]进一步地,第一开关S1为TVS管,第二开关S2为肖特基二极管。
[0011]进一步地,还包括第四分压电阻R3和第三开关S3、第五分压电阻R4和第四开关S4、第六分压电阻R5和第五开关S5以及第七分压电阻R6和第六开关S6,每个开关的第二端均接地,每个开关的第一端均与对应开关的第二端连接,第三分压电阻R2至第七分压电阻R6依次连接。
附图说明
[0012]图1是本技术的电路结构示意图。
具体实施方式
[0013]下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本技术保护的范围。
[0014]本领域技术人员应理解的是,在本技术的披露中,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系是基于附图所示的方位或位置关系,其仅是为了便于描述本技术和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此上述术语不能理解为对本技术的限制。
[0015]目前现有技术中常用多路GPIO或专用键盘控制芯片实现多路按键的控制,GPIO实现需多路GPIO,硬件资源要求高;而纯用ADC实现,需实现轮询读取ADC数据,系统开销大,在系统休眠情况下,无实现读取,主要是因为按键是触发事件且时间很短,ADC本身不能实现中断读取,如果不用中断方式读取,这就要求每隔1~3ms时间必须读ADC数据才能保证按键事件不丢失,所以即使没有按键事件,系统也要不停读取ADC,从而造成系统资源浪费,而且所有ADC功能模块功耗是mA级别的,如上所述,要保证系统按键事件不丢失,即使系统处于休眠态也不能关闭ADC功能,造成系统功耗大,如关闭ADC功能虽然功耗降下来但唤醒就不能通过按键唤醒。
[0016]为此提出了以下实施:
[0017]如图1所示,本基于GPIO和ADC的多按键控制电路包括设有GPIO端口和ADC端口的处理器以及与该GPIO端口和ADC端口电连接的多个开关按键、分压电阻和保护二极管。分压电阻包括第一分压电阻R0、第二分压电阻R1及第三分压电阻R2,二极管至少包括用于保护ADC端口的第一二极管D1和用于隔离ADC端口和GPIO端口的第二二极管D2,按键开关至少包括第一开关S1和第二开关S2。其中处理器可以是CPU或MCU。
[0018]在本实施例中,第一分压电阻R0的第一端接入电源电压VDD,第二端分别连接ADC端口、第一二极管D1的第一端、第二二极管D2的第二端、第二分压电阻R1的第一端以及第三分压电阻R2的第一端,第一二极管D1的第二端接地,第二分压电阻R1的第二端连接第一开关S1的第一端,该第一开关S1的第二端接地,第三分压电阻R2的第二端连接第二开关S2的第一端,该第二开关S2的第二端接地。还包括第四分压电阻R3和第三开关S3、第五分压电阻
R4和第四开关S4、第六分压电阻R5和第五开关S5以及第七分压电阻R6和第六开关S6,每个开关的第二端均接地,每个开关的第一端均与对应开关的第二端连接,第三分压电阻R2至第七分压电阻R6依次连接。
[0019]在本实施例中,本申请包括一个普通GPIO带中断功能,一路10位ADC端口,若干按钮、保护二级管及分压电阻,如分压电阻R0、R1、R2、R3、R4、R5、R6主要是分压作用,S1、S2、S3、S4、S5、S6是对应开关按键。当然还可以有R7、R8等,S7、S8等。
[0020]其中,正常情况下,GPIO工本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于GPIO和ADC的多按键控制电路,其特征在于,包括设有GPIO端口和ADC端口的处理器以及与该GPIO端口和ADC端口电连接的多个开关按键、分压电阻和保护二极管;所述GPIO端口具有中断功能。2.根据权利要求1所述的一种基于GPIO和ADC的多按键控制电路,其特征在于,所述分压电阻至少包括第一分压电阻R0、第二分压电阻R1及第三分压电阻R2,所述保护二极管至少包括用于保护ADC端口的第一二极管D1和用于隔离ADC端口和GPIO端口的第二二极管D2,所述开关按键至少包括第一开关S1和第二开关S2。3.根据权利要求2所述的一种基于GPIO和ADC的多按键控制电路,其特征在于,所述第一分压电阻R0的第一端接入电源电压,第二端分别连接所述ADC端口、所述第一二极管D1的第一端、所述第二二极管D2的第二端、所述第二分压电阻R1...

【专利技术属性】
技术研发人员:赵凯
申请(专利权)人:浙江启扬智能科技有限公司
类型:新型
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1