本发明涉及移动通信领域,尤其涉及一种基于重力传感器的调节显示屏亮度的方法及装置。
背景技术:
现有技术中,手机LCD显示屏的亮度自动调节功能是基于光学传感器实现的。具体地,利用现有的光学传感器感应环境的光照强度,从而实现自动调整LCD显示屏的亮度。
但是,在手机的实际操作过程中,LCD显示屏亮度自动调节功能的效果往往不是很理想。例如,在室外强光状态下,即使LCD显示屏亮度自动调节后,用户仍旧不能看清屏幕显示内容,以致无法及时有效地对手机进行相应地操作。
另外,如果用户有夜间操作手机的习惯,通常夜间使用手机时,用户会手动调整LCD显示屏亮度到最低状态。如果用户第二天正巧在室外强光照下需要使用手机,此时手机显示屏因暗淡状态未及时调整,以致用户几乎无法看清任何内容。
因此,手机端亟待一种快速调节LCD显示屏亮度的方法来解决上述问题。
技术实现要素:
有鉴于此,本发明的目的之一在于提出一种基于重力传感器的调节显示屏亮度的方法及装置,以达到快速调节显示屏亮度的目的。
本发明提供了一种基于重力传感器得调节显示屏亮度的方法,当重力传感器处于激活状态时,采集重力传感器的加速度数据,并根据采集的数据改变显示屏的亮度。
优选地,该方法包括如下步骤:
步骤1,检测重力传感器是否处于激活状态;
步骤2,在重力传感器处于激活状态时,采集重力传感器的最大加速度值b和方向状态a;
步骤3,判断所述最大加速度值b是否大于预设的加速度阈值B;
步骤4,如果所述最大加速度值b大于预设的加速度阈值B,则在原有亮度状态码c的基础上执行方向状态a映射的操作码所表示的亮度调节指令;
步骤5,改变显示屏的亮度。
优选地,所述步骤1为,检测重力传感器是否从休眠状态切换到激活状态。
优选地,通过双击HOME按键、双击音量按键、同时按动HOME按键与音量按键或语音唤醒的方式触发重力传感器从休眠状态切换到激活状态。
优选地,检测HOME按键的管脚在短时间内有两个脉冲信号产生时,启动重力传感器处于激活状态。
优选地,所述步骤2,包括:
步骤21,以显示屏所在的平面为横向X轴,以垂直显示屏所在平面的直线为纵向Y轴,并规定四个方向组分别为X轴的正方向,X轴负方向,Y轴正方向,Y轴负方向;
步骤22,当重力传感器产生加速度时,获取最大加速度值为b;
步骤23,比较所述最大加速度的方向与所述四个方向的偏角,取偏角最小的所在正向记录为方向状态a。
优选地,所述步骤4,包括:
步骤41,从操作寄存器中获取原有亮度状态码c;
步骤42,从操作寄存器中获取方向状态a映射操作码;
步骤43,在原有亮度状态码c的基础上执行逐级增加亮度,或逐级递减亮度,或将亮度调整为最大值,或将亮度调整为最小值。
优选地,所述方向状态a映射操作码关系被定义为:
如果方向状态a判定为X轴正方向,则操作码表示逐级递增亮度;
如果方向状态a判定为X轴负方向,则操作码表示逐级递减亮度;
如果方向状态a判定为Y轴正方向,则操作码表示亮度调整为最大值;
如果方向状态a判定为Y轴负方向,则操作码表示亮度调整为最小值。
优选地,所述步骤4中,通过一个锁存器检测亮度状态码的标志位。
优选地,所述步骤5,通过改变供电状态调节显示屏的亮度。
优选地,在所述步骤3中,如果判断所述最大加速度值b小于预设的加速度阈值B,则返回步骤1。
优选地,所述方法在所述显示屏处于锁屏状态下进行。
本发明还提供了一种基于重力传感器的调节显示屏亮度的装置,该装置包括:
检测模块,用于检测重力传感器是否处于激活状态;
采集模块,用于在重力传感器处于激活状态时采集重力传感器的加速度数据;
调节模块,用于根据采集模块采集的数据改变显示屏的亮度。
优选地,所述采集模块进一步用于在重力传感器被唤醒切换至激活状态后,采集最大加速度值b和方向状态a;
判断模块,用于判断所述最大加速度值b是否大于预设的加速度阈值B;
执行模块,用于如果所述最大加速度值b大于预设的加速度阈值B,则在原有亮度状态码c的基础上执行方向状态a映射的操作码所表示的亮度调节指令。
优选地,所述检测模块,用于检测重力传感器是否从休眠状态切换到激活状态。
优选地,所述触发模块,用于通过双击HOME按键、双击音量按键、同时按动HOME按键与音量按键或语音唤醒的方式触发重力传感器从休眠状态切换到激活状态。
优选地,所述检测模块,用于检测HOME按键的管脚在短时间内有两个脉冲信号产生时,启动重力传感器处于激活状态。
优选地,所述采集模块,用于以显示屏所在的平面为横向X轴,以垂直显示屏所在平面的直线为纵向Y轴,并规定四个方向组分别为X轴的正方向,X轴负方向,Y轴正方向,Y轴负方向;当重力传感器产生加速度时,获取最大加速度值为b;比较所述最大加速度的方向与所述四个方向的偏角,取偏角最小的所在正向记录为方向状态a。
优选地,所述执行模块,用于从操作寄存器中获取原有亮度状态码c;从操作寄存器中获取方向状态a映射操作码;在原有亮度状态码c的基础上执行逐级增加亮度,或逐级递减亮度,或将亮度调整为最大值,或将亮度调整为最小值。
优选地,所述方向状态a映射操作码关系被定义为:
如果方向状态a判定为X轴正方向,则操作码表示逐级递增亮度;
如果方向状态a判定为X轴负方向,则操作码表示逐级递减亮度;
如果方向状态a判定为Y轴正方向,则操作码表示亮度调整为最大值;
如果方向状态a判定为Y轴负方向,则操作码表示亮度调整为最小值。
优选地,所述执行模块,还用于通过一个锁存器检测亮度状态码的标志位。
优选地,所述调节模块,用于通过改变供电状态调节显示屏的亮度。
优选地,所述判断模块,如果判断所述最大加速度值b小于预设的加速度阈值B,则检测模块重新检测重力传感器是否处于激活状态。
优选地,所述装置在所述显示屏处于锁屏状态下进行显示屏亮度的改变。
本发明在锁屏状态下,利用重力传感器的加速度变化来改变显示屏的亮度,有效地解决了现有强光状态下LCD显示屏不能及时看清手机显示屏的问题。同时,也方便快捷地改变LCD显示屏原有亮度状态,提高了用户的体验度。
附图说明
以下将参照附图对根据本发明的基于重力传感器调节显示屏亮度的方法及装置的优选实施方式进行描述。图中:
图1为本发明的基于重力传感器调节LCD显示屏亮度的实施例一;
图2为加速度方向示意图;
图3为确定方向状态a的示意图;
图4为本发明的基于重力传感器调节LCD显示屏亮度的实施例二;
图5为8位寄存器用于存储状态码的结构示意图。
具体实施方式
本发明为了解决室外强光条件下显示屏不能及时清晰显示的问题,提出了基于重力传感器简单快速地调节实现显示屏亮度的方法。下面以手机的LCD显示屏的亮度调节为例,具体说明本发明提供的基于重力传感器的调节显示屏亮度的方法及装置,其他具有显示屏的电器例如平板电脑等也可以采用相同方式进行亮度调节。
本发明具体实施方式提出了一种基于重力传感器的调节LCD显示屏亮度的方法,当重力传感器处于激活状态时,采集重力传感器的加速度数据,并根据采集的数据改变显示屏的亮度,可利用手机自身的重力传感器来进行LCD屏幕亮度的调节。
在进一步具体地实施例中,如图1所示,该方法包括如下步骤:
步骤a1,检测重力传感器是否处于激活状态;
步骤2,在重力传感器处于激活状态时,采集重力传感器的最大加速度值b和方向状态a;
步骤3,判断所述最大加速度值b是否大于预设的加速度阈值B;
步骤4,如果所述最大加速度值b大于预设的加速度阈值B,则在原有亮度状态码c的基础上执行方向状态a映射的操作码所表示的亮度调节指令;
步骤5,改变LCD显示屏的亮度。
其中,步骤1为重力传感器启动唤醒过程,由于手机在锁屏状态下,重力传感器先是处于休眠状态。此时,需要对重力传感器进行唤醒启动操作。例如,利用双击HOME按键作为重力传感器启动唤醒的触发点,具体地,当电路检测到HOME键管脚在短时间内有两个脉冲信号产生时,启动重力传感器,使得重力传感器从休眠状态切换到激活状态。
通过重力传感器启动,使得处于锁屏状态下的LCD显示屏能够利用重力传感器的操作来进行有效调节。
其中,步骤2为重力传感器数据采集过程,当重力传感器在激活状态准备就绪时,采集手机在传感器激活状态内各个方向加速度数据。例如,以手机LCD显示屏所在的平面为横向(X轴),以垂直显示屏平面的直线为纵向(Y轴),X轴正方向、X轴负方向、Y轴正方向以及Y轴负方向如图2所示。如果LCD显示屏与用户视线垂直相对,则指向用户的方向为Y轴正方向,背离用户的方向为Y轴负方向,用户右手方向为X轴正方向,用户左手方向为X轴的负方向。如果LCD显示屏与用户视线相互平行,LCD显示屏向上的方向为Y轴正方向,LCD显示屏向下的方向为Y轴负方向,用户右手方向为X轴正方向,用户左手方向为X轴的负方向。
在用户摇晃手机产生加速度时,可能产生的加速度方向并不在上述四个方向上,如图3所示,虚线箭头指示方向为加速度产生方向,即来回晃动动作。虚线箭头方向分别与X轴的正方向,X轴负方向,Y轴正方向,Y轴负方向之间存在夹角,选取四个方向中与手机产生的加速度方向偏角最小的方向记录方向状态a。
通过方向状态的确定,将重力传感器的状态变化映射到LCD显示屏亮度操作上,使得重力传感器的动态变化能够及时有效地调整LCD显示屏亮度。
通过步骤3的判断,排除用户的非指令性操作,使得操作指令更加精准。
步骤4中,在原有亮度状态码c的基础上执行方向状态a映射的操作码所表示的亮度调节指令,即,不同的方向状态a分别与不同的操作码之间具有映射关系,不同的操作码表示不同的亮度调节指令(后面有具体的说明),例如将亮度提高,将亮度降低等等,方向状态a可映射到相应的操作码,进而执行该操作码所表示的亮度调节指令,将原有亮度状态码c改变(后面有具体的说明),例如获得相应的亮度参数,并在原有亮度的基础上进行亮度参数的调节。
步骤4和步骤5,共同实现了重力感应器的方向状态与操作码的映射关系的执行,以及LCD显示屏亮度的调节功能。其中,步骤4用于将方向状态与操作码之间建立映射关系,明确了操作的可行性。通过步骤3确定用户的操作是否为有效指令,如果是有效的指令,在获取LCD显示屏的亮度状态码基础上,执行亮度改变操作。具体通过步骤5,调整LCD显示屏供电装置的供电状态,从而调节LCD显示屏的亮度。
进一步地,在步骤3中,如果判断最大加速度值b小于预设的加速度阈值B,认定为此操作为非指令性的误操作,返回步骤1,进行重新判断。
如图4所示,本发明提供了利用手机现有的重力传感器实现用户对LCD显示屏亮度地快速调节的流程示意图。具体为,手机处于锁屏状态时,重力传感器处于休眠状态。
在一个实施例中,本发明利用双击HOME按键作为重力传感器启动唤醒的触发点。电路检测到HOME键管脚在短时间内有两个脉冲信号产生,则启动重力传感器,使得重力传感器从休眠状态切换到激活状态。当然,可以理解的是,也可通过其他操作来实现重力传感器的触发,例如双击音量按键、同时按动HOME按键与音量按键或者通过语音唤醒的方式实现重力传感器的触发等等。
然后,重力传感器在激活状态就绪完毕,采集手机在传感器激活状态内各方向加速度数据。例如,用户摇手机产生加速度,可能产生加速度方向并不在前后左右四个方向上,此时,比较加速度方向与四个方向的偏角,取偏角最小的方向记录方向状态a,加速度大小为b。
当加速度b大于阈值B时,进行在原有操作寄存器LCD亮度状态为c的基础上执行加速度方向状态a映射的操作码。
其中,加速度方向状态a与操作码之间的映射关系为如果方向状态a判定为X轴正方向,则操作码表示逐级递增亮度;如果方向状态a判定为X轴负方向,则操作码表示逐级递减亮度;如果方向状态a判定为Y轴正方向,则操作码表示亮度调整为最大值;如果方向状态a判定为Y轴负方向,则操作码表示亮度调整为最小值。
例如,本发明中LCD显示屏亮度状态码分为4个等级,即为Ⅰ级、Ⅱ级、Ⅲ级和Ⅳ级。其中,Ⅳ级表示LCD显示屏最亮,Ⅰ级表示LCD显示屏最暗。
实施例中,可以选取一个8位寄存器H,如图5所示,高四位放置加速度判定阈值B,H[2]和H[3]两位存储操作码,四种状态分别表示四种加速度方向,H[0]和H[1]两位存储LCD亮度状态码。
当采集到的加速度b大于预设的加速度阈值B时,可以通过一个锁存器来检测LCD亮度状态码的标志位,然后在检测到的原有LCD亮度状态码c基础上,执行操作码来改变LCD亮度状态码。例如,当有信号触发时,唤醒重力传感器,在获取重力传感器产生的加速度方向状态后,利用方向状态映射的操作码来改变LCD供电状态,从而调节LCD亮度大小。
前述的方法是在显示屏处于锁屏状态下进行的屏幕亮度调节,当然,可以理解的是,也可以应用于显示屏不处于锁屏状态下的屏幕亮度调节。
本发明还提供了一种基于重力传感器的调节LCD显示屏亮度的装置,该装置包括:
检测模块,用于检测重力传感器是否处于激活状态;
采集模块,用于在重力传感器处于激活状态时采集重力传感器的加速度数据;以及,
调节模块,用于根据采集模块采集的数据改变显示屏的亮度。
具体地,采集模块进一步用于在重力传感器被唤醒切换至激活状态后,采集最大加速度值b和方向状态a;
进一步包括判断模块,用于判断所述最大加速度值b是否大于预设的加速度阈值B;
执行模块,用于如果所述最大加速度值b大于预设的加速度阈值B,则在原有亮度状态码c的基础上执行方向状态a映射的操作码所表示的亮度调节指令,例如,在原有亮度状态码c的基础上执行逐级增加亮度,或逐级递减亮度,或将亮度调整为最大值,或将亮度调整为最小值。
其中,检测模块用于重力传感器启动唤醒。由于手机在锁屏状态下,重力传感器先是处于休眠状态。此时,需要对重力传感器进行唤醒启动操作。例如,利用双击HOME按键作为重力传感器启动唤醒的触发点。当电路检测到HOME键管脚在短时间内有两个脉冲信号产生时,启动重力传感器,使得重力传感器从休眠状态切换到激活状态。
通过重力传感器启动,使得处于锁屏状态下的LCD显示屏能够利用重力传感器的操作来进行有效调节。
其中,采集模块用于重力传感器数据采集。当重力传感器在激活状态准备就绪时,其负责采集手机在传感器激活状态内各个方向加速度数据。例如,以手机LCD显示屏所在的平面为横向(X轴),以垂直显示屏平面的直线为纵向(Y轴),如图2所示,X轴正方向、X轴负方向、Y轴正方向以及Y轴负方向如图2所示。如果LCD显示屏与用户视线垂直相对,则指向用户的方向为Y轴正方向,背离用户的方向为Y轴负方向,用户右手方向为X轴正方向,用户左手方向为X轴的负方向。如果LCD显示屏与用户视线相互平行LCD显示屏向上的方向为Y轴正方向,LCD显示屏向下的方向为Y轴负方向,用户右手方向为X轴正方向,用户左手方向为X轴的负方向。
方向状态a映射操作码关系例如可以被定义为:如果方向状态a判定为X轴正方向,则操作码表示逐级递增亮度;如果方向状态a判定为X轴负方向,则操作码表示逐级递减亮度;如果方向状态a判定为Y轴正方向,则操作码表示亮度调整为最大值;如果方向状态a判定为Y轴负方向,则操作码表示亮度调整为最小值。
在用户摇晃手机产生加速度时,可能产生的加速度方向并不在上述四个方向上,如图3所示,虚线箭头指示方向为加速度产生方向,即来回晃动动作。虚线箭头方向分别与X轴的正方向,X轴负方向,Y轴正方向,Y轴负方向之间存在夹角,采集模块采集四个方向中与手机产生的加速度方向偏角最小的方向记录方向状态a。
通过采集模块采集的方向状态,将方向状态变化映射到LCD显示屏亮度操作上,使得重力传感器的动态变化能够及时有效地调整LCD显示屏亮度。
通过判断模块的判断,排除用户的非指令性操作,使得操作指令更加精准。
在原有亮度状态码c的基础上执行方向状态a映射的操作码所表示的亮度调节指令,即,不同的方向状态a分别与不同的操作码之间具有映射关系,不同的操作码表示不同的亮度调节指令(后面有具体的说明),例如将亮度提高,将亮度降低等等,方向状态a可映射到相应的操作码,进而执行该操作码所表示的亮度调节指令,将原有亮度状态码c改变(后面有具体的说明),例如获得相应的亮度参数,并在原有亮度的基础上进行亮度参数的调节。
执行模块和调节模块,共同实现了重力感应器的方向状态与操作码的映射关系的执行,以及LCD显示屏亮度的调节功能。其中,执行模块用于将方向状态与操作码之间建立映射关系,明确了操作的可行性。通过判断模块确定用户的操作是否为有效指令,如果是有效的指令,在获取LCD显示屏的亮度状态码基础上,执行亮度改变操作。具体通过调节模块调整LCD显示屏供电装置的供电状态,从而调节LCD显示屏的亮度。
进一步地,当判断模块判断最大加速度值b小于预设的加速度阈值B,认定为此操作为非指令性的误操作,则检测模块重新检测重力传感器是否处于激活状态。
当采集到的加速度b大于预设的加速度阈值B时,执行模块可以通过一个锁存器来检测LCD亮度状态码的标志位,然后检测到的原有LCD亮度状态码c基础上,执行操作码来改变LCD亮度状态码。例如,当有信号触发时,唤醒重力传感器,在获取重力传感器产生的加速度方向状态后,利用方向状态映射的操作码来控制调节模块改变LCD供电状态,从而调节LCD亮度大小。
前述的方法及装置是在显示屏处于锁屏状态下进行的屏幕亮度调节,当然,可以理解的是,也可以应用于显示屏不处于锁屏状态下的屏幕亮度调节。
本发明还可以利用重力传感器作为触发信号实现手机其他特定功能,例如切换歌曲、图片等功能。
本领域的技术人员容易理解的是,在不冲突的前提下,上述各优选方案可以自由地组合、叠加。
应当理解,上述的实施方式仅是示例性的,而非限制性的,在不偏离本发明的基本原理的情况下,本领域的技术人员可以针对上述细节做出的各种明显的或等同的修改或替换,都将包含于本发明的权利要求范围内。