全部博文(478)
分类: Android平台
2016-11-03 15:58:50
原文地址:http://blog.csdn.net/paul_liao/article/details/8794654
1、简介
随着移动设备越来越智能化,硬件大跃进,耗电量也越来越大,直接导致的结果是续航能力一日就歇菜了。然而现在的电池技术却止步不前,所以只能响应国家的号召从”节能减排”下手。显示屏在移动设备里一直的是耗电大户,显示屏的背光显然是电池杀手,所以拿背光”开刀”介绍两种实际应用较为可行省电方法。
环境光侦测对应背光控制(LightAdaptive Brightness Control-LABC):根据环境光的变化来控制背光亮度。
显示内容对应背光控制(ContentAdaptive Brightness Control-CABC):根据显示内容来调节背光和gamma值。
2、LABC
LABC技术需要搭配光传感器实现,主机端处理器读取光感数值,然后处理器对数值进行处理,直接控制PMIC(MT6329)输出PWM控制背光的亮度。在比较暗光线下,降低背光达到省电效果。以下是LABC功能模块图:
3、CABC
CABC功能需要在LCD驱动IC内新增一个内容分析器(imagecontent analyzer)电路,当手机处理器传送了一张图片数据到驱动IC,内容分析器会计算并统计图片的数据后依据设定与算法自动的将其灰阶亮度提高30%(此时图片变亮),再将背光亮度降低30%(此时图片变暗)。由于我们事先已经将图片经过分析器电路补偿亮度,因此使用者可以得到与原先电路相差无几的显示效果,但减少了30%的背光功耗。
简单来说,CABC功能就是根据显示内容来降低背光,然后通过调节gamma(gamma越高灰度越低图像越暗)来补偿显示亮度。以下是基于MTK平台采用的PMIC直接控制背光的方案模块图:
工作流程如下:
1、 使能PMIC(MT6329)CABC功能;
2、 设置LCD驱动IC的相关配置(使能CABC和配置gamma参数,需要FAE协助);
3、 CABC模块分析显示内容输出LED_PWM信号给PMIC,PMIC通过一定算法控制driver模块BL_DRV信号的输出波形;
4、 预期结果是背光亮度降低,LCD驱动IC降低gamma值以补偿屏幕亮度。
CABC模块分析显示内容输出PWM波形,占空比越大,表示需要输出的电流越大。下面两幅波形图分别是显示白色图片和黑色图片时CABC输出的PWM波形:
白色图片
黑色图片
从上图可以得知,黑色图片的占空比要比白色图片的小,相对来说,使用CABC功能,显示深颜色的图片比显示浅颜色的图片更加省电。
下表是打开或关闭CABC功能,显示纯白色图片和纯黑色图片测得的背光电流数据:
|
打开CABC |
关闭CABC |
纯白色图片 |
8mA |
12mA |
纯黑色图片 |
7mA |
12mA |
从数据上可以看出打开CABC功能以后可以省电大概30%,显示黑色图片要比白色图片省电。但是实际的显示效果打开CABC功能比没有打开CABC时亮度稍暗,并没有像某IC厂商吹嘘的显示效果不会受影响。
4、LABC和CABC对比
LABC和CABC的基本背光省电原理是相同的,但是判断机制稍有不同:LABC是跟随环境光的改变来调节背光亮度;CABC则是判断当前显示的内容来调节背光和gamma。相对来说,CABC的实用性要比LABC好,省电效果还是比较明显的。
5、CABC和LABC同时打开
LABC通过I2C发送指令给PMIC设置brightnessLEVEL,CABC把PWM信号送给PMIC,通过某种算法(PMIC内部怎么处理只有做IC的人知道- -)计算后输出PWM给背光。
6、总结
目前,LABC在移动设备上得到了广泛应用,几乎每台手机上都配备了此功能,但是装备CABC功能的移动设备却不多见。从作者实际应用来看,CABC功能省电效果还是比较明显的,但是还有一些不太完善的地方,和CABC模块有莫大的关系,各大厂商的LCD驱动IC的CABC模块不同,所以效果也会参差不齐。