hi all,
我现在使用i.mx6q的RGB接口来驱动3.1inch的LCD,18bit,通过spi初始化(这里使用GPIO模拟SPI)。所用系统为android4.3,Linux3.0.35..LCD控制ic为hx8369a。所用板子的RGB接口可以使用RGB转VGA转接板,连接到电脑显示器上显示,也就是此RGB接口是没有问题的。
现在初始化成功,能点亮LCD了。但是遇到几个问题:
1.图像为隔行显示的,而不是逐行
2.图像分成4部分
3.图像偏移




我修改代码如下:
1.board-mx6q_sabresd.c
static struct ipuv3_fb_platform_data sabresd_fb_data[] = {
{
.disp_dev = "lcd",
.interface_pix_fmt = IPU_PIX_FMT_RGB666,
.mode_str = "LCD-WVGA",
.default_bpp = 18,
.int_clk = false,
.late_init = false,
},
{
.disp_dev = "hdmi",
.interface_pix_fmt = IPU_PIX_FMT_RGB24,
.mode_str = "1920x1080M@60",
.default_bpp = 32,
.int_clk = false,
.late_init = false,
},
};
static struct fsl_mxc_lcd_platform_data lcdif_data = {
.ipu_id = 0,
.disp_id = 0,
.default_ifmt = IPU_PIX_FMT_RGB666,
};
2.mxc_lcdif.c
| { |
| "LCD-WVGA", 60, 480, 800, 33105, |
| 30, 80, |
| 4, 4, |
| 10, 4, |
| 0, |
| FB_VMODE_NONINTERLACED, |
| 0,}, |
3.uboot启动参数使用:
setenv bootargs console=ttymxc0,115200 androidboot.console=ttymxc0 vmalloc=400M init=/init video=mxcfb0:dev=lcd,LCD-WVGA,if=RGB666,bpp=18 video=mxcfb1:off video=mxcfb2:off video=mxcfb3:off fbmem=40M an@@@@ !droidboot.hardware=freescale
4.LCD SPI初始化代码tl032wvv02_gpio.c
LCD初始化代码部分已经和LCD厂家,控制ic厂家进行联合调试,调整初始化LCD寄存器对显示效果基本没有影响,怎么调还是上面的显示效果。
然后调整mxc_lcdif.c中的lcd参数,不管怎么调整,图像显示效果都是隔行显示的,不能出现逐行显示的效果。
然后调整hfp hbp这两个参数,除了上面红字部分的,如果改成其他,不管参数增加还是减小,图像会分成更加多块,或者倾斜混乱了,完全没有改善一点的迹象。
LCD原理图,规格书,datasheet和相关代码文件在下面附近中。
LCD的电路已经多次确认是好的,信号也是正确的。
请帮忙分析以上问题,给出建议或者思路!
谢谢
Original Attachment has been moved to: tl032wvv02_gpio.c.zip
Original Attachment has been moved to: mxc_lcdif.c.zip