Linux驱动开发之LCD显示驱动调试

一、引言

在实际项目中,LCD显示驱动调试是一件十分平常却又十分重要的事情,但因为每个项目的LCD屏都不同,所以每换一个项目都需要重新调试。

而对于带LCD屏的项目,又分为两种类型,一种是一体机,一种是分体机。

一体机:视频信号直接由信号线从cpu连接到屏端的TCON显示芯片。

分体机:视频信号先由cpu到主板的串行器,再由串行器加串,途经LVDS差分信号线到达屏端的解串器,屏端解串器解串LVDS信号,最终将其输入到屏端TCON显示芯片上去。

不过,不管是一体机还是分体机,都需要设置屏参。

这里只介绍一体机。

二、LCD屏参

1、LCD的基本显示原理

如果我们想了解LCD屏参到底是什么?首先需要了解LCD屏幕的基本显示原理。

以RGB LCD屏来举例,该显示屏的显示由许多个像素点组成,而每个像素点又是由一组组的RGB信号组成。LCD屏想要显示出特定的图像,首先就需要规定扫描方式,所谓扫描,其实就是将一帧图像的每一个像素点给点缀到LCD屏幕上。

早期的时候,传统显示屏依靠行场同步信号和CLK时钟信号来确定一帧图像的每一个像素点的扫描顺序。到后来,随着科技的进步,DE显示屏出现,而他,则不再需要依靠行场同步信号,只需要DE信号和CLK时钟信号,就可以确定每一个像素点的位置。

2、LCD屏参

首先,我们先来看一下RGB信号线有哪些?

 不论是DE模式,还是HV模式,只要是RGB LCD屏,那它的信号线就有这些。

我们再由下面这张图来认识一下所谓的LCD屏参有哪些?

LCD在显示可视数据之前,在行数据上有HFP(行前肩)、HBP(行后肩)、HSYNC(行同步),在列数据上有VFP(场前肩)、VBP(场后肩)、VSYNC(场同步)。

因为不是所有的数据都是可以显示的数据,所以LCD的驱动和LCD之间需要采用某种方式来同步,比如让LCD知道现在我在发送的是HFP时序,你不要显示出来;或者通知LCD,现在开始后面的数据是可视数据,你可以开始显示了。

三、实例展示

下面我展示一个最近调试的一个项目所用的LCD,来看一下他的LCD屏参该如何配置。

首先看到上图,这张图主要介绍了该LCD的一些基本信息。由图可知,该LCD是一个7寸大小的分辨率为800*480的RGB TFT显示屏,没有图像数据的时候,正常显示为白色。

再看“Interface”这一栏,为Digital,标示该LCD为ttl接口的屏。(LCD屏接口有两种,一种是RGB TTL,一种为LVDS。) 

该图为规格书中对Pin脚功能注解之后的补充。

由Note1可知,配置MODE Pin脚的电平高低, 可以选择LCD为DE或者SYNC(HV)模式、

由Note2可知,LCD可以配置RGB信号的位数,当配置RGB信号为RGB666时,需要将RGB的信号线的低两位接地。(RGB信号有好几种,比如RGB888、RGB666,如RGB888就代表每一种颜色占8位,也就是一个字节。)

由Note3可知,数据被锁定在时钟的下降沿,我的理解是,这里就是告诉我们时钟极性为负。

上图,则是屏参中的timing部分。 

Horizontal Display Area为行有效显示区域,由图可知为TYP,也就是典型值为800。
DCLK Frequency为时钟频率,TYP为33.3M。
One Horizontal Line为行总长度(它=前肩+后肩+sync+有效显示区域),TYP为1056。
HS pulse width为行SYNC值,TYP在1到40之间。
HS Blankin在这里可以理解为后肩,TYP为46。
HS Front Porch为前肩,TYP为210。
场有效显示区域,场总长度,场前肩、后肩、SYNC同理可知。
Tips: DCLK Frequency = One Horizontal Line * VS period time * 刷新率(这里为60)。

四、补充

以上介绍的LCD接口为RGB TTL,因此有部分屏参并没有能展示出来。
LVDS接口的LCD还需要配置一个RGB DATA格式,它分为两种:VESA、JEIDA。
这两种数据标准的区别在于:

每对低压差分信号上传输的 R、G、B 三色的位数和 HS 、VS、DE 位置不同。

1. 8bit 液晶屏需要 4 对差分对传输 R、G、B 三色和 HS 、VS、DE控制信号

(1)对应到 VESA 接口标准
0+/-:R0,R1,R2,R3,R4,R5,G0
1+/-:G1,G2,G3,G4,G5,B0,B1
2+/-:B2,B3,B4,B5,HS,VS,DE
3+/-:R6,R7,G6,G7,B6,B7, 0

(2)对应到 JEIDA接口标准
0+/-:R2,R3,R4,R5,R6,R7,G2
1+/-:G3,G4,G5,G6,G7,B2,B3
2+/-:B4,B5,B6,B7,HS,VS,DE
3+/-:R0,R1,G0,G1,B0,B1, 0

2. 10bit 液晶屏需要 5 对差分对传输 R、G、B 三色和 HS 、VS、DE控制信号

(1)对应到 VESA 接口标准
0+/-:R0,R1,R2,R3,R4,R5,G0
1+/-:G1,G2,G3,G4,G5,B0,B1
2+/-:B2,B3,B4,B5,HS,VS,DE
3+/-:R6,R7,G6,G7,B6,B7, 0
4+/-:R8,R9,G8,G9,B8,B9, 0

(2)对应到 JEIDA接口标准
0+/-:R4,R5,R6,R7,R8,R9,G4
1+/-:G5,G6,G7,G8,G9,B4,B5
2+/-:B6,B7,B8,B9,HS,VS,DE
3+/-:R2,R3,G2,G3,B2,B3, 0
4+/-:R0,R1,G0,G1,B0,B1, 0

  • 2
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值