Chinaunix首页 | 论坛 | 博客
  • 博客访问: 47201
  • 博文数量: 8
  • 博客积分: 1446
  • 博客等级: 上尉
  • 技术积分: 100
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-25 22:14
文章分类
文章存档

2011年(2)

2010年(2)

2009年(4)

我的朋友

分类: 嵌入式

2009-12-29 02:04:33

序:个人翻译,技术很烂,不是完全逐字翻译,翻译过程充斥了个人的理解;
    然网络中几乎无完整的关于S3C2440 LCD控制器 数据手册的翻译,庆幸;
    如有错误,在所难免,不吝赐教!
需要PDF文档(包含图片)的朋友,可发我Mail:
 
LCD 控制器
 

LCD控制器支持:

1.       黑白LCD:单色、2 BPP4灰阶)、4 BPP16灰阶)【通过基于时间的抖动算法和帧比率控制方法àFrame Rate Control (FRC)】;
2.       STN LCD(超扭转向列型液晶显示器):8 BPP256色)、12 BPP4096色);
3.       TFT LCD1248BPP(有调色板 TFT),1624 BPP 真彩色 TFT);
 
不同LCD区别:
1.       STN LCD 显示:
①支持3LCD面板:4-bit 双线扫描, 4-bit 单线扫描, and 8-bit 单线扫描显示类型;
②支持单色、4灰阶、16灰阶;
③支持256色和4096色的彩色STN LCD面板;
④支持多种屏幕类型:
      640*480320*240160*160
      最大4Mbytes(最多256色的4096*10242048*20481024*4096等)
2.       TFT LCD 显示:
1248BPP的有调色板 TFT
1624 BPP的无调色板 真彩色TFT
③最大支持16M色的24bit/pixel
④支持多种屏幕类型:
      640*480320*240160*160
      最大4Mbytes(最多64K色的2048*1024等)
2^16=64K,2个字节一个像素,2M个像素,即4Mbytes】。
 
共同点:
LCD控制器有专门的DMA用于支持接收来自主存指定图像缓存区域的数据,同时:
①专门的中断函数(INT_FrSyn and INT_FiCnt)
②主存可用于显存;
③支持多种显示屏(支持硬件在水平和竖直方向上滚动);
④针对不同显示面板,可编程时序控制(timing control);
⑤支持大端、小端,像WinCE的数据格式一样;
⑥支持两种类型的SEC TFT LCD panel
LTS350Q1-PD1: TFT LCD panel with touch panel and front light unit (Reflective type)反射式
LTS350Q1-PD2: TFT LCD panel only
LTS350Q1-PE1: TFT LCD panel with touch panel and front light unit (Transflective type)半反射
LTS350Q1-PE2: TFT LCD panel only
 
注:WinCE doesn’t support 12-bit packed data format. Please check if WinCE can support the 12-bit color-mode.
 
 

外部接口信号:

S3C2410A LCD控制器的外部接口信号有33个,包括24个数据位和9个控制位:
 
VFRAME/VSYNC/STV  帧同步信号(STN/垂直同步信号(TFT)/SEC TFT信号
VLINE/HSYNC/CPV    行同步脉冲信号(STN)/水平同步信号(TFT)/SEC TFT信号
VCLK/LCD_HCLK     像素时钟信号(STN/TFT)/SEC TFT信号
VD[23:0]              LCD像素数据输出端口(STN/TFT/SEC TFT)
VM/VDEN/TP       LCD驱动器的交流偏置信号(STN)/数据使能信号(TFT)/SEC TFT信号
LEND/STH            行结束信号(TFT)/SEC TFT信号
LCD_PWREN          LCD面板电源使能控制信号
LCDVF0              SEC TFT信号OE
LCDVF1              SEC TFT信号REV
LCDVF2              SEC TFT信号REVB
 

LCD控制器模块图:

S3C2440LCD控制器是用于传递图像数据和一些如VFRAME, VLINE, VCLK, VM等必要控制信号。除了控制信号,还有用于传递图像数据的端口VD[23:0]LCD控制器由REGBANK, LCDCDMA,VIDPRCS, TIMEGEN, LPC3600LCC3600)组成。
(寄存器组)有17个可编程设置寄存器和一个256*16位调色板内存,用于配置LCD控制器。
LCDCDMA是一个专用的DMA,用于自动地将图像数据由帧缓冲区传递到LCD驱动端。通过该特殊的DMA,图像数据可不用CPU干预而现实在显示器上。
VIDPRCSLCDCDMA那接收图像数据,并在将数据转化为合适的数据格式后(如4/8-bit单线扫描、4-bit双线扫描显示类型),通过VD[23:0]数据端口,发送到LCD驱动端。
由可编程逻辑组成,它们用于支持不同LCD驱动通用的可变接口时序和速率要求。TIMEGEN模块产生VFRAME, VLINE, VCLK, VM等信号。
 
