Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1254005
  • 博文数量: 479
  • 博客积分: 12240
  • 博客等级: 上将
  • 技术积分: 4999
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-24 17:12
文章分类

全部博文(479)

文章存档

2014年(1)

2013年(1)

2012年(1)

2011年(95)

2010年(177)

2009年(167)

2008年(16)

2007年(21)

分类: LINUX

2010-04-01 15:56:00


TFT-4238液晶和原来的TFT-6862差别较大。

这个屏的时钟和信号极性为低电平,需要修改LCD_POL寄存器(0x3104 0008)的bit14为1.

【arch/arm/mach-lpc32xx/clocks-lpc32xx.c】
1623         tmp &= ~(0xF800001F);
1624         tmp &= ~CLCDC_LCDTIMING2_BCD;
1625         tmp |= (div & 0x1F);
1626         tmp |= (((div >> 5) & 0x1F) << 27);
1627         tmp |= (1<<14);//POL low ABING for TFT-4238
1628         __raw_writel(tmp, CLCD_POL(io_p2v(LCD_BASE)));
1629         local_onoff_enable(clk, 1);


【./arch/arm/mach-lpc32xx/clocks-lpc32xx.c】
233 /* TFT-4238 */
234 static struct clcd_panel conn_lcd_panel = {
235     .mode       = {
236         .name       = "QVGA TFT-4238",
237         .refresh    = 65,
238         .xres       = 320,
239         .yres       = 240,
240         .pixclock   = 80000,
241         .left_margin    = 19,
242         .right_margin   = 12,
243         .upper_margin   = 1,
244         .lower_margin   = 4,
245         .hsync_len  = 3,
246         .vsync_len  = 16,
247         .sync       = 1,
248         .vmode      = FB_VMODE_NONINTERLACED,
249     },
250     .width      = -1,
251     .height     = -1,
252     .tim2       = (CLCDC_LCDTIMING2_IVS | CLCDC_LCDTIMING2_IHS),
253     .cntl       = (CNTL_BGR | CLCDC_LCDCTRL_TFT | CNTL_LCDVCOMP(1) |
254                 CLCDC_LCDCTRL_BPP16_565),
255     .bpp        = 16,
256 };
257 #define PANEL_SIZE (3 * SZ_64K)


阅读(1838) | 评论(0) | 转发(1) |
0

上一篇:狗狗离开了,呜呼!

下一篇:我的CU围脖

给主人留下些什么吧!~~