C3000背光驱动
来源:互联网 发布:史前核战争 知乎 编辑:程序博客网 时间:2024/05/18 03:16
修改kernel_imx/drivers/video/backlight/pwm_bl.c就行
void lcd_backlight(int level)
{
unsigned int iPulse;
// printk(KERN_INFO "lcd_backlight.........qiang.......... .\n");
if( level < 9 )
level = 8;
//turn the 0-255 range to mc13892's duty range 0 -32;
level = level / 8;
if (level > 32)
{
iPulse = 1;
}
else
{
iPulse = 32 - level;
}
gpio_set_value(GPIO_LCD_BACKLIGHT, 0);
udelay(2000);
while(iPulse--)
{
gpio_set_value(GPIO_LCD_BACKLIGHT, 1);
udelay(5);//Jo++ 200 0--Hi == 11 us
gpio_set_value(GPIO_LCD_BACKLIGHT, 0);
udelay(5); //Jo++ 200 0--Low == 3 us
}
gpio_set_value(GPIO_LCD_BACKLIGHT, 1);
}
static int pwm_backlight_update_status(struct backlight_device *bl)
{
struct pwm_bl_data *pb = dev_get_drvdata(&bl->dev);
int brightness = bl->props.brightness;
int max = bl->props.max_brightness;
if (bl->props.power != FB_BLANK_UNBLANK)
brightness = 0;
if (bl->props.fb_blank != FB_BLANK_UNBLANK)
brightness = 0;
if (pb->notify)
brightness = pb->notify(pb->dev, brightness);
//add by qiang ////////////////////////
// printk(KERN_INFO "pwm_backlight_update_status.........brightness: %d.......... .\n", brightness);
lcd_backlight(brightness);
/*
if (brightness == 0) {
pwm_config(pb->pwm, 0, pb->period);
pwm_disable(pb->pwm);
} else {
pwm_config(pb->pwm, brightness * pb->period / max, pb->period);
pwm_enable(pb->pwm);
}*/
////////////////////////////////////
return 0;
}
- C3000背光驱动
- C3000 LCD驱动
- 背光驱动
- LCD背光灯驱动
- android 背光驱动
- WINCE背光驱动
- WINCE背光驱动
- LCD 背光驱动移植
- LCD背光驱动 --Backlight
- mini2440之背光驱动
- 2416 wince 背光驱动
- 背光驱动的基本概念
- wince 背光驱动u
- 添加LCD背光驱动
- Win CE5.0背光驱动
- Win CE5.0背光驱动
- wince + 6410 背光驱动记录
- Android中LCD背光驱动
- 算法:N个人围成一个圈,逢3出列。求最后一人的编号。(约瑟夫环)
- Android px、dp、sp之间相互转换
- 《编程之美》寻找发帖水王扩展问题的代码实现
- 网站优化当中为什么site指数和domain数据会大起大落
- Service
- C3000背光驱动
- CentOS 6.x 安装JDK及系统配置
- MPlayer快捷键
- C/C++ 面试经典基础题剖析
- Android Contacts(二)—— SMS 短信 与 Contacts 联系人关联
- 【个人管理】Nicholas C. Zakas:我得到的最佳职业生涯建议
- JS时间比较大小和时间相加
- LED点阵的共阳与共阴
- 怎么进入安全模式