logo资料库

关于LCD的分屏与切屏 Tearing effect.docx

第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
资料共9页,剩余部分请下载后查看
1.
2 me的总结
3. 例子Hx8357
1.LCM 之 Fmark 功能 http://blog.csdn.net/zhandoushi1982/article/details/6011241 工作 div 测试 c 分类: 音视频与电视 2010-11-15 22:48 1757 人阅读 评论(1) 收藏 举报 最近调试 R61509V 这颗 LCM 驱动芯片时,出现在纯色测试画面下画面刷新有残留 (tearing effect,即 TE)的问题。根本原因是主控写图像数据的速度与 LCM 刷屏的速度不一 致造成的,具体是刷屏速度要快于主控写速度。好在很多 LCM 驱动芯片都有一个 Fmark 脚,用来与主控同步,当 Fmark 发出一个信号给主控时,主控才开始写一帧数据,这样就 可以保证两边同步。讲述前首先对几个概念描述: (1)刷屏速度 刷屏率是指 LCM 刷新的速度,这个值一般在 LCM 的初始化 CODE 中会设定好。对于 瑞萨的 R61509V 这颗 LCD 驱动,设定 0x0010 寄存器就是设定刷屏速度。根据公式:帧率 =678KHZ/{(RTN)*DIV*(432+8+8)} ,其中 678K 是 LCM 内部的时钟源,RTN 是每行的时 钟数,DIV 是分频系数,(432+8+8)则是行像素。测得的结果是: 0X011F 20HZ,最小频率. 0X011A 29HZ 0X0115 36HZ 0X0110 52HZ 0X001C 60HZ 0X0018 70HZ 0X0014 80HZ 刷屏率太低会导致出现 flicker 现象,所以一般要设定在 60HZ 以上。 (2)主控写速度 WR 跟片选 CS 这两个 PIN 脚对每个 DBI 的 LCM 都具备,两者的工作频率是一致的。主控每次写一帧 数据时,会有一个片选信号,同时对应一个 WR 的写有效信号。主控的写频率的变化是由
工作状态决定的,比如摄像时,拍摄动态物体的显示写速度就快于拍摄静态物体的显示写速 度。 如果屏幕的画面没有更新,就会 70ms update 一次 lcd,如果画面有动,就是最多 33ms 刷一次屏。意思就是 CS 频率只能限定在 1/70 到 1/30,14.28HZ 至 33.33HZ 之间。最高频 率已经快于 PAL 或者 NTSC 的帧频,可以保证摄像头工作或者播放视频时不会出现丢帧现 象。 (3)Fmark 功能 要使能 fmark,首先要保证主控的 fmark 脚与 LCM 的 fmark 脚是正确连接的;其次要 在 LCM 初始化中使能屏的 fmark 功能,保证 LCM 周期性发出信号给主控,同时使能主控 的 fmark 功能,保证主控收到一个 fmark 信号才写一帧数据。 LCM 的 fmark 有两个参数可以配置:一是刷多少次屏发出一个 fmark 信号,比如不一 定要每次刷屏都发 fmark 信号,可以刷几次屏发一次 fmark 信号;二是 fmark 的位置参数, 可以让 fmark 迟滞几条线输出,目的是让主控晚点写数据到 GRAM,避免 TE。 举例:存在这样的情况,就是 IC 在从 GRAM 读完最后一行就输出 te 信号,此时 BB 开始写 GRAM。但可能还要有一两条 line 的时间,IC 才开始从 GRAM 的第一行读数据刷 下二桢,而写 GRAM 的速度要慢于 IC 读 GRAM 的速度,此时可能还没有开始写。导致读 GRAM 超过写 GRAM,所以会在上方产生 tearing。要避免 TE 输出太早,导致写 GRAM 先 开始,所以要加延迟,保证读老旧数据开始后,写 GRAM 才开始。 (4)fmark 周期与 CS 周期 出现 TE 现象的根本原因是两边速度不一致,具体是 LCM 的刷新速度要快于主控送数 据的速度,两者的速度要符合一定的范围才行。只要保证 CS 的周期在两个 TE 周期之间即 可,也就是 CS 的写频率不能低于 TE 读频率的二分之一,Tearing 出现的根本条件是读写 有交叉。通常都是写 Gram 速度(WR)慢于 lcd 刷屏速度(TE),只要刷屏的位置不超过 写 Gram 位置就不会有切屏现象。 举个实例:比如 CS 差不多就比两个 TE 周期小一点,要刷两桢数据,首先第一桢刷屏 开始刷屏了,表示读 GRAM 开始,它的速度比较快,它读的是老旧数据;紧接着主控开始 写 GRAM,大概写到 GRAM 的快一半时,这时候已经刷完一桢,然后开始刷第二桢,即又 从 GRAM 的最上方开始读并刷屏,此时读出来的才是刚写入的新数据,在写完 GRAM 之前, 读的步骤永远跟不上写的步骤,就不会出现 tearing。
如果 CS 比两个 TE 周期大,假设相当于三个 TE 周期,那么只有在第三个 TE 读周期 时,显示的数据才是写好的 GRAM 的数据;第一个 TE 读的是老旧的数据,第二个 TE 周 期由于 GRAM 还没有写完,但读步骤赶上写 GRAM 步骤了,导致显式一部分是旧的一部分 是新的,所以出现 TE。此即本质。 (5) TE 类型 TE 显示使能时,必须保证 CPU 的 LCD TE 使能和 LCM 驱动的 TE 功能都打开。LCM 的 TM 使能有两种:VSYSC,VSYNC&HSYNC。图示如下: 另外: http://blog.csdn.net/zhandoushi1982/article/details/5908490
2 me 的总结 注意: 作为帧同步信号的 VSYNC,每发出一个脉冲,都意味着新的一屏图像数据开始发送。 而作为行同步信号的 HSYNC,每发出一个脉冲都表明新的一行图像资料开始发送 分析 切屏:中间有一条线,这应该是 LCD 显示丢了几行数据造成的,根本原因是 LCD 显示 的速度慢与主控写的速度,而两者又没有使用 Tearing effect out line 的机制 分屏:就是下面的图像显示到了上面去,本来上面的图像显示到了 LCD 下面。看来君 正 N800C 的瑞鼎屏在播放视频时出现分屏,应该就是这个原因。根本原因是 LCD 显示的速 度快与主控写的速度,而两者又没有使用 Tearing effect out line 的机制
3. 例子 Hx8357
分享到:
收藏