一种按键响应异常修复方法、终端及存储介质与流程

    专利2022-07-07  83


    本发明涉及终端应用
    技术领域
    ,尤其涉及的是一种按键响应异常修复方法、终端及存储介质。
    背景技术
    :市场上大多数产品都会使用实体按键作为功能按键,不同的实体按键对应不同的电压值,产品的系统软件则通过adc模块读取键值电压,判断执行键值电压对应的功能,以电视为例:多数电视的机身上保留了音量调节按键和频道切换按键,在电视开机之后,系统软件获取键值电压,并将该键值电压与电视内存中的键值功能表进行比对,以实现与键值电压对应的功能。在电视硬件产生损伤之后,按键脚电压异常跌落到某一功能的电压执行范围内,系统软件则会一直执行这个功能,没有一个异常的纠正机制,例如,一直增加或者减小音量,十分影响用户的正常使用;然而,有些损伤仅仅是小范围的损伤,整机产品的其他部分依然能够正常工作,如果因某个功能的缺失而持续影响整个系统的运行,将会大大减小整机产品的使用寿命。因此,现有技术还有待改进和发展。技术实现要素:本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种按键响应异常修复方法、终端及存储介质,通过修复算法规避异常按键脚电压,避免影响其他按键及功能的使用。本发明解决问题所采用的技术方案如下:第一方面,本发明实施例提供一种按键响应异常修复方法,其中,所述方法包括:获取预设检测时长内预设按键的多个脚电压值;对所述多个脚电压值进行均值处理,得到平均脚电压值;获取预设校准电压值,并将所述平均脚电压值与所述预设校准电压值进行对比;根据对比结果响应所述预设按键对应的按键指令,或根据对比结果屏蔽所述预设按键对应的按键指令。在一种实施方式中,所述获取预设检测时长内预设按键的多个脚电压值,之前还包括:当检测到系统运行时,启动模拟数字转换器和定时器;根据初始化指令分别对所述模拟数字转换器和所述定时器进行初始化处理;通过所述模拟数字转换器设置所述预设校准电压值,以及通过所述定时器设置所述预设检测时长。在一种实施方式中,所述获取预设检测时长内预设按键的多个脚电压值,具体包括:通过所述模拟数字转换器读取所述预设检测时长内预设按键的多个脚电压值;根据预设存储路径将所读取的按键脚电压值存入变量数组中。在一种实施方式中,所述对所述多个脚电压值进行均值处理,得到平均脚电压值,具体包括:将所述变量数组中的多个脚电压值代入求和算法中,得到所述多个脚电压值的总电压值;对所述总电压值进行均值处理,得到所述预设按键在单位时间内的平均脚电压值。在一种实施方式中,所述获取预设校准电压值,并将所述平均脚电压值与所述预设校准电压值进行对比,还包括:获取所述预设校准电压值,将所述平均脚电压值与所述预设校准电压值进行对比;判断所述平均脚电压值是否大于或等于所述预设校准电压值;当所述平均脚电压值大于或等于所述预设校准电压值时,判定所述预设按键的脚电压值为正常电压值;当所述平均脚电压值小于所述预设校准电压值时,判定所述预设按键的脚电压值为异常电压值。在一种实施方式中,当所述预设按键的脚电压值为正常电压值时,所述根据对比结果响应所述预设按键对应的按键指令,具体包括:当所述预设按键的脚电压值为正常电压值时,根据所述平均脚电压值查找按键电压映射表;根据所述按键电压映射表获取与所述平均脚电压值对应的按键指令;根据所述按键指令控制对应的电压模块,以执行对应的按键功能。在一种实施方式中,当所述预设按键的脚电压值为异常电压值时,所述根据对比结果屏蔽所述预设按键对应的按键指令,具体包括:当所述预设按键的脚电压值为异常电压值时,停止执行当前运行的工作线程,并根据预设运行指令执行异常纠正线程;获取所述变量数组中的最小脚电压值,并根据所述最小脚电压值查找按键电压映射表;根据所述按键电压映射表获取与所述最小脚电压值对应的按键指令;通过所述异常纠正线程屏蔽所述按键指令,以屏蔽对应的按键功能。在一种实施方式中,所述根据对比结果响应所述预设按键对应的按键指令,或根据对比结果屏蔽所述预设按键对应的按键指令,之后还包括:持续监测所述预设按键在预设时长内的脚电压状态;当监测到所述预设按键在预设时长内的脚电压均处于低电压状态时,获取所述预设时长内的最大脚电压值;根据所述预设按键的最大脚电压值屏蔽对应的按键功能。第二方面,本发明还提供一种终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于执行如上所述的按键响应异常修复方法。第三方面,本发明还提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上所述的按键响应异常修复方法。本发明的有益效果:本发明通过对异常电压导致的异常功能进行规避处理,可以在产品正常开机前进行检测和规避,而且,通过在产品使用过程中循环进行检测和规避异常,大大提高了产品的使用寿命,对于轻微的损伤故障可免除售后的维修处理,节省了售后的人力和资源成本。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例提供的按键响应异常修复方法的流程示意图。图2是本发明实施例提供的按键响应异常修复方法中异常检测算法流程示意图(其一)。图3是本发明实施例提供的按键响应异常修复方法中异常检测算法流程示意图(其二)。图4是本发明实施例提供的终端的内部结构原理框图。具体实施方式为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。需要说明,若本发明实施例中有涉及方向性指示(诸如上、下、左、右、前、后……),则该方向性指示仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。目前,在终端设备中,例如:电视机,已有的系统软件,没有异常状态的规避算法,仅仅是根据检测到的电压执行相应的操作,一旦此电压出现异常,系统软件便无法识别此异常是基于用户操作而导致,还是基于产品自身异常而导致;因此,在这样的情况下,系统软件便会一直执行某一功能,从而导致电视机的功能异常,用户也就无法继续使用,只能选择维修或者退货。为了解决现有技术的问题,本发明提供一种按键响应异常修复方法,在发明实施例中,通过对异常电压导致的异常功能进行规避处理,可以在产品正常开机前进行检测和规避,而且,通过在产品使用过程中循环进行检测和规避异常,大大提高了产品的使用寿命,对于轻微的损伤故障可免除售后的维修处理,节省了售后的人力和资源成本。举例来说,在电视机上,存在各种功能的按键,例如:音量加减、频道加减以及开关机等按键,每个按键功能都是通过soc实现的,即通过soc检测不同电压,以此实现每个电压对应的功能,其中,电压与功能的对应关系如下:电压2.8v2.3v1.7v0.8v0v功能频道 频道-音量 音量-开关机对于干燥地区而言,在用户的实际使用过程中,存在较多的静电和一些异常的外部损害操作,导致芯片内部mos管失效,从而造成按键检测脚的电压低于常态3.2v,例如:检测到的电压为2.8v;而恰好此电压对应的功能为频道 功能;因此,在tv通道下,电视机就会不停地切换频道,导致用户不能正常使用。而在本发明当中,在开机阶段对按键电压进行一系列的读取和判断,以此来确认当前电视机的按键状态是否出现异常,若确认当前按键的脚电压处于异常状态,则关闭异常电压对应的按键功能,例如:检测到按键脚电压长期处于2.8v,则屏蔽频道 功能,并在屏幕上显示“屏蔽频道 按键功能,请使用遥控器”;然后,执行其他正常的开机流程;待开机之后,系统进一步判断电视机的按键脚电压是否处于正常状态,同时判断当前的低电压是用户操作导致还是电视机本身异常导致;若确认为电视机本身异常导致,则通过修复算法规避异常按键脚电压,避免影响其他按键及功能的使用。示例性方法如图1中所示,本发明实施例提供一种按键响应异常修复方法,所述按键响应异常修复方法可以应用于终端,其中,所述终端包括但不限于:电视机、机顶盒以及蓝牙音箱等电子设备;以下以电视机为例,对本发明实施例进行说明。如图1中所示,在本发明实施例中,所述方法包括如下步骤:步骤s100、获取预设检测时长内预设按键的多个脚电压值。在本实施例中,在检测到电视机的系统运行时,所述电视机会启动模拟数字转换器(analogtodigitalconverter,即adc模块)和定时器;同时,所述电视机根据初始化指令分别对所述模拟数字转换器和所述定时器进行初始化处理;通过进行初始化处理,使得所述模拟数字转换器可以定时读取按键脚的电压值,从而根据读取的按键脚的电压值确定当前按键是否处于异常状态。而在初始化处理之后,可通过所述模拟数字转换器设置所述预设校准电压值,以及通过所述定时器设置所述预设检测时长;其中,所述预设校准电压值可以设置为3.3v,所述预设检测时长可以设置为8s;即在所述电视机每次开机运行bootrunning阶段,系统会加入adc模块和定时器,并初始化adc模块和定时器;在初始化之后,设置校准电压值的默认值为3.3v,定时器的定时时间设置为8s。具体地,所述步骤s100之前包括:步骤s001、当检测到系统运行时,启动模拟数字转换器和定时器;步骤s002、根据初始化指令分别对所述模拟数字转换器和所述定时器进行初始化处理;步骤s003、通过所述模拟数字转换器设置所述预设校准电压值,以及通过所述定时器设置所述预设检测时长。在本实施例中,在设置所述预设校准电压值和所述预设检测时长后,电视机则通过所述模拟数字转换器读取所述预设检测时长内预设按键的多个脚电压值,然后根据预设存储路径将所读取的按键脚电压值存入变量数组中;其中,所述预设按键可以是所述电视机的机身上的某一个按键,例如:音量 按键。具体地,在adc模块读取按键的脚电压之前,所述电视机的系统会设定一个校准电压值,例如:reference_voltage=3.3v,待所述电视机设定完成之后,所述电视机的系统会使用adc模块读取按键的脚电压值,并且,在设定的8s内,所述电视机每隔一秒读取一次脚电压值,得到8个key_voltage,并将读到的脚电压值存入一个8位数组中,即将所读取的按键脚电压值存入变量数组中。具体地,所述步骤s100包括:步骤s101、通过所述模拟数字转换器读取所述预设检测时长内预设按键的多个脚电压值;步骤s102、根据预设存储路径将所读取的按键脚电压值存入变量数组中。通过adc模块进行循环检测,并统计8s内的按键脚电压值,若8s内adc模块检测到的按键脚电压值小于默认的校准电压值3.3v,所述电视机的系统则停止执行正常的工作线程,转而执行异常纠正线程。如图1中所示,在本发明进一步的实施例中,所述按键响应异常修复方法包括如下步骤:步骤s200、对所述多个脚电压值进行均值处理,得到平均脚电压值。在本实施例中,在检测得到多个脚电压值之后,所述电视机则将所述变量数组中的多个脚电压值代入求和算法中,以得到所述多个脚电压值的总电压值;在得到所述总电压值后,对所述总电压值进行均值处理,得到所述预设按键在单位时间内的平均脚电压值。具体地,在得到8个key_voltage之后,对这8个key_voltage求和得到key_voltage_total,即得到变量数组中这8个脚电压值(即8个变量)之和;之后,再通过平均值算法计算这8个key_voltage的平均脚电压值,即key_voltage_ave=key_voltage_total/8,可得到所述预设按键在单位时间内的平均脚电压值。具体地,所述步骤s200中,包括以下步骤:步骤s201、将所述变量数组中的多个脚电压值代入求和算法中,得到所述多个脚电压值的总电压值;步骤s202、对所述总电压值进行均值处理,得到所述预设按键在单位时间内的平均脚电压值。通过对检测到的脚电压值进行均值计算,得到8s内的按键脚电压值的平均值,可将计算得到的平均值与检测前设置的校准电压值进行对比,从而确定所述电视机的按键是否处于正常状态。如图1中所示,在本发明进一步的实施例中,所述按键响应异常修复方法包括如下步骤:步骤s300、获取预设校准电压值,并将所述平均脚电压值与所述预设校准电压值进行对比。在本实施例中,在得到所述平均脚电压值之后,所述电视机则获取所述预设校准电压值,将所述平均脚电压值与所述预设校准电压值进行对比;在进行对比时,所述电视机则判断所述平均脚电压值是否大于或等于所述预设校准电压值,若所述平均脚电压值大于或等于所述预设校准电压值,则判定所述预设按键的脚电压值为正常电压值,若所述平均脚电压值小于所述预设校准电压值,则判定所述预设按键的脚电压值为异常电压值。具体地,在得到平均值key_voltage_ave后,电视机则判断key_voltage_ave是否大于或等于reference_voltage;如果是,所述电视机则判定按键的脚电压值为正常电压值,此时,所述电视机的系统正常响应不同的按键功能,即根据不同电压响应不同的按键功能;如果key_voltage_ave小于reference_voltage,所述电视机则判定按键的脚电压值为异常电压值,此时,所述电视机的系统则会执行下一步判断,以确定是哪个按键的功能会受到影响,从而对相应的按键功能进行屏蔽。具体地,所述步骤s300中,包括以下步骤:步骤s301、获取所述预设校准电压值,将所述平均脚电压值与所述预设校准电压值进行对比;步骤s302、判断所述平均脚电压值是否大于或等于所述预设校准电压值;步骤s303、当所述平均脚电压值大于或等于所述预设校准电压值时,判定所述预设按键的脚电压值为正常电压值;步骤s304、当所述平均脚电压值小于所述预设校准电压值时,判定所述预设按键的脚电压值为异常电压值。在判断adc模块读取的脚电压值为异常电压后,电视机系统会将采集到的电压值存入rom的一个变量中;并且,将该电压值与检测之前设定的功能电压进行逐一比较,以判断出该异常电压是否会引发相应功能的误触发,即该异常电压是否影响其他按键的正常使用,例如:检测到的脚电压为3.0v,此时,电视机的系统判断到,此异常电压与“音量 ”功能的电压重合,此时电视机就会暂时屏蔽“音量 ”按键功能,从而避免这个异常电压导致“音量 ”功能一直响应,造成声音特别大,影响正常使用。如图1中所示,在本发明进一步的实施例中,所述按键响应异常修复方法包括如下步骤:步骤s400、根据对比结果响应所述预设按键对应的按键指令,或根据对比结果屏蔽所述预设按键对应的按键指令。在本实施例中,当所述预设按键的脚电压值为正常电压值时,所述电视机则会根据所述平均脚电压值查找按键电压映射表,并根据所述按键电压映射表获取与所述平均脚电压值对应的按键指令,以及根据所述按键指令控制对应的电压模块,以执行对应的按键功能。例如,所述电视机检测到脚电压值为3.5v,此时所述电视机系统判定该电压值为正常电压值,通过查找按键电压映射表,确定该电压值所对应的按键功能为“返回”功能;此时根据该按键的按键指令控制对应的电压模块,以执行对应的按键功能。具体地,当所述预设按键的脚电压值为正常电压值时,所述步骤s400包括以下步骤:步骤s411、当所述预设按键的脚电压值为正常电压值时,根据所述平均脚电压值查找按键电压映射表;步骤s412、根据所述按键电压映射表获取与所述平均脚电压值对应的按键指令;步骤s413、根据所述按键指令控制对应的电压模块,以执行对应的按键功能。在本实施例中,当所述预设按键的脚电压值为异常电压值时,还需要进一步判断出该异常电压值处于哪个电压范围内,以此确定该异常电压值会影响到哪个按键功能;在确定异常电压所在的范围之后,所述电视机则停止执行当前运行的工作线程,并根据预设运行指令执行异常纠正线程;同时,获取所述变量数组中的最小脚电压值,并根据所述最小脚电压值查找按键电压映射表;根据所述按键电压映射表获取与所述最小脚电压值对应的按键指令;通过所述异常纠正线程屏蔽所述按键指令,以屏蔽对应的按键功能。具体地,在进一步判断时,需要在变量数组中的8个key_voltage中取出最小的一个key_voltage,然后将该key_voltage赋值给一个变量key_voltage_mini;并在赋值之后,判断key_voltage_mini落在哪个电压区间内:1、当3.3>key_voltage_mini≥2.6时,则暂时屏蔽“频道 ”功能,并且,在所述电视机的屏幕上以小字的方式显示“屏蔽按键板频道 功能,请使用遥控器相同功能”;2、当2.6>key_voltage_mini≥2.1时,则暂时屏蔽“频道-”功能,并且,在所述电视机的屏幕上以小字的方式显示“屏蔽按键板频道-功能,请使用遥控器相同功能”;3、当2.1>key_voltage_mini≥1.5时,则暂时屏蔽“音量 ”功能,并且,在所述电视机的屏幕上以小字的方式显示“屏蔽按键板音量 功能,请使用遥控器相同功能”;4、当1.5>key_voltage_mini≥0.8时,则暂时屏蔽“音量-”功能,并且,在所述电视机的屏幕上以小字的方式显示“屏蔽按键板音量-功能,请使用遥控器相同功能”。具体地,当所述预设按键的脚电压值为异常电压值时,所述步骤s400包括以下步骤:步骤s421、当所述预设按键的脚电压值为异常电压值时,停止执行当前运行的工作线程,并根据预设运行指令执行异常纠正线程;步骤s422、获取所述变量数组中的最小脚电压值,并根据所述最小脚电压值查找按键电压映射表;步骤s423、根据所述按键电压映射表获取与所述最小脚电压值对应的按键指令;步骤s424、通过所述异常纠正线程屏蔽所述按键指令,以屏蔽对应的按键功能。在本实施例中,在屏蔽或响应对应的功能后,所述电视机进入正常的开机流程。在开机之后,为防止产品在使用过程中出现异常,还需要在开机之后判断按键脚是否长时间处于异常低电压的状态;由于,正常状态下,也会有用户长按按键的情况发生,即用户长按某一按键,实现持续响应某一功能,例如,持续增加音量;因此,还需要增加判断机制,以此来确定该功能是基于用户操作导致,还是基于异常电压值而导致。具体地,在所述电视机开机之后,系统会持续使用adc模块检测按键脚的电压,并将检测到的数值存入变量key_voltage_n中;之后,响应电压key_voltage_n对应的功能,同时,开始进行计时和计数,每隔10s保存一个按键脚电压到数组key_voltage_m中,循环进行18次,即监控3分钟内的按键脚的电压状态,下一步取key_voltage_m数组中的最大值key_voltage_m_max与3.2v进行比较,如果key_voltage_m_max大于等于3.2v,则继续保持按键功能的正常执行;若key_voltage_m_max小于3.2v,则需要执行bootrunning阶段的四次判断:1、当3.2>key_voltage_mini≥2.6时,则暂时屏蔽“频道 ”功能,并且,在所述电视机的屏幕上以小字的方式显示“屏蔽按键板频道 功能,请使用遥控器相同功能”;2、当2.6>key_voltage_mini≥2.1时,则暂时屏蔽“频道-”功能,并且,在所述电视机的屏幕上以小字的方式显示“屏蔽按键板频道-功能,请使用遥控器相同功能”;3、当2.1>key_voltage_mini≥1.5时,则暂时屏蔽“音量 ”功能,并且,在所述电视机的屏幕上以小字的方式显示“屏蔽按键板音量 功能,请使用遥控器相同功能”;4、当1.5>key_voltage_mini≥0.8时,则暂时屏蔽“音量-”功能,并且,在所述电视机的屏幕上以小字的方式显示“屏蔽按键板音量-功能,请使用遥控器相同功能”。在判断执行完之后,系统继续运行10分钟,之后读取按键脚电压key_voltage_m与3.2v进行比较,如果key_voltage_m大于等于3.2v,则恢复所有按键功能,继续正常运行程序,否则重新执行四个判断流程。即在本实施例的一种实现方式当中,在所述步骤s424之后,还包括以下步骤:步骤s431、持续监测所述预设按键在预设时长内的脚电压状态;步骤s432、当监测到所述预设按键在预设时长内的脚电压均处于低电压状态时,获取所述预设时长内的最大脚电压值;步骤s433、根据所述预设按键的最大脚电压值屏蔽对应的按键功能。以下通过具体举例对本实施例进行说明:如图2所示,在实际应用时,按键电压检测及功能屏蔽包括以下步骤:步骤s11、上电后,bootrunning完成adc模块的初始化;步骤s12、设置校准电压reference_voltage=3.3v;步骤s13、计时8s连续读取按键脚电压key_voltage;步骤s14、8s内,每隔1秒读取一次key_voltage并存入8个变量中;步骤s15、对这8个变量求和得到key_voltage_total,计算key_voltage_ave=key_voltage_total/8;步骤s16、判断key_voltage_ave≥3.3是否成立;若为否,则执行步骤s17;若为是,则执行步骤s30;步骤s17、取出8个key_voltage变量中最小的一个,设为key_voltage_mini;步骤s18、判断3.3>key_voltage_mini≥2.6是否成立;若为是,则执行步骤s19;若为否,则执行步骤s21;步骤s19、关闭“频道 ”按键功能,其他功能保持正常响应;步骤s20、开机后,小字提示用户“频道 ”功能屏蔽,请使用遥控相应功能;步骤s21、判断2.6>key_voltage_mini≥2.1是否成立;若为是,则执行步骤s22;若为否,则执行步骤s24;步骤s22、关闭“频道-”按键功能,其他功能保持正常响应;步骤s23、开机后,小字提示用户“频道-”功能屏蔽,请使用遥控相应功能;步骤s24、判断2.1>key_voltage_mini≥1.5是否成立;若为是,则执行步骤s25;若为否,则执行步骤s27;步骤s25、关闭“音量 ”按键功能,其他功能保持正常响应;步骤s26、开机后,小字提示用户“音量 ”功能屏蔽,请使用遥控相应功能;步骤s27、判断1.5>key_voltage_mini≥0.8是否成立;若为是,则执行步骤s28;若为否,则结束检测;步骤s28、关闭“音量-”按键功能,其他功能保持正常响应;步骤s29、开机后,小字提示用户“音量-”功能屏蔽,请使用遥控相应功能;步骤s30、正常根据按键电压执行不同按键功能;步骤s31、正常开机。如图3所示,在实际应用时,在开机之后,为防止产品在使用过程中出现异常,执行以下步骤:步骤s41、正常开机;步骤s42、检测到按键脚电压变化,将检测到的电压变化持续存入变量key_voltage_n;步骤s43、响应key_voltage_n对应的按键功能,同时开启计时器tim1;步骤s44、当计时器tim1计时到10s时,将检测到电压值存入一个变量中,并计数一次,重复此步骤18次,将得到6个数,取最大值key_voltage_m;步骤s45、判断key_voltage_m≥3.2是否成立;若为否,则执行步骤s46;若为是,则执行步骤s62;步骤s46、停止响应按键功能,取18个数据中最小的值key_voltage_l;步骤s47、判断3.2>key_voltage_m≥2.6是否成立;若为是,则执行步骤s48;若为否,则执行步骤s50;步骤s48、关闭“频道 ”按键功能,其他功能保持正常响应;步骤s49、开机后,小字提示用户“频道 ”功能屏蔽,请使用遥控相应功能,跳转至步骤s59;步骤s50、判断2.6>key_voltage_m≥2.1是否成立;若为是,则执行步骤s51;若为否,则执行步骤s53;步骤s51、关闭“频道-”按键功能,其他功能保持正常响应;步骤s52、开机后,小字提示用户“频道-”功能屏蔽,请使用遥控相应功能,跳转至步骤s59;步骤s53、判断2.1>key_voltage_m≥1.5是否成立;若为是,则执行步骤s54;若为否,则执行步骤s56;步骤s54、关闭“音量 ”按键功能,其他功能保持正常响应;步骤s55、开机后,小字提示用户“音量 ”功能屏蔽,请使用遥控相应功能,跳转至步骤s59;步骤s56、判断1.5>key_voltage_m≥0.8是否成立;若为是,则执行步骤s57;若为否,则停止检测;步骤s57、关闭“音量-”按键功能,其他功能保持正常响应;步骤s58、开机后,小字提示用户“音量-”功能屏蔽,请使用遥控相应功能;步骤s59、正常运行系统其他线程10分钟;步骤s60、读取按键电压,存入key_voltage_l;步骤s61、判断key_voltage_m≥3.2是否成立;若为否,则执行步骤s47;若为是,则执行步骤s62;步骤s62、正常执行按键功能;步骤s63、正常运行系统。由此可见,本发明通过对异常电压导致的异常功能进行规避处理,可以在产品正常开机前进行检测和规避,而且,通过在产品使用过程中循环进行检测和规避异常,大大提高了产品的使用寿命,对于轻微的损伤故障可免除售后的维修处理,节省了售后的人力和资源成本。示例性设备基于上述实施例,本发明还提供了一种终端,其原理框图可以如图4所示。该终端包括通过系统总线连接的处理器、存储器、显示端。其中,该终端的处理器用于提供计算和控制能力。该终端的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机程序被处理器执行时以实现一种按键响应异常修复方法。该终端的显示端可以是液晶显示屏或者电子墨水显示屏。本领域技术人员可以理解,图4中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。在一个实施例中,提供了一种终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:获取预设检测时长内预设按键的多个脚电压值;对所述多个脚电压值进行均值处理,得到平均脚电压值;获取预设校准电压值,并将所述平均脚电压值与所述预设校准电压值进行对比;根据对比结果响应所述预设按键对应的按键指令,或根据对比结果屏蔽所述预设按键对应的按键指令。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。综上所述,本发明公开了一种按键响应异常修复方法、终端及存储介质,所述方法包括:获取预设检测时长内预设按键的多个脚电压值;对所述多个脚电压值进行均值处理,得到平均脚电压值;获取预设校准电压值,并将所述平均脚电压值与所述预设校准电压值进行对比;根据对比结果响应所述预设按键对应的按键指令,或根据对比结果屏蔽所述预设按键对应的按键指令。本发明在检测到硬件异常后,可以主动规避异常状态,以避免正常功能的按键受到影响;而且,通过修复算法规避异常按键脚电压,避免影响其他按键及功能的使用,可延长电子产品的使用寿命,减轻售后的工作压力。应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。当前第1页1 2 3 
    技术特征:

    1.一种按键响应异常修复方法,其特征在于,所述方法包括:

    获取预设检测时长内预设按键的多个脚电压值;

    对所述多个脚电压值进行均值处理,得到平均脚电压值;

    获取预设校准电压值,并将所述平均脚电压值与所述预设校准电压值进行对比;

    根据对比结果响应所述预设按键对应的按键指令,或根据对比结果屏蔽所述预设按键对应的按键指令。

    2.根据权利要求1所述的按键响应异常修复方法,其特征在于,所述获取预设检测时长内预设按键的多个脚电压值,之前还包括:

    当检测到系统运行时,启动模拟数字转换器和定时器;

    根据初始化指令分别对所述模拟数字转换器和所述定时器进行初始化处理;

    通过所述模拟数字转换器设置所述预设校准电压值,以及通过所述定时器设置所述预设检测时长。

    3.根据权利要求2所述的按键响应异常修复方法,其特征在于,所述获取预设检测时长内预设按键的多个脚电压值,具体包括:

    通过所述模拟数字转换器读取所述预设检测时长内预设按键的多个脚电压值;

    根据预设存储路径将所读取的按键脚电压值存入变量数组中。

    4.根据权利要求3所述的按键响应异常修复方法,其特征在于,所述对所述多个脚电压值进行均值处理,得到平均脚电压值,具体包括:

    将所述变量数组中的多个脚电压值代入求和算法中,得到所述多个脚电压值的总电压值;

    对所述总电压值进行均值处理,得到所述预设按键在单位时间内的平均脚电压值。

    5.根据权利要求4所述的按键响应异常修复方法,其特征在于,所述获取预设校准电压值,并将所述平均脚电压值与所述预设校准电压值进行对比,还包括:

    获取所述预设校准电压值,将所述平均脚电压值与所述预设校准电压值进行对比;

    判断所述平均脚电压值是否大于或等于所述预设校准电压值;

    当所述平均脚电压值大于或等于所述预设校准电压值时,判定所述预设按键的脚电压值为正常电压值;

    当所述平均脚电压值小于所述预设校准电压值时,判定所述预设按键的脚电压值为异常电压值。

    6.根据权利要求5所述的按键响应异常修复方法,其特征在于,当所述预设按键的脚电压值为正常电压值时,所述根据对比结果响应所述预设按键对应的按键指令,具体包括:

    当所述预设按键的脚电压值为正常电压值时,根据所述平均脚电压值查找按键电压映射表;

    根据所述按键电压映射表获取与所述平均脚电压值对应的按键指令;

    根据所述按键指令控制对应的电压模块,以执行对应的按键功能。

    7.根据权利要求5所述的按键响应异常修复方法,其特征在于,当所述预设按键的脚电压值为异常电压值时,所述根据对比结果屏蔽所述预设按键对应的按键指令,具体包括:

    当所述预设按键的脚电压值为异常电压值时,停止执行当前运行的工作线程,并根据预设运行指令执行异常纠正线程;

    获取所述变量数组中的最小脚电压值,并根据所述最小脚电压值查找按键电压映射表;

    根据所述按键电压映射表获取与所述最小脚电压值对应的按键指令;

    通过所述异常纠正线程屏蔽所述按键指令,以屏蔽对应的按键功能。

    8.根据权利要求1所述的按键响应异常修复方法,其特征在于,所述根据对比结果响应所述预设按键对应的按键指令,或根据对比结果屏蔽所述预设按键对应的按键指令,之后还包括:

    持续监测所述预设按键在预设时长内的脚电压状态;

    当监测到所述预设按键在预设时长内的脚电压均处于低电压状态时,获取所述预设时长内的最大脚电压值;

    根据所述预设按键的最大脚电压值屏蔽对应的按键功能。

    9.一种终端,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于执行如权利要求1-8中任意一项所述的方法。

    10.一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1-8中任意一项所述的方法。

    技术总结
    本发明公开了一种按键响应异常修复方法、终端及存储介质,所述方法包括:获取预设检测时长内预设按键的多个脚电压值;对所述多个脚电压值进行均值处理,得到平均脚电压值;获取预设校准电压值,并将所述平均脚电压值与所述预设校准电压值进行对比;根据对比结果响应所述预设按键对应的按键指令,或根据对比结果屏蔽所述预设按键对应的按键指令。本发明在检测到硬件异常后,可以主动规避异常状态,以避免正常功能的按键受到影响;而且,通过修复算法规避异常按键脚电压,避免影响其他按键及功能的使用,可延长电子产品的使用寿命,减轻售后的工作压力。

    技术研发人员:鲍恒
    受保护的技术使用者:深圳创维-RGB电子有限公司
    技术研发日:2020.11.27
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-6562.html

    最新回复(0)