LCD驱动注意事项

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(1) 液晶显示模式

并行:MCU接口、RG战口、Vysnc接口

串行:SPI接口、MDDI接口

(2) 屏幕颜色实质上即为色阶的概念。色阶是表示手机液晶显示屏亮度强弱的指数标准,也就是通常所说的色彩指数。目前彩屏手机的色阶指数从低到高可分三个层次,最低单色,其次是256色、4096 色、65536 色;目前最高的为26 万色。256=2 的8 次方,即8 位彩色,依次律推,65536 色=2 的16 次方,即通常所说的16 位真彩色,26万=2的18次方,也就是18 位真彩。其实65536色已基本可满足我们肉眼的识别需求。

(3) 分辨率

LCD的分辨率与CRT显示器不同,一般不能任意调整,它是制造商所设置和规定的。分辨率是指屏幕上每行有多少像素点、每列有多少像素点。手机上LCD 的分辨率一般是176点X 220行的QCIF显示模式和240点X 320行的QVG;显示模式。

(4) 刷新率

LCD刷新频率是指显示帧频,亦即刷新一帧屏所需要的时间,与屏幕扫描速度及避免屏幕闪烁的能力相关。也就是说刷新频率过低,可能出现屏幕图像闪烁或抖动。

(5) 可视角度

指从不同的方向清晰地观察屏幕上所有内容的角度,这与LCD是DSTN还是TFT有很大关系。因为前者是靠屏幕两边的晶体管扫描屏幕发光,后者是靠自身每个像素后面的晶体管发光,其对比度和亮度的差别,决定了它们观察屏幕的视角有较大区别。DSTN- LCD一般只有60度,TFT- LCD则有160度。

(6) 响应时间响应时间愈小愈好,它反应了液晶显示器各象素点对输入信号反应的速度,即pixel 由暗转亮或由亮转暗的速度。响应时间越小则使用者在看运动画面时不会出现尾影拖拽的感觉。一般会将反应速率分为两个部份:Rising 和Falling ,而表示时以两者之和为准。

2. 接口形式:

(1) 并行方式

a、MCU接口

目前主要有i80和m68两种类型。这种LCD模式须LCD有自己的GRAM

b、RG肢口:

通过时钟同步来实现同步传输,此模式不需要LCD有GRAM来缓存数据。接口如下:

(2) 串行方式

a、SPI 接口:目前手机各个平台无使用此接口方式。接口如下:

b、MDD接口:

高通公司的一种接口形式,具有传输速率高、抗EMC生能好、降低功率损耗等特点。

3. 调试注意事项:

(1) 硬件测量硬件信号,保证硬件状态的正常:

a、背光是否打开?

LCD是否出于白屏状态?

b、数字电压和IO电压是否产生?

一般IC,数字电压为2.8V, IO电压为1.8V

c、reset 信号是否有效过?

reset 信号一般低有效,低有效时间看IC spec 要求。

d、控制信号是否输出?

CS RS WR言号是否有输出

e、数据线上是否输出?

数据线是8bit 、16bit 还是18bit ,是否有输出?

(2) 软件

手机软件系统虽不象计算机软件系统那样复杂,但同样具有类似的构架:操作系统+应用程序。

目前操作系统,一般是一个任务抢占式实时操作系统,使用中断陷阱、信号、队列等概念组织各项任务(应用程序)的建立、执行、切换。在操作系统的管理下,各项任务看似是并行运行的。

对于驱动调试需要进行两方面的工作,第一熟悉手机软件结构,第二研究新的外设功能,编写新驱动并集成到手机软件中。对于LCD驱动,目前各个平台软件上已经集成此模块代码,我们需要在此基础上进行代码调整和功能验证。

a、LCD的物理地址分配

查看主芯片memory分配,在代码实现上指定命令和数据传送的端口地址。

b、LCD命令和数据格式

根据实际的硬件设计及IC要求,决定LCD命令和数据的传输方式,保证指

令和数据能有效的从主芯片侧传递到LCD IC。

c、LCD旨令含义

熟读LCDIC spec, 了解寄存器配置含义,理解LCD的控制方式和工作方式。

d、开关屏序列

了解POWER ON序和POWER OF顺序

e、背光驱动的控制方式

电流驱动还是电压驱动?

f、LCD模块ID识别的方法

硬件电路是否支持?若无,软件如何识别?

4. 常见问题总结:

LCD的调试中,延时特别重要,一定要确定延长的时间足够,特别是更改电压

寄存器后面的延时。记得有一次屏幕出现抖动的现象,一直查不出原因,厂家来人,都没解决;最后,把所有的时序测试出来,发现延时不足,影响延时的一个函数传递参数错了。

1. 初始化前需要一个延时(大概为10m®,使Reset稳定;

2. 如果出现花屏现象,很大的可能是总线速度问题;

3. 如果屏幕闪动比较明显,可以通过调整电压来稳定,一般调节的电压为

VRL VRH VDV ffi VCM这些电压也可以用来调节亮暗(对比度);

4. 调节对比度时,也可以通过调节Gamm M来实现,要调节的对象为:PRR PRN VRP VRN等;

5. 注意数据是8 位1 6位时,写命令和数据的函数注意要变化;

6. 如果调试时发现LCD的亮度有问题,首先检查(考虑)提供给LCD的电流是否一致,再考虑调节电压。

7. 开机花屏问题,最简单的处理方式就是在INIT 结束的地方增加一个刷黑屏的功能。也可以在睡眠函数里加延时函数;

8. 如果随机出现白屏问题,一个可能是静电问题,把LCD拿到头发上擦几下,如果很容易出现白屏那肯定就是静电问题了。另外一个在有Backend IC 的情况下,也有可能bypass 没处理好。

9. 还碰到过一个问题,写PLL的寄存器写了2次,屏幕就抖动的很厉害。这个问题应该跟LCD内部实现有关了,并不是每个都会。

10. 横向抖动,看不清画面,修改ENTRY MODE

11. 如果字体反了,修改drive output control ,GS,SS;

相关文档
最新文档