Android键盘灯亮度控制

        最近4个月的时间,5个人做了两个Android的手机项目:一个2.2.1的,另一个是2.3.4;不知道其他公司是不是也是这样的工作量。对于我们相比之前的项目来说,完全是让我们超长发挥。从之前没有接触过,到目前基本搞通Android框架——主要是底层驱动框架,BSP部分,对于应用层的结构也略知一二。整个成长过程可谓是历经艰辛。各中压力只有我们几个当事人才深有体会。前面先抱怨几句,后面博文会继续总结和记录一些个人认为值得自己总结的要点。

        这次就记录一下键盘灯的相关资料。事情的起因是硬件同事反馈触摸屏下面的按键灯电流过大,可能会烧掉LED灯。开始我认为这应该是高通ARM9完全控制的。结果在代码里面发现设置键盘灯的地方实际是通过RPC从ARM11传过来的命令控制的。因为在ARM9这边控制键盘灯的类型为KBD_XXX。于是我想当然认为ARM11肯定有一个KEYBOARD类型的light设备。从代码上的确找到了这样一个设备。在lights.c的文件中,可以看到有一个打开键盘灯的函数。当传入的参数为真,则在文件系统中写一个键盘背光灯亮度文件,值为255。那么通过RPC传给ARM9后,设置键盘灯的亮度就是最大的。其实ARM9侧键盘灯最大应该为6,对应电流大约为60mA。那么只要将函数中,亮度值改小应该就可以了。我将该值改为了20。运行测试了一下,发现好像没什么变化。难道有别的地方再操作该值???国庆加班不太在状态,先回家再说。

        第二晚上,没事再来琢磨一下。在网上搜索“键盘灯亮度设置”,结果发现有一个叫"AdjBrightness"的应用程序可以调节键盘灯亮度。但是好像都下载失败。看来想通过应用程序来测试分析的路走不通。再研究一下这个brightness的文件。结果发现有一个button-backlight的目录,而没有kbd-backlight的目录(这个是我最疑惑的地方)。测试发现,当键盘灯熄灭时,button-backlight的brightness文件值为0,点亮后为255。那么我有理由怀疑真正控制键盘灯亮度的是button-backlight里面的brightness,而不是我之前认为的keyboard-backlight。找个时间修改代码测试一下。等测试后再记录测试结果。

        10月8日上班测试了一把,证明我的推断是正确的。这个问题可以关闭了。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值