| 
 | 
 
我使用tq2440接lcd转vga模块,在linux-2.6.25中有关于1024x768显示模式下LCD控制寄存器的设置: 
#elif defined(CONFIG_FB_S3C24X0_TFT1024768) 
        .width                = 1024, //图像的宽度 
        .height                = 768, //图像的高度 
        .pixclock        = 40000, //像素时钟周期/* HCLK 100 MHz, divisor 1 */ 
        .setclkval        = 0x3, //LCD的时钟设置参数 
        .xres                = 1024, //图像的宽度 
        .yres                = 768, //图像的高度 
        .bpp                = 16, //像素位宽 
        .left_margin        = 199,        /* HFPD水平同步信号的前肩*/ 
        .right_margin        = 15,        /* HBPD水平同步信号的后肩*/ 
        .hsync_len        = 15,        /* HSPW水平同步信号的脉宽*/ 
        .upper_margin        = 1,        /* VFPD垂直同步信号的前肩*/ 
        .lower_margin        = 1,        /* VBPD垂直同步信号的后肩*/  
        .vsync_len        = 1,        /* VSPW垂直同步信号的脉宽*/ 
由以上各参数的值,结合以下三个公式: 
VCLK = HCLK/[(CLKVAL+1)x2]                                    (1) 
VFRAME=HCLK/[(CLKVAL+1)x2]/{(VSPW+1+VBPD+1+LCD_YSIZE_TFT+VFPD+1)*(HSPW+1+HSPD+1+HFPD+1+LCD_XSIZE_TFT)}                     (2) 
pixclock=1/VCLK                                              (3) 
推得 
  
Pixclock=40000,结合(3)得VCLK=25MHz,由于HCLK=100MHz,结合(1)得CLKVAL=1,而setclkval= 0x3,如何求得? 
 
还有我想知道.left_margin        = 199,        /* HFPD水平同步信号的前肩*/ 
                .right_margin        = 15,        /* HBPD水平同步信号的后肩*/ 
                .hsync_len        = 15,        /* HSPW水平同步信号的脉宽*/ 
                .upper_margin        = 1,        /* VFPD垂直同步信号的前肩*/ 
                .lower_margin        = 1,        /* VBPD垂直同步信号的后肩*/  
                .vsync_len        = 1,        /* VSPW垂直同步信号的脉宽*/ 
中各值是如何求得的? 
 |   
 
 
 
 |