一、功能描述
通过执行shell指令来完成对gpio的控制
二、方案设计
2.1 确保背光对应GPIO没有被系统占用并在gpio完成最后操作时进行释放
可通过shell指令 cat /sys/kernel/debug/gpio 来查看对应的gpio的占用情况,如下图:
然后在对应的驱动程序里进行释放,以下是一个示例:
--- a/kernel/drivers/pwm/tlc5615.c
+++ b/kernel/drivers/pwm/tlc5615.c
@@ -111,6 +111,7 @@ void EnBacklight(int isblackon){
gpio_set_value(ENBLK_S, 0);
gpio_set_value(ENBLK_T, 0);
}
+ gpio_free(ENBLK_S);^M
}
2.2 写好gpio控制脚本 gpio.sh
#!/system/bin/sh
PIN=$1
VALUE=$2
dir=/sys/class/gpio/gpio$PIN
if [ -d $dir ];then
echo $VALUE > /sys/class/gpio/gpio$PIN/value
else
echo $PIN > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio$PIN/direction
echo $VALUE > /sys/class/gpio/gpio$PIN/value
fi
2.3 通过命令控制背光的开关
打开背光:
sh gpio.sh 12 1
关闭背光:
sh gpio.sh 12 0