数据流描述如下:
LCDCDMA有一个FIFO空间,当该空间为空,或部分为空时,LCDCDMA请求以“突发内存传输模式(burst memory transfer mode)”从帧缓冲区获取数据(每个冲突请求连续地向内存提取4Words16bytes,同时在总线传输过程中,总线控制权不转交给其他总线)。当内存控制器中的总线终裁接受该传输请求时,主存将发送4个连续字到内部FIFOFIFO总容量为28Words,其中12WordsFIFOL16WordsFIFOHS3C2440A芯片有2FIFO,以支持双线扫描显示模型。当使用单线扫描时,只有一个FIFOFIFOH)可被使用。
 
 

STN LCD 控制器操作

(未翻译)
 

TFT LCD 控制器操作

、CLKVAL、帧速率

TIMEGENLCD驱动器产生控制信号,如:VSYNC, HSYNC, VCLK, VDEN, LEND等信号。这些信号与(寄存器组)中的LCDCON1/2/3/4/5寄存器的配置密切相关。通过对REGBANK中的LCD控制寄存器进行编程配置,TIMEGEN可以产生不同的合适的控制信号,以支持许多不同类型的LCD驱动。
VSYNC信号(垂直同步信号)使得LCD行指针跳到显示器最顶端从新开始。
VSYNCHSYNC(水平同步信号)的同步脉冲由LCDCON2/3寄存器的HOZVAL域和域的配置决定。HOZVALLINEVAL也可以由LCD面板的尺寸通过以下公式得到:
HOZVAL  =  (Horizontal display size) - 1  //水平
LINEVAL  =  (Vertical display size) - 1    //垂直
 
     VCLK信号速率由LCDCON1寄存器的CLKVAL域决定。下表定义了VCLKCLKVAL的相互关系,CLKVAL的最小值为0.
     VCLK(Hz)  =  HCLK / [ (CLKVAL+1)×2 ]
 
    帧速率就是VSYNC信号频率,它和LCDCON1/2/3/4寄存器中的VSYNC, VBPD, VFPD,
LINEVAL, HSYNC, HBPD, HFPD, HOZVAL, 以及 CLKVAL域有关。大多数LCD驱动器都有它们自己的额定帧速率。其公式如下:
× [  (HSPW+1) + (HBPD+1) + (HFPD+1) + (HOZVAL+1)  ]
× [  2 × ( CLKVAL+1 ) / ( HCLK )  ]  }
 
Relation between VCLK and CLKVAL (TFT, HCLK = 60MHz)
 
TFT LCD控制器支持1248的有调色板显示,1624 BPP的无调色板显示。
芯片提供256色调色板用于色彩映射的多种选择,提供使用者以灵活的操作。
 

存储数据格式(TFT)

本章节包含了每种显示模型的一些例子。

24BPP显示

BSWP = 0, HWSWP = 0, BPP24BL = 0
 
表示一个像素需4个字节,其中24-31位无效
 
BSWP = 0, HWSWP = 0, BPP24BL = 1
 
表示一个像素需4个字节,其中0-7位无效
 
 
像素从左上角开始123...
 
 
 
24BPP VD引脚描述
 
每个颜色8位,共24位,从高位到低位分别是RGB
 
 

16BPP显示

BSWP = 0, HWSWP = 0
 
一个像素16位。每32位,高16位为低像素,低16位为高像素(大端?)
 
BSWP = 0, HWSWP = 1
 
一个像素16位。每32位,低16位为低像素,高16位为高像素(小端?)
 
16BPP VD引脚描述
5:6:5
 
5位(23-19); Green6位(15-10); Blue5位(7-3)。
 
5:5:5:1
 
Red5位(23-19); Green5位(15-11); Blue5位(7-3)。
 
 
注:没用到的VD引脚,可像GPIO一样使用。
 
 

8BPP显示

BSWP = 0, HWSWP = 0
 
一个像素8位。每32位(4个像素),从高位到低位,分别是低位像素至高位像素。(大端?)
 
BSWP = 1, HWSWP = 0
 
