[发明专利]一种多线按键判断系统在审
申请号: | 201910019872.5 | 申请日: | 2019-01-09 |
公开(公告)号: | CN109698705A | 公开(公告)日: | 2019-04-30 |
发明(设计)人: | 沈怿皓;于涛;林茂 | 申请(专利权)人: | 上海中基国威电子股份有限公司 |
主分类号: | H03M11/20 | 分类号: | H03M11/20;H03M11/02 |
代理公司: | 北京挺立专利事务所(普通合伙) 11265 | 代理人: | 高福勇 |
地址: | 200000 上海市浦东新区中*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 按键 按键判断 多线 读取 矩阵 输出低电平 按键扫描 电平状态 扫描输入 扫描时 组合数 输出 | ||
本发明公开了一种多线按键判断系统,n个IO口与VSS口共同组成n(n+1)/2+C3(n+1)个按键扫描矩阵。此示例中,n=3,共可实现3*(3+1)/2+4=10个按键,其中C3(n+1)为从n+1根线中选取3根的组合数。IO1~IO4为扫描输入输出双向IO口。扫描时,先读取所有IO口的电平状态,以判断与VSS口相连的按键;再将IO1~IO4依次输出低电平,同时其他IO读取电平值,判断按键。
技术领域
本发明涉及一种多线按键判断系统,属于电子科学技术领域。
背景技术
现有技术矩阵式按键扫描方案1为:m+n个IO口组成m*n个按键扫描矩阵。此示例中,m=3,n=4,共可实现3*4=12个按键,其中IO1~IO3为扫描输出口,IO4~IO7为输入口。扫描时,IO1~IO3依次输出低电平,同时在IO4~IO7读取电平值,即可判断按键矩阵中哪个按键被按下。其缺点在于IO口利用率低,实现相同数量按键占用的IO口较多。如上例采用7个IO口实现了12个按键。
现有技术梯形式按键扫描方案2为:n个IO口与VSS口共同组成n(n+1)/2个按键扫描矩阵。此示例中,n=5,共可实现5*(5+1)/2=15个按键,其中IO1~IO5为扫描输入输出双向IO口。扫描时,先读取所有IO口的电平状态,以判断与VSS口相连的按键;再将IO1~IO5依次输出低电平,同时其他IO读取电平值,判断按键。相比方案1,方案2一定程度上提高了IO口的使用效率。如上例,采用5个IO即可实现15个按键。
为进一步提高IO口的利用率,本发明旨在现有技术的方案2基础上进行了改进。现有技术都是通过2根IO口线进行判键识别,本发明除了实现2根IO口线的判键外,增加了3根IO口线的判键。通过物理实践验证,采用现有制造工艺即很容易实现3根IO线的物理按键,并未过多增加物理实现的复杂度和成本。
发明内容
本发明的目的为进一步提高IO口的利用率,在现有技术的方案2基础上进行了改进。现有技术都是通过2根IO口线进行判键识别,本发明除了实现2根IO口线的判键外,增加了3根IO口线的判键。通过物理实践验证,采用现有制造工艺即很容易实现3根IO线的物理按键,并未过多增加物理实现的复杂度和成本。
本发明是这样实现的:
n个IO口可以组成n(n-1)/2+C3n个按键扫描矩阵,其中C3n为从n根线中选取3根的组合数。
以附图3为例,n个IO口与VSS口共同组成n(n+1)/2+C3(n+1)个按键扫描矩阵。此示例中,n=3,共可实现3*(3+1)/2+4=10个按键,其中C3(n+1)为从n+1根线中选取3根的组合数。IO1~IO4为扫描输入输出双向IO口。扫描时,先读取所有IO口的电平状态,以判断与VSS口相连的按键;再将IO1~IO4依次输出低电平,同时其他IO读取电平值,判断按键。
与现有方案二不同的是,现有方案二,在判键时读到哪根线为低电平,则可判定输出口线与读到低电平的口线的交叉处按键被按下,如果同时读到多根线为低电平,则可判定多个按键被同时按下。
本发明首先排除多个按键被同时按下的假设,因此当判断时读到2根口线同时为低电平,则可判定这2根口线与输出线组成的3线按键被按下。实际应用中,由于人手同时按下多个按键一般至少会有几十ms的时间差,系统即可通过算法简单区分3线按键和多按键。
本发明的优点:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海中基国威电子股份有限公司,未经上海中基国威电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910019872.5/2.html,转载请声明来源钻瓜专利网。