LCD和触摸屏原理
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2009-4-16
10
LCD和触摸屏原理
2009-4-16
11
LCD和触摸屏原理
上面的图显示了液晶屏幕的时序关系,一般而言,这些时序 是可以设置的以实验板所用的液晶屏为例,这些时序是可以 通过IIC接口进行设置的.下面是LTV350QV-F04数据手册里的 截图:
Biblioteka Baidu
2009-4-16
12
LCD和触摸屏原理
2009-4-16
8
LCD和触摸屏原理
1.7 LCD简介 响应时间 响应时间是指液晶显示器各像素点对输入信号反应的速 度,此值当然是越小越好.如果响应时间太长了,就有可能 使液晶显示器在显示动态图像时,有尾影拖曳的感觉.一般 的液晶显示器的响应时间在20~30ms之间.
2009-4-16
9
LCD和触摸屏原理
LCD驱动器和触摸屏原理
宗晓东
华中科技大学工程实训中心
2009.3.29
2009-4-16
1
前言: 今天主要介绍LCD和触摸屏的 原理,以及相关程序的编写.
2009-4-16
2
LCD和触摸屏原理
1.1 LCD简介
LCD 是 Liquid Crystal Display 的简称,LCD 的构造 是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间 有许多垂直和水平的细小电线,透过通电与否来控制杆状 水晶分子改变方向,将光线折射出来产生画面.比CRT要 好的多,但是价钱较其贵. 液晶显示器按照控制方式不同可分为被动矩阵式LCD 及主动矩阵式LCD两种.
2009-4-16
21
LCD和触摸屏原理
2009-4-16
22
LCD和触摸屏原理
rLCDCON3=(HBPD_320240<<19)|\ (HOZVAL_TFT_320240<<8)|(HFPD_320240); rLCDCON4=(MVAL<<8)|(HSPW_320240); 这几行定义了水平的时序,包括水平像素的数量等 这些设置类似于前面的列设置.如果想详细了解可以 参考2410的数据手册. rLCDCON5=(0<<12)|(1<<10)|(1<<9)|\ (1<<8)|(0<<7)|(BSWP<<1)|(HWSWP); 这一个寄存器主要设置一些控制信号的极性.
2009-4-16
13
LCD和触摸屏原理
IIC可以设置LTV350QV-F04的时序:
2009-4-16
14
LCD和触摸屏原理
2410内部集成了LCD控制器,可以驱动多种型号的液晶屏 下面是其内部的结构图:
2009-4-16
15
LCD和触摸屏原理
在上面的图中R0,R1…代表LTV350QV-F04内部的寄存器. 其中的数值主要是用来设置LCD的时序属性和颜色属性 等.在实验板上所用的LCD上,有一块单片机.这块单片 机负责在上电的时候,将LCD初始化,所以自己不用写 初始化程序.只需要设置相关的寄存器就可以了. 下面详细分析LCD程序.
2009-4-16
3
LCD和触摸屏原理
1.2 LCD简介 1. 被动矩阵式LCD在亮度及可视角方面受到较大的 限制,反应速度也较慢.由于画面质量方面的问题,使得 这种显示设备不利于发展为桌面型显示器,但由于成本低 廉的因素,市场上仍有部分的显示器采用被动矩阵式LCD. 被动矩阵式LCD又可分为TN-LCD(Twisted Nematic-LCD,扭 曲向列LCD),STN-LCD(Super TN-LCD,超扭曲向列LCD)和 DSTN-LCD(Double layer STN-LCD,双层超扭曲向列LCD). 2. 目前应用比较广泛的主动矩阵式LCD,也称TFTLCD(Thin Film Transistor-LCD,薄膜晶体管LCD).TFT液 晶显示器是在画面中的每个像素内建晶体管,可使亮度更 明亮,色彩更丰富及更宽广的可视面积.与CRT显示器相比, LCD显示器的平面显示技术体现为较少的零件,占据较少的 桌面及耗电量较小,但CRT技术较为稳定成熟. .
void PutPixel(unsigned int x,unsigned int y,unsigned int c) { if(x<SCR_XSIZE_TFT_320240 && y<SCR_YSIZE_TFT_320240) frameBuffer24BitTft320240[(y)][(x)]=c; }
2009-4-16
23
LCD和触摸屏原理
下面几个寄存器主要设置了LCD缓冲区的地址. rLCDSADDR1=\ (((unsigned int)frameBuffer24BitTft320240>>22)<<21)| (M5D((unsigned int)frameBuffer24BitTft320240>>1)); 其中M5D是一个宏定义,其作用是取一个32位数的低21位 其中frameBuffer24BitTft320240是指向缓冲区的指针. 从前面的定义可以看出,这个指针的数值是:0x33800000 这个寄存器的设置可以参照下一页的图:
2009-4-16
26
LCD和触摸屏原理
2009-4-16
27
LCD和触摸屏原理
2009-4-16
28
LCD和触摸屏原理
rLCDINTMSK|=(3); // MASK LCD Sub Interrupt rLPCSEL&=(~7); // Disable LPC3600 rTPAL=0; // Disable Temp Palette } 经过禁止中断,禁止LPC3600和禁止暂时色彩寄存器之后 初始化工作就完成了. 接下来设置视频输出就可以了.
2009-4-16
24
LCD和触摸屏原理
2009-4-16
25
LCD和触摸屏原理
rLCDSADDR2=\ M5D( ((unsigned int)frameBuffer24BitTft320240+\ (SCR_XSIZE_TFT_320240*LCD_YSIZE_TFT_320240*4))>>1); 个寄存器定义了单扫描模式下,缓冲区的地结束地址. rLCDSADDR3=\ (((SCR_XSIZE_TFT_320240-LCD_XSIZE_TFT_320240)*2)<<11)| (LCD_XSIZE_TFT_320240*2); 这句定义了一些地址偏移量. 具体的含义见下面的图:
2009-4-16
4
LCD和触摸屏原理
1.3 LCD简介 因为开发板的液晶屏是TFT,下面主要介绍主动式的. TFT-LCD液晶显示器的结构与TN-LCD液晶显示器基本相 同,只不过将TN-LCD上夹层的电极改为FET晶体管,而下夹 层改为共通电极. TFT-LCD液晶显示器的工作原理与TN-LCD却有许多不同 之处.TFT-LCD液晶显示器的显像原理是采用"背透式"照 射方式.当光源照射时,先通过下偏光板向上透出,借助液 晶分子来传导光线.由于上下夹层的电极改成FET电极和共通 电极,在FET电极导通时,液晶分子的排列状态同样会发生改 变,也通过遮光和透光来达到显示的目的.但不同的是,由 于FET晶体管具有电容效应,能够保持电位状态,先前透光的 液晶分子会一直保持这种状态,直到FET电极下一次再加电改 变其排列方式为止. 2009-4-16 .
2009-4-16
19
LCD和触摸屏原理
2009-4-16
20
LCD和触摸屏原理
rLCDCON2=\ (VBPD_320240<<24)|(LINEVAL_TFT_320240<<14)|\ (VFPD_320240<<6)|(VSPW_320240); 这段代码设置了LCD的驱动时序,和屏幕的行数. 这些数值在前面的宏定义中定义了.并且由于 实验板所用的LCD屏幕是用单片机初始化的.所以 这些值都是固定的数值. 下面一页是这个寄存器的定义:
2.1 LCD的驱动时序: LCD的接口(LTV350QV-F04): VD[23:0]:LCD数据 VDEN:数据使能 VCLK:时钟信号 VLINE:行扫描信号 LEND:行结束信号 VFRAME:帧扫描信号 HSYNC:水平同步信号 VSYNC:垂直同步信号 VM:显示驱动交流信号 LCDVF0,LCDVF1,LCDVF2:时序控制信号 下面介绍LTV350QV-F04的时序图:
void Lcd_EnvidOnOff(int onoff) { if(onoff==1) rLCDCON1|=1; // ENVID=ON else rLCDCON1 =rLCDCON1 & 0x3fffe; // ENVID Off }
2009-4-16
29
LCD和触摸屏原理
下面结合所给的程序例子,来分析LCD绘图函数的实现:
2009-4-16
17
LCD和触摸屏原理
下面真对程序分析LCD驱动的基本原理: void Lcd_Port_Init(void) { rGPCUP = 0x0; rGPCCON = 0xaaaa56a9; rGPDUP = 0x0 ; rGPDCON=0xaaaaaaaa; } 这一段程序主要对LCD所对应的端口进行配置 配置为LCD接口.
2009-4-16
7
LCD和触摸屏原理
1.6 LCD简介 色彩度: LCD重要的当然是的色彩表现度.我们知道自然界的任何一 种色彩都是由红,绿,蓝三种基本色组成的.LCD面板上是 由1024×768个像素点组成显像的,每个独立的像素色彩是 由红,绿,蓝(R,G,B)三种基本色来控制.大部分厂商生产 出来的液晶显示器,每个基本色(R,G,B)达到6位,即64种 表现度,那么每个独立的像素就有64×64×64=262144种色 彩.也有不少厂商使用了所谓的FRC(Frame Rate Control)技 术以仿真的方式来表现出全彩的画面,也就是每个基本色(R, G,B)能达到8位,即256种表现度,那么每个独立的像素就 有高达256×256×256=16777216种色彩了.可以看网页示 例
5
LCD和触摸屏原理
1.4 LCD简介
对于LCD比较重要的参数如下: 1. 可视面积 2. 可视角度 3. 点距 4. 色彩度 5. 对比值 6. 亮度值 7. 响应时间 下面介绍比较重要的一些参数的含义.
2009-4-16
6
LCD和触摸屏原理
1.5 LCD简介 点距: 我们常问到液晶显示器的点距是多大,但是多数人并不 知道这个数值是如何得到的,现在让我们来了解一下它究竟 是如何得到的.举例来说一般14英寸LCD的可视面积为285.7 mm×214.3mm,它的最大分辨率为1024×768,那么点距就 等于:可视宽度/水平像素(或者可视高度/垂直像素),即285.7 mm/1024=0.279mm(或者是214.3mm/768=0.279mm).
2009-4-16
18
LCD和触摸屏原理
下面一个函数是对LCD控制寄存器进行赋值,使其可以 驱动特定的液晶屏幕: void Lcd_Init(void) { frameBuffer24BitTft320240=\ (unsigned int (*)[SCR_XSIZE_TFT_320240])LCDFRAMEBUFFER; 上面一行指定了一个2维数组——frameBuffer24BitTft320240 这个数组对应的就是LCD显示的缓冲区. rLCDCON1=\ (CLKVAL_TFT_320240<<8)|(MVAL_USED<<7)|(3<<5)|(13<<1)|0; 上面一行设置了LCDCON1寄存器,设置了像素时钟频率, 设置显示模式为TFT LCD,并且像素宽度24bit,LCD输出禁止.
2009-4-16
16
LCD和触摸屏原理
#define LCD_XSIZE_TFT_320240 (320) #define LCD_YSIZE_TFT_320240 (240) 关于屏幕大小的宏定义. #define SCR_XSIZE_TFT_320240 (LCD_XSIZE_TFT_320240*2) #define SCR_YSIZE_TFT_320240 (LCD_YSIZE_TFT_320240*2) 这两句定义了虚拟屏幕的大小. #define VBPD_320240 ((14)&0xff) #define VFPD_320240 ((3)&0xff) #define VSPW_320240 ((2) &0x3f) #define HBPD_320240 ((37)&0x7f) #define HFPD_320240 ((19)&0xff) #define HSPW_320240 ((29)&0xff) 这几句设置了LCD时序的一些参数.
10
LCD和触摸屏原理
2009-4-16
11
LCD和触摸屏原理
上面的图显示了液晶屏幕的时序关系,一般而言,这些时序 是可以设置的以实验板所用的液晶屏为例,这些时序是可以 通过IIC接口进行设置的.下面是LTV350QV-F04数据手册里的 截图:
Biblioteka Baidu
2009-4-16
12
LCD和触摸屏原理
2009-4-16
8
LCD和触摸屏原理
1.7 LCD简介 响应时间 响应时间是指液晶显示器各像素点对输入信号反应的速 度,此值当然是越小越好.如果响应时间太长了,就有可能 使液晶显示器在显示动态图像时,有尾影拖曳的感觉.一般 的液晶显示器的响应时间在20~30ms之间.
2009-4-16
9
LCD和触摸屏原理
LCD驱动器和触摸屏原理
宗晓东
华中科技大学工程实训中心
2009.3.29
2009-4-16
1
前言: 今天主要介绍LCD和触摸屏的 原理,以及相关程序的编写.
2009-4-16
2
LCD和触摸屏原理
1.1 LCD简介
LCD 是 Liquid Crystal Display 的简称,LCD 的构造 是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间 有许多垂直和水平的细小电线,透过通电与否来控制杆状 水晶分子改变方向,将光线折射出来产生画面.比CRT要 好的多,但是价钱较其贵. 液晶显示器按照控制方式不同可分为被动矩阵式LCD 及主动矩阵式LCD两种.
2009-4-16
21
LCD和触摸屏原理
2009-4-16
22
LCD和触摸屏原理
rLCDCON3=(HBPD_320240<<19)|\ (HOZVAL_TFT_320240<<8)|(HFPD_320240); rLCDCON4=(MVAL<<8)|(HSPW_320240); 这几行定义了水平的时序,包括水平像素的数量等 这些设置类似于前面的列设置.如果想详细了解可以 参考2410的数据手册. rLCDCON5=(0<<12)|(1<<10)|(1<<9)|\ (1<<8)|(0<<7)|(BSWP<<1)|(HWSWP); 这一个寄存器主要设置一些控制信号的极性.
2009-4-16
13
LCD和触摸屏原理
IIC可以设置LTV350QV-F04的时序:
2009-4-16
14
LCD和触摸屏原理
2410内部集成了LCD控制器,可以驱动多种型号的液晶屏 下面是其内部的结构图:
2009-4-16
15
LCD和触摸屏原理
在上面的图中R0,R1…代表LTV350QV-F04内部的寄存器. 其中的数值主要是用来设置LCD的时序属性和颜色属性 等.在实验板上所用的LCD上,有一块单片机.这块单片 机负责在上电的时候,将LCD初始化,所以自己不用写 初始化程序.只需要设置相关的寄存器就可以了. 下面详细分析LCD程序.
2009-4-16
3
LCD和触摸屏原理
1.2 LCD简介 1. 被动矩阵式LCD在亮度及可视角方面受到较大的 限制,反应速度也较慢.由于画面质量方面的问题,使得 这种显示设备不利于发展为桌面型显示器,但由于成本低 廉的因素,市场上仍有部分的显示器采用被动矩阵式LCD. 被动矩阵式LCD又可分为TN-LCD(Twisted Nematic-LCD,扭 曲向列LCD),STN-LCD(Super TN-LCD,超扭曲向列LCD)和 DSTN-LCD(Double layer STN-LCD,双层超扭曲向列LCD). 2. 目前应用比较广泛的主动矩阵式LCD,也称TFTLCD(Thin Film Transistor-LCD,薄膜晶体管LCD).TFT液 晶显示器是在画面中的每个像素内建晶体管,可使亮度更 明亮,色彩更丰富及更宽广的可视面积.与CRT显示器相比, LCD显示器的平面显示技术体现为较少的零件,占据较少的 桌面及耗电量较小,但CRT技术较为稳定成熟. .
void PutPixel(unsigned int x,unsigned int y,unsigned int c) { if(x<SCR_XSIZE_TFT_320240 && y<SCR_YSIZE_TFT_320240) frameBuffer24BitTft320240[(y)][(x)]=c; }
2009-4-16
23
LCD和触摸屏原理
下面几个寄存器主要设置了LCD缓冲区的地址. rLCDSADDR1=\ (((unsigned int)frameBuffer24BitTft320240>>22)<<21)| (M5D((unsigned int)frameBuffer24BitTft320240>>1)); 其中M5D是一个宏定义,其作用是取一个32位数的低21位 其中frameBuffer24BitTft320240是指向缓冲区的指针. 从前面的定义可以看出,这个指针的数值是:0x33800000 这个寄存器的设置可以参照下一页的图:
2009-4-16
26
LCD和触摸屏原理
2009-4-16
27
LCD和触摸屏原理
2009-4-16
28
LCD和触摸屏原理
rLCDINTMSK|=(3); // MASK LCD Sub Interrupt rLPCSEL&=(~7); // Disable LPC3600 rTPAL=0; // Disable Temp Palette } 经过禁止中断,禁止LPC3600和禁止暂时色彩寄存器之后 初始化工作就完成了. 接下来设置视频输出就可以了.
2009-4-16
24
LCD和触摸屏原理
2009-4-16
25
LCD和触摸屏原理
rLCDSADDR2=\ M5D( ((unsigned int)frameBuffer24BitTft320240+\ (SCR_XSIZE_TFT_320240*LCD_YSIZE_TFT_320240*4))>>1); 个寄存器定义了单扫描模式下,缓冲区的地结束地址. rLCDSADDR3=\ (((SCR_XSIZE_TFT_320240-LCD_XSIZE_TFT_320240)*2)<<11)| (LCD_XSIZE_TFT_320240*2); 这句定义了一些地址偏移量. 具体的含义见下面的图:
2009-4-16
4
LCD和触摸屏原理
1.3 LCD简介 因为开发板的液晶屏是TFT,下面主要介绍主动式的. TFT-LCD液晶显示器的结构与TN-LCD液晶显示器基本相 同,只不过将TN-LCD上夹层的电极改为FET晶体管,而下夹 层改为共通电极. TFT-LCD液晶显示器的工作原理与TN-LCD却有许多不同 之处.TFT-LCD液晶显示器的显像原理是采用"背透式"照 射方式.当光源照射时,先通过下偏光板向上透出,借助液 晶分子来传导光线.由于上下夹层的电极改成FET电极和共通 电极,在FET电极导通时,液晶分子的排列状态同样会发生改 变,也通过遮光和透光来达到显示的目的.但不同的是,由 于FET晶体管具有电容效应,能够保持电位状态,先前透光的 液晶分子会一直保持这种状态,直到FET电极下一次再加电改 变其排列方式为止. 2009-4-16 .
2009-4-16
19
LCD和触摸屏原理
2009-4-16
20
LCD和触摸屏原理
rLCDCON2=\ (VBPD_320240<<24)|(LINEVAL_TFT_320240<<14)|\ (VFPD_320240<<6)|(VSPW_320240); 这段代码设置了LCD的驱动时序,和屏幕的行数. 这些数值在前面的宏定义中定义了.并且由于 实验板所用的LCD屏幕是用单片机初始化的.所以 这些值都是固定的数值. 下面一页是这个寄存器的定义:
2.1 LCD的驱动时序: LCD的接口(LTV350QV-F04): VD[23:0]:LCD数据 VDEN:数据使能 VCLK:时钟信号 VLINE:行扫描信号 LEND:行结束信号 VFRAME:帧扫描信号 HSYNC:水平同步信号 VSYNC:垂直同步信号 VM:显示驱动交流信号 LCDVF0,LCDVF1,LCDVF2:时序控制信号 下面介绍LTV350QV-F04的时序图:
void Lcd_EnvidOnOff(int onoff) { if(onoff==1) rLCDCON1|=1; // ENVID=ON else rLCDCON1 =rLCDCON1 & 0x3fffe; // ENVID Off }
2009-4-16
29
LCD和触摸屏原理
下面结合所给的程序例子,来分析LCD绘图函数的实现:
2009-4-16
17
LCD和触摸屏原理
下面真对程序分析LCD驱动的基本原理: void Lcd_Port_Init(void) { rGPCUP = 0x0; rGPCCON = 0xaaaa56a9; rGPDUP = 0x0 ; rGPDCON=0xaaaaaaaa; } 这一段程序主要对LCD所对应的端口进行配置 配置为LCD接口.
2009-4-16
7
LCD和触摸屏原理
1.6 LCD简介 色彩度: LCD重要的当然是的色彩表现度.我们知道自然界的任何一 种色彩都是由红,绿,蓝三种基本色组成的.LCD面板上是 由1024×768个像素点组成显像的,每个独立的像素色彩是 由红,绿,蓝(R,G,B)三种基本色来控制.大部分厂商生产 出来的液晶显示器,每个基本色(R,G,B)达到6位,即64种 表现度,那么每个独立的像素就有64×64×64=262144种色 彩.也有不少厂商使用了所谓的FRC(Frame Rate Control)技 术以仿真的方式来表现出全彩的画面,也就是每个基本色(R, G,B)能达到8位,即256种表现度,那么每个独立的像素就 有高达256×256×256=16777216种色彩了.可以看网页示 例
5
LCD和触摸屏原理
1.4 LCD简介
对于LCD比较重要的参数如下: 1. 可视面积 2. 可视角度 3. 点距 4. 色彩度 5. 对比值 6. 亮度值 7. 响应时间 下面介绍比较重要的一些参数的含义.
2009-4-16
6
LCD和触摸屏原理
1.5 LCD简介 点距: 我们常问到液晶显示器的点距是多大,但是多数人并不 知道这个数值是如何得到的,现在让我们来了解一下它究竟 是如何得到的.举例来说一般14英寸LCD的可视面积为285.7 mm×214.3mm,它的最大分辨率为1024×768,那么点距就 等于:可视宽度/水平像素(或者可视高度/垂直像素),即285.7 mm/1024=0.279mm(或者是214.3mm/768=0.279mm).
2009-4-16
18
LCD和触摸屏原理
下面一个函数是对LCD控制寄存器进行赋值,使其可以 驱动特定的液晶屏幕: void Lcd_Init(void) { frameBuffer24BitTft320240=\ (unsigned int (*)[SCR_XSIZE_TFT_320240])LCDFRAMEBUFFER; 上面一行指定了一个2维数组——frameBuffer24BitTft320240 这个数组对应的就是LCD显示的缓冲区. rLCDCON1=\ (CLKVAL_TFT_320240<<8)|(MVAL_USED<<7)|(3<<5)|(13<<1)|0; 上面一行设置了LCDCON1寄存器,设置了像素时钟频率, 设置显示模式为TFT LCD,并且像素宽度24bit,LCD输出禁止.
2009-4-16
16
LCD和触摸屏原理
#define LCD_XSIZE_TFT_320240 (320) #define LCD_YSIZE_TFT_320240 (240) 关于屏幕大小的宏定义. #define SCR_XSIZE_TFT_320240 (LCD_XSIZE_TFT_320240*2) #define SCR_YSIZE_TFT_320240 (LCD_YSIZE_TFT_320240*2) 这两句定义了虚拟屏幕的大小. #define VBPD_320240 ((14)&0xff) #define VFPD_320240 ((3)&0xff) #define VSPW_320240 ((2) &0x3f) #define HBPD_320240 ((37)&0x7f) #define HFPD_320240 ((19)&0xff) #define HSPW_320240 ((29)&0xff) 这几句设置了LCD时序的一些参数.