TFT LCD 是以前常用的一类显示设备,进行每行像素扫描后,再进行列像素扫描,并完整的将图像显示上去;
这里以 TFT-LCD LQ035NC111 为例,看看 TFT LCD 的时序规则;
Datasheet 的 PDF 链接为:
http://aitendo3.sakura.ne.jp/aitendo_data/product_img/lcd/tft/AT035DL01/LQ035NC111.pdf
这是一款 320X240 的 LCD,Datasheet 中已经描述了很多具体的参数,这里不在多讲,主要关心它的时序驱动部分;
它支持 RGB 数据串行和 RGB 并行(24 bits),即,RGB 数据能够通过一条线传输给 LCD(R-G-B),也可以通过3路传输,这里我们关心并行数据传输的参数
| Signal | Item | Symbol | Min | Typ | Max | Unit |
|---|---|---|---|---|---|---|
| Dclk | 频率 (Frequency) | Tosc | - | 156 | - | ns |
| 最大时间 (High Time) | Tch | - | 78 | - | ns | |
| 最小时间 (Low Time) | Tcl | - | 78 | - | ns | |
| Data | 建立时间 (Setup Time) | Tsu | 12 | - | - | ns |
| 保持时间 (Hold Time) | Thd | 12 | - | - | ns | |
| Hsync | 周期 (Period) | TH | - | 408 | - | Tosc |
| 脉冲宽度 (Pulse Width) | THS | 5 | 30 | - | Tosc | |
| 后延 (Back-Porch) | THB | - | 38 | - | Tosc | |
| 显示周期 (Display Period) | TEP | - | 320 | - | Tosc | |
| 同步周期 (Hsync-den time) | THE | 36 | 68 | 88 | Tosc | |
| 前沿 (Front-Porch) | THF | - | 20 | - | Tosc | |
| Vsync | 周期 (Period) | TV | - | 262 | - | TH |
| 脉冲宽度 (Pulse Width) | TVS | 1 | 3 | 5 | TH | |
| 后延 (Back-Porch) | TVB | - | 15 | - | TH | |
| 显示周期 (Display Period) | TVD | -- | 240 | - | TH | |
| 前沿 (Front-Porch) | TVF | 2 | 4 | - | TH |
Notes:
1. Thp + Thb = 68, the user is make up by yourself
2. Tv = Tvs + Tvb + Tvd + Tvf , the user is make up by yourself
3. When SYNC mode is used,1st data start from 68th Dclk after Hsync falling
除了 Vsync/Hsync 的信号以外,数据通道由 24 bit RGB 组成,即 RGB888(R-8bits,G-8bits,B-8bits),同时,需要提供 CLK 时钟信号和 DE (Data Enable) 使能信号;
根据 Datasheet,Vsync 和 Hsync 信号的时序如下所示:
与 VGA 的时序类似,都存在 V/H 的信号控制和相应的时间长度;VSYNC 是每一场的同步起始,HSYNC 是每一行的同步起始;与 VGA 不同的是,LCD 的信号多了一个同步时钟 DCLK 信号;后面会说这个时钟的值;
在 VSYNC/HSYNC 以及相关的配合时序之下,放大 Valid Data ,如果是并行的 24bit RGB 数据的话,那么是下面时序:
DE 是 Data Enable 的含义,即,数据有效时刻;
D0X/D1X/D2X 分别代表 R/G/B 的分量,每组 8bit,R0~R7,G0~G7,B0~B7;
当然,这款 TFT LCD 也支持其他方式来驱动,在说这个之前,先看看 LCD 的管脚定义:
一共提供了 54 Pins,其中的 IF0~IF2 三个管脚定义了当前输入 LCD 的数据类型:
我们这里使用的是并行 RGB,所以 IF0/1/2 都是 0,同时定义了操作时钟也就是 DCLK 为 6.5MHz(其实也就是最开始的那个表里面的 156ns 的 Clock)