我现在想换一个LCD屏,在更改驱动的时候,发现现在的屏幕为DE模式(区别于SYNC模式),而在LCD驱动的时序中,有
#define LCD_VBPD (7) // 8-1
#define LCD_VFPD (5) // 5-1
#define LCD_VSPW (1) // 1-1
#define LCD_HBPD (13) // 13-1
#define LCD_HFPD (8) // 8-1
#define LCD_HSPW (3) // 3-1
#define LCD_HOZVAL (800) // Horizontal pixel 800
#define LCD_LINEVAL (480) // Vertical pixel 480
这些数值需要修改。
我的疑问是,上述的数值,是在SYNC模式下菜油的,而在DE模式下,只需要DE、DCLK、DIO1\2、STVD、STVU、LD几条信号线,没有HCLK、VCLK,怎么来确定上述的数值呢?
DE 模式一般需要:DE和clock信号来确定点。
比如一个800x480分辨率的pannel。理论上,在DE有效信号的时候(高或底),就有一个800个clock,来确认行中800个点。每个clock有效的时候,读取一次RGB信号。因为存在回扫信号所以DE是个方波,当视频在回扫的时候,DE就拉底。DE一个周期,pannel就扫描一行。扫描480行后,又从第一行扫描开始。(这个规律由pannel的驱动IC所决定的)。
引用: 引用 2 楼 shuiyan 的回复:
DE 模式一般需要:DE和clock信号来确定点。
比如一个800x480分辨率的pannel。理论上,在DE有效信号的时候(高或底),就有一个800个clock,来确认行中800个点。每个clock有效的时候,读取一次RGB信号。因为存在回扫信号所以DE是个方波,当视频在回扫的时候,DE就拉底。DE一个周期,pannel就扫描一行。扫描480行后,又从第一行扫描开始。(这个规律由pannel的驱动IC所决定的)。
你说的这些,我知道。现在的问题是,在DE模式下,不同于SYNC模式的是,在SYNC模式下需要处理的HSYNC、VSYNC的前置时间、后置时间这些东西,在DE里面不需要处理,而又该怎么对他们赋值。
不需要设置就是lcd不会检查这些参数(寄存器),保持默认即可。
如果楼主解决了,能够分享的一下你的经验呢??
邮箱:anguschen1109@yahoo.cn
谢谢!