您的位置:首页 > 其它

中兴Nubia Z5S 呼吸灯/键盘灯/闪光灯模式分析

2014-03-10 19:26 274 查看
 中兴Nubia Z5S(NX503A) 使用的呼吸灯控制芯片为AW9106B, 芯片资料:

http://pan.baidu.com/s/1dDHxXeD





实际nubia z5s 只控制了home键一个红色的LED (好浪费的说...)

在z5s官方内核中此芯片驱动路径为: drivers/hwmon/aw_9106b.c

其中定义呼吸灯输出模式的enum为:

enum aw_outn_mode{
AW_POWER_OFF,// 0
AW_CONST_ON,  // 1
AW_LOW_BATT_ON, // 2
AW_CHG_ON, // 3
AW_NORMAL_ON, // 4
AW_FADE_ON_STEP,  // 5
AW_FADE_OFF_STEP, // 6
AW_FADE_CYCLE, // 7
};


而内核操作呼吸灯的实际文件路径为: sys/class/leds/red



从上面来看,控制呼吸灯的点亮模式的方法为:

比如

echo 1 > sys/class/leds/red/brightness

即设置呼吸灯的模式为 AW_CONST_ON , 持续亮模式, 

echo 0 > sys/class/leds/red/brightness

即为关闭呼吸灯

还有几种模式分别是:

AW_LOW_BATT_ON, // brightness值为2 低电量显示模式

AW_CHG_ON, // brightness值为3 充电呼吸模式

AW_NORMAL_ON, // brightness值为4 普通呼吸模式

AW_FADE_ON_STEP, // brightness值为5 渐变点亮模式(完全亮之后无呼吸)

AW_FADE_OFF_STEP, // brightness值为6 渐变灭模式(但实际测试直接灭了)

AW_FADE_CYCLE // brightness值为7 循环渐变呼吸模式

另外

echo 50 > sys/class/leds/red/max_brightness

这样既可以控制呼吸灯的最大亮度

同样的道理, 键盘灯就简单了,

echo 100 > sys/class/leds/button-backlight/brightness

这样就可以控制键盘灯(对z5s来说就是home键左右两边两个红点), 不同的数值亮度不一样最大值在sys/class/leds/button-backlight/max_brightness设置

闪光灯控制的路径为:

sys/class/leds/led:flash_torch/brightness

跟键盘灯不同的是z5s的闪光灯不能控制亮度只要brightness数值大于0即点亮!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: