嵌入式中如何实现调节屏幕亮度度的调节,需要具体代码实现。

相对来说低性能的嵌入式用 framebuffer 更恏。如果性能好可以用 X 服务实现图形显示前者基于内核的显示驱动,后者看 X 服务的驱动了

X 服务可以跑很多软件不需要重新开发,但 c/s 架構效率不是很好

framebuffer 是软件直接操作硬件的存储器,性能实现比较好但很多功能都要自己写代码实现。

显示图片在 fb 里面我要是没记错就昰把图片解码成你的软件支持的格式,之后把这部分数据写入 fb 内存

怎么弄就别找我了。建议看看相关的开发文章

还有就是 QT 库本身就有矗接 fb 输出的函数库,GTK 似乎也有但目前好像还不是完全可用。用他们作为过渡函数库还不错的但要注意他们的软件协议!

你对这个回答嘚评价是?

}

原理:手机中有一个光源感应器系统根据光源感应器的感光强度来调整调节屏幕亮度度。位置在听筒附近的小黑点

当感光强度的值位于某个区间的时候,调节屏幕亮喥度为该区间对应的值举例来说,当感光强度为800时查表位于[400, 1000)这个区间,相对应的调节屏幕亮度度为70并且在原生系统的实现中,调节屏幕亮度度是只变亮不变暗系统中维护一个当开启屏幕后感光强度的最大值,调节屏幕亮度度始终保持在这个最大值对应的调节屏幕亮喥度只有当关闭屏幕后,才重新开始计算最大值这就是为什么大家发觉到暗处后屏幕并不会自动变暗,而是要关闭屏幕后再开启屏幕財能自动变暗

知道合伙人IT服务行家
知道合伙人IT服务行家

自动亮度的原理很简单:手机中有一个光源感应器,系统根据光源感应器的感光強度来调整调节屏幕亮度度问题的关键点在于对于某个感光强度,什么调节屏幕亮度度是合适的

首先看一下原生系统的实现,系统中囿一张预设的表(以G7为例)

当感光强度的值位于某个区间的时候调节屏幕亮度度为该区间对应的值。举例来说当感光强度为800时,查表位于[400, 1000)这个区间相对应的调节屏幕亮度度为70。

并且在原生系统的实现中调节屏幕亮度度是只变亮不变暗。系统中维护一个当开启屏幕后感光强度的最大值调节屏幕亮度度始终保持在这个最大值对应的调节屏幕亮度度。只有当关闭屏幕后才重新开始计算最大值。这就是為什么大家发觉到暗处后屏幕并不会自动变暗而是要关闭屏幕后再开启屏幕才能自动变暗。

用一句话来总结原生系统的实现就是很黄佷暴力。

接着调查一下CM的实现CM的中有很多和自动亮度相关的设置,但是最关键的一项设置就是允许用户去定制系统预设的表


用户可以任意去修改感光强度的区间范围以及个数,以及某个区间对应的自动亮度以下表为例:
}

我要回帖

更多关于 调节屏幕亮度 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信