一种按键自动扩展结构及其方法与流程

文档序号:18474725发布日期:2019-08-20 20:51阅读:269来源:国知局
一种按键自动扩展结构及其方法与流程

本发明涉及按键领域,特别是指一种按键自动扩展结构及其方法。



背景技术:

现有的按键扩展处理模式如下:首先确定产品需要几个按键,以及每个按键的具体位置(即确定每个按键对应什么功能),之后编写相对应的程序。当发生按键数量更改或者按键位置调整时,需要重新编写程序,因此该模式只适用于产品稳定、改动很小的情况,一旦产品发生频繁变更,现有的按键扩展处理模式将导致大量的工作量,降低开发效率,而且更改程序的过程可能会引入新的bug,需要重新测试,导致费用的增加。



技术实现要素:

本发明的目的在于提供一种按键自动扩展结构及其方法,在加入按键扩展板时,不需要修改程序便能自动检测按键的数量和位置,从而降低按键扩展时的工作量和成本。

为了达成上述目的,本发明的解决方案是:

一种按键自动扩展结构,包括单片机、按键主板和至少一个按键扩展板;所述按键主板和按键扩展板上均设有并串转换芯片;按键主板还设有555定时器,555定时器分别连接于单片机clk/enable脚和按键主板的并串转换芯片;所述单片机的data脚连接于按键主板的并串转换芯片的q7引脚,按键主板的并串转换芯片的ds引脚连接于第一个按键扩展板的并串转换芯片的q7引脚,第二个按键扩展板的并串转换芯片的q7引脚连接于第一个按键扩展板的并串转换芯片的ds引脚,第三个按键扩展板的并串转换芯片的q7引脚连接于第二个按键扩展板的并串转换芯片的ds引脚,以此类推;每个并串转换芯片的最后一位引脚接地;所述单片机设有检测程序,检测程序用以扫描按键数量和按键位置并记录扫描结果。

一种按键自动扩展方法,包括以下步骤:

步骤1、单片机开机启动时,检测程序将单片机的clk/enable脚设置为输入,并设置中断使能;555定时器产生基准时钟,单片机在中断程序中接收data脚的信号;

步骤2、检测按键数量:设并串转换芯片可连接按键的引脚数为m,单片机接收的扫描帧中,以连续m+1个1表示一个扫描帧的结束帧,该扫描帧内去除结束帧外1的个数即为按键数量,将扫描的按键数量与扫描记录进行对比,存在异常时提醒用户手动调整;

步骤3、检测按键位置:根据单片机接收的信号中每个帧里0的位置,对比初始时该位置的值,如果原来是1,现在是0,就可判断该位置的按键被按下;

步骤4、将单片机的clk/enable脚设置为输出,并拉低,使555定时器产生的时钟被强制拉低无效,扫描结束;检测程序记录扫描的按键数量和按键位置的结果;

步骤5、用户根据异常情况进行手动调整。

所述步骤2中,接收到连续m+1个1的结束帧时,表示一帧扫描帧扫完,重新启动扫描,将连续多次的扫描结果对比,若扫描结果一致,则表示该帧的扫描结果有效。

采用上述结构以及方法后,本发明通过简单的电路便能能够实现按键的自动扩展,由于按键扩展板的成本低廉,通过按键扩展板级联的方式,实现模块化的按键扩展,同时,在增加按键扩展板时,不需要修改程序便能自动检测按键的数量和位置,从而降低按键扩展时的工作量和成本。

附图说明

图1为本发明按键自动扩展结构的示意图。

具体实施方式

为了进一步解释本发明的技术方案,下面通过具体实施例来对本发明进行详细阐述。

如图1所示,本发明为一种按键自动扩展结构,包括单片机、按键主板和至少一个按键扩展板。上述按键主板和按键扩展板上均设有并串转换芯片;按键主板还设有555定时器,555定时器分别连接于单片机clk/enable脚和按键主板的并串转换芯片。上述单片机的data脚连接于按键主板的并串转换芯片的q7引脚,按键主板的并串转换芯片的ds引脚连接于第一个按键扩展板的并串转换芯片的q7引脚,第二个按键扩展板的并串转换芯片的q7引脚连接于第一个按键扩展板的并串转换芯片的ds引脚,第三个按键扩展板的并串转换芯片的q7引脚连接于第二个按键扩展板的并串转换芯片的ds引脚,以此类推,实现按键主板与n个按键扩展板的串联,且所有并串转换芯片的最后一位引脚接地。上述单片机设有检测程序,检测程序用以扫描按键数量和按键位置并记录扫描结果。

一种按键自动扩展方法,应用上述的按键自动扩展结构,包括以下步骤:

步骤1、单片机开机启动时,检测程序将单片机的clk/enable脚设置为输入,并设置中断使能;555定时器产生基准时钟,单片机在中断程序中接收data脚的信号;

步骤2、检测按键数量:设并串转换芯片可连接按键的引脚数为m,单片机接收的扫描帧中,以连续m+1个1表示一个扫描帧的结束帧,该扫描帧内去除结束帧外1的个数即为按键数量,将扫描的按键数量与扫描记录进行对比,存在异常时提醒用户手动调整;由于每个并串转换芯片的最后一位引脚接地,则扫描帧中连续1的个数不会超过m,将结束帧设置为m+1个1,不会与扫描帧的正常帧混淆;

示例:如开机启动扫描,读到111100000111000000110000111111111..111,这个扫描帧中收到连续8个1的结束帧以前,有9个1,就表示整个串联的按键主板和n个按键扩展板上连接有9个按键。

上述步骤2中,接收到连续m+1个1的结束帧时,表示一帧扫描帧扫完,重新启动扫描,将连续多次的扫描结果对比,若扫描结果一致,则表示该帧的扫描结果有效,从而实现按键防抖动处理。

步骤3、检测按键位置:根据单片机接收的信号中每个帧里0的位置,对比初始时该位置的值,如果原来是1,现在是0,就可判断该位置的按键被按下;

步骤4、将单片机的clk/enable脚设置为输出,并拉低,使555定时器产生的时钟被强制拉低无效,扫描结束;检测程序记录扫描的按键数量和按键位置的结果;

步骤5、用户根据异常情况进行手动调整。

通过上述结构及方法,本发明通过简单的电路便能能够实现按键的自动扩展,由于按键扩展板的成本低廉,通过按键扩展板级联的方式,实现模块化的按键扩展,同时,在增加按键扩展板时,不需要修改程序便能自动检测按键的数量和位置,从而降低按键扩展时的工作量和成本。

上述实施例和图式并非限定本发明的产品形态和式样,任何所属技术领域的普通技术人员对其所做的适当变化或修饰,皆应视为不脱离本发明的专利范畴。



技术特征:

技术总结
本发明公开了一种按键自动扩展结构及其方法,按键自动扩展结构包括单片机、按键主板和至少一个按键扩展板,按键主板和多个按键扩展板的并串转换芯片依次串联;单片机通过555定时器连接按键主板的并串转换芯片,并设有检测程序。该方法通过检测一个扫描帧内去结束帧的1的数量和0的位置判断按键数量和按键位置,并与检测程序的扫描记录进行对比,在异常时提醒用户。本发明通过简单的电路便能能够实现按键的自动扩展,由于按键扩展板的成本低廉,通过按键扩展板级联的方式,实现模块化的按键扩展,同时,在增加按键扩展板时,不需要修改程序便能自动检测按键的数量和位置,从而降低按键扩展时的工作量和成本。

技术研发人员:刘成春
受保护的技术使用者:厦门拓宝科技有限公司
技术研发日:2019.05.10
技术公布日:2019.08.20
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1