一个像素8位。每32位(4个像素),从高位到低位,分别是高位像素至低位像素。(小端?)
 
注:因248BPP使用调色板,故无需RGB
 

4BPP显示

BSWP = 0, HWSWP = 0
 
4位。每32位(8个像素),从高位到低位,分别是低位像素至高位像素。(大端?)
 
BSWP = 1, HWSWP = 0
 
4位。每32位(8个像素),从高位到低位,分别是高位像素至低位像素。(小端?)
 
  

2BPP显示

BSWP = 0, HWSWP = 0
 
一个像素2位。每32位(16个像素),从高位到低位,分别是低位像素至高位像素。(大端?)
 
 

256色调色板用途(TFT)

调色板配置和格式控制

芯片为TFT LCD的控制提供256色调色板
用户可以以两种不同格式选择64K色中的256色(一个颜色16位,故可有64K色,而调色板只使用其中的256色,即FFH
 
256色调色板由256*16-bit SPSRAM组成,支持5:6:5R:G:B)格式和5:5:5:1R:G:B:1)模式。
当用户使用5:5:5:1格式时,“1”位可以看成每个RGB的最低位。我们将格式当成:
R(5+1):G(5+1):B(5+1)格式。举个例子如下:
用户以下图(第二个图)格式写调色板,然后将VD引脚与TFT LCD 面板连接起来
R(5+1)=VD[23:19]+VD[18], VD[10] or VD[2]
G(5+1)=VD[15:11]+ VD[18], VD[10] or VD[2]
B(5+1)=VD[7:3]+VD[18], VD[10] or VD[2]
接着设置LCDCON5寄存器的FRM5650.
 
                                                                                   5:6:5格式
 
                                                                                    5:5:5:1格式
 
1. 是调色板起始地址
2.VD18102具有相同的输出值1
3.每一个索引(INDEX)分配了4bytes空间(如:0x4D000400-0x4D000403
  因此[31:16]位数据是无效的
 
 

调色板的读

    当用户要对调色板做读写操作时,LCDCON5寄存器的VSTATUS必须关闭。当HSTATUSVSTATUS处于活动(ACTIVE)状态时,读写操作是禁止的。
 
 

临时调色板配置

    当需要在一帧上全部显示一种颜色的时候,不需要再通过一个颜色一个颜色地去将帧缓冲区填满,只需将该颜色写入TPAL寄存器的TPALVAL中,并且使能TPALEN
 

其他

 

 
                    
                                                             16BPP Display Types (TFT)
 
 
时序例子:
 

 
                                               TFT LCD Timing Example
 
 

虚拟显示(VIRTUAL DISPLAY)(TFT/STN)

芯片支持 硬件水平/垂直滚动(hardware horizontal or vertical scrolling)。如果屏幕滚动,需要修改LCDSADDR1/2寄存器的LCDBASEULCDBASEL域,而不改变PAGEWIDTHOFFSIZE的值
存储的图像的缓冲区应该比LCD面板的屏幕尺寸大。
下图为单线扫描模式下,虚拟显示中滚动屏幕的例子:
LCDBASEU表示LCD_BASE_UPPER//下面针对FBSA1/2/3寄存器会详细讲解
LCDBASEL表示LCD_BASE_LOWER
PAGEWIDTH表示屏宽度;
LINEVAL表示垂直显示尺寸;
OFFSIZE表示超出的尺寸;
 
                              Example of Scrolling in Virtual Display (Single Scan)
 
 

LCD 电源使能(STN/TFT)

芯片提供电源使能功能(PWREN)。当PWREN被设置为PWREN信号使能时,引脚的输出值将被ENVID控制,也就是说,当LCD_PWREN引脚与LCD面板的电源开关控制引脚相连时,LCD面板的电源将被自动控制设为ENVID值。
芯片同样支持INVPWREN位设置为PWREN信号的反向值。
此功能只能当LCD面板具有自己的电源开关控制引脚,并已与LCD_PWREN引脚相连时有效。
                        Example of PWREN Function (PWREN=1, INVPWREN=0) 
 
 
下篇主要内容为:LCD控制器各寄存器部分
阅读(3350) | 评论(2) | 转发(0) |
0

上一篇:没有了

下一篇:三星S3C2440 Datasheet LCD Controller 章节翻译(2)

给主人留下些什么吧!~~

chinaunix网友2010-01-23 23:41:21

UP

letmego1632009-12-30 23:29:48

ok