我结合友善之臂的配套文档修改LCD驱动,在3.5寸屏上可以显示开机的企鹅LOGO,但我换了LCD2VGA模块后,理论上是配置好VGA显示了,但怎么烧录进去屏幕没显示啊?
LCD部分的修改的代码如下:
首先定义s3c2410fb_display mini2440_lcd_cfg[] __initdata,其中【2】为VGA显示
static struct s3c2410fb_display mini2440_lcd_cfg[] __initdata = {
[0] = { //mini2440 + 3.5" TFT + touchscreen
_LCD_DECLARE(
7, //The 3.5 is quite fast
240, 21, 38, 6, // x timing
320, 4, 4, 2, //y timing
60), //refresh rate
.lcdcon5 = (S3C2410_LCDCON5_FRM565 |
S3C2410_LCDCON5_INVVLINE |
S3C2410_LCDCON5_INVVFRAME |
S3C2410_LCDCON5_INVVDEN |
S3C2410_LCDCON5_PWREN),
},
[1] = { // mini2440 + 7" TFT + touchscreen
_LCD_DECLARE(
10, // the 7" runs slower
800, 40, 40, 48, // x timing
480, 29, 3, 3, // y timing
50), // refresh rate
.lcdcon5 = (S3C2410_LCDCON5_FRM565 |
S3C2410_LCDCON5_INVVLINE |
S3C2410_LCDCON5_INVVFRAME |
S3C2410_LCDCON5_PWREN),
},
[2] = {
_LCD_DECLARE(
10,
1024, 1, 2, 2, // y timing
768, 200, 16, 16, // x timing
24), // refresh rate, maximum stable,tested with the FPGA shield
.lcdcon5 = (S3C2410_LCDCON5_FRM565 |
S3C2410_LCDCON5_HWSWP),
},
};
然后在10fb_mach_info mini2440_fb_info __initdata中调用displays = &mini2440_lcd_cfg[2],
static struct s3c2410fb_mach_info mini2440_fb_info __initdata = {
.displays = &mini2440_lcd_cfg[2],
.num_displays = 1,
.default_display = 0,
.gpcup = (0xf << 1) | (0x3f << 10),
.gpccon = (S3C2410_GPC1_VCLK | S3C2410_GPC2_VLINE |
S3C2410_GPC3_VFRAME | S3C2410_GPC4_VM |
S3C2410_GPC10_VD2 | S3C2410_GPC11_VD3 |
S3C2410_GPC12_VD4 | S3C2410_GPC13_VD5 |
S3C2410_GPC14_VD6 | S3C2410_GPC15_VD7),
.gpccon_mask = (S3C2410_GPCCON_MASK(1) | S3C2410_GPCCON_MASK(2) |
S3C2410_GPCCON_MASK(3) | S3C2410_GPCCON_MASK(4) |
S3C2410_GPCCON_MASK(10) | S3C2410_GPCCON_MASK(11) |
S3C2410_GPCCON_MASK(12) | S3C2410_GPCCON_MASK(13) |
S3C2410_GPCCON_MASK(14) | S3C2410_GPCCON_MASK(15)),
.gpdup = (0x3f << 2) | (0x3f << 10),
.gpdcon = (S3C2410_GPD2_VD10 | S3C2410_GPD3_VD11 |
S3C2410_GPD4_VD12 | S3C2410_GPD5_VD13 |
S3C2410_GPD6_VD14 | S3C2410_GPD7_VD15 |
S3C2410_GPD10_VD18 | S3C2410_GPD11_VD19 |
S3C2410_GPD12_VD20 | S3C2410_GPD13_VD21 |
S3C2410_GPD14_VD22 | S3C2410_GPD15_VD23),
.gpdcon_mask = (S3C2410_GPDCON_MASK(2) | S3C2410_GPDCON_MASK(3) |
S3C2410_GPDCON_MASK(4) | S3C2410_GPDCON_MASK(5) |
S3C2410_GPDCON_MASK(6) | S3C2410_GPDCON_MASK(7) |
S3C2410_GPDCON_MASK(10) | S3C2410_GPDCON_MASK(11)|
S3C2410_GPDCON_MASK(12) | S3C2410_GPDCON_MASK(13)|
S3C2410_GPDCON_MASK(14) | S3C2410_GPDCON_MASK(15)),
};
[ 此帖被jaherson2012在2011-11-04 10:42重新编辑 ]