/**************************************************************************
* I.MX6 Android backlight modify by C demo
* 说明:
* 因为一些特殊情况,需要添加一个这个简单的控制程序来控制android背光
* 亮度,个人感觉是没有必要的,但是应要求还是加上。
*
* 2016-5-14 深圳 南山平山村 曾剑锋
*************************************************************************/ #include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <termios.h>
#include <string.h>
#include <errno.h> #define BACKLIGHT0_PATH "/sys/class/backlight/pwm-backlight.0/brightness"
#define BACKLIGHT1_PATH "/sys/class/backlight/pwm-backlight.1/brightness" //#define BACKLIGHT0_PATH "brightness0"
//#define BACKLIGHT1_PATH "brightness1" int help ( int argc );
int isDigitalStr(char *str);
int file_exists(char *filename);
void writeStringToFile(char *filePath, char *string); int main(int argc, char **argv)
{
int bl0 = ;
int bl1 = ; if ( help( argc ) != )
return -; if ( !isDigitalStr(argv[]) ) {
printf("Please give a numeric string.\n");
return -;
} writeStringToFile(BACKLIGHT0_PATH, argv[]);
writeStringToFile(BACKLIGHT1_PATH, argv[]);
} void writeStringToFile(char *filePath, char *string)
{
int fd = ; if ( file_exists(filePath) ) { fd = open(filePath, O_RDWR); ftruncate(fd, );
write(fd, string, strlen(string)); close(fd); }
} int isDigitalStr(char *str)
{
int len = strlen(str);
char *s = str;
int i = ; while( '' <= *s && *s <= '' && i < len){
s++;
i++;
} if(i == len)
return ;
else
return ;
} int file_exists(char *filename)
{
if (access(filename, F_OK) == ) {
return ;
} else {
printf("%s is not exist.\n", filename);
return ;
}
} int help( int argc )
{
if ( argc != ) {
printf ( "USAGE:\n" );
printf ( " backlight <value>\n" );
printf ( " example:\n" );
printf ( " backlight 0\n" );
return -;
} return ;
}

I.MX6 Android backlight modify by C demo的更多相关文章

  1. I.MX6 Android Linux UART send receive with multi-thread and multi-mode demo

    /******************************************************************************************* * I.MX6 ...

  2. I.MX6 PWM buzzer driver hacking with Demo test

    /***************************************************************************** * I.MX6 PWM buzzer dr ...

  3. I.MX6 Android U-blox miniPCI 4G porting

    /************************************************************************** * I.MX6 Android U-blox m ...

  4. I.MX6 android 移除shutdown功能

    /************************************************************************ * I.MX6 android 移除shutdown ...

  5. I.MX6 Android busybox 从哪里生成的

    /**************************************************************************** * I.MX6 Android busybo ...

  6. I.MX6 Android 5.1 快速合成系统

    /**************************************************************************** * I.MX6 Android 5.1 快速 ...

  7. I.MX6 Android netperf

    /***************************************************************************** * I.MX6 Android netpe ...

  8. I.MX6 android 设置 默认 动态桌面

    /************************************************************************ * I.MX6 android 设置 默认 动态桌面 ...

  9. I.MX6 android 获取framebuffer信息

    /******************************************************************************** * I.MX6 android 获取 ...

随机推荐

  1. DBCP参数介绍

    参数分步介绍1)数据库连接相关    username="v10"    password="v10"    driverClassName="ora ...

  2. Xamarin for Mac 2.0.2.35 稳定版 破解补丁 Preview 2

    注意:该破解补丁未经过广泛测试 前提概要 1.该补丁,仅涉及以下产品,所有版权归 Xamarin 所有,仅供学习练手: ① Xamarin.iOS 8.10.2.37 Xamarin.iOS 8.10 ...

  3. Spark源码分析(一)-Standalone启动过程

    原创文章,转载请注明: 转载自http://www.cnblogs.com/tovin/p/3858065.html 为了更深入的了解spark,现开始对spark源码进行分析,本系列文章以spark ...

  4. Android核心分析之二十一Android应用框架之AndroidApplication

    Android Application Android提供给开发程序员的概念空间中Application只是一个松散的表征概念,没有多少实质上的表征.在Android实际空间中看不到实际意义上的应用程 ...

  5. stringbuffer与stringbuilder的区别?

    1. 在执行速度方面的比较:StringBuilder > StringBuffer 2. StringBuffer与StringBuilder,他们是字符串变量,是可改变的对象,每当我们用它们 ...

  6. 对QT的理解——能在公司里不做Java,不做很偏门的产品,不使用偏门的语言,还有钱挣,要有感恩的心

    我的理解: QT做应用软件可以很强大,界面足够漂亮(最有意思的是QSS,让我刮目相看),应该是足够了.同时QT也提供了源码,不过超级复杂,难以理解,所以还是无法深入底层.另外它提供了一个额外的好处,就 ...

  7. Linux系统VIM编辑器

    vim,linux系统中一款超好用的文本编辑器,是vi的升级版. 三种操作模式 命令模式: 控制光标移动,可对文本进行删除.恢复.黏贴等工作 输入模式: 正常的文本录入 末行模式: 保存,退出与设置编 ...

  8. iMpACT中的Xilinx Prom烧录

    2014-01-06 19:56:37 在http://bbs.21ic.com/icview-361925-1-1.html中有比较详细的介绍. 下面的转自:http://xilinx.eetren ...

  9. 在windows系统上安装VMware Workstation虚拟机,然后在虚拟机VMware Workstation上安装linux系统,在linux系统安装xshell的服务端,在windows系统上安装xshell。用windows系统上的xshell连接到linux

    第一步:安装xshell: 去百度   xshell ,然后安装一下就可以了.就是普通的软件安装,在这里不做过多的接收. 第二步:安装虚拟机VMware Workstation 百度安装,不做过介绍 ...

  10. 《c程序设计语言》读书笔记--统计总的字符数,打印能打印的最多字符

    #include <stdio.h> #define MAXLINE 10 int getline(char line[],int maxline); void copy(char to[ ...