先找到两个文件
s3c2440a_lcd.h在F:\WINCE500\PLATFORM\SMDK2440A\Src\Inc文件夹中
s3c2440disp.cpp在F:\WINCE500\PLATFORM\SMDK2440A\Src\Drivers\Display文件夹中
然后修改其中的参数
◆ s3c2440a_lcd.h文件的修改:
#define LCD_SCR_XSIZE (800) // 按照所需分辨率修改
#define LCD_SCR_YSIZE (600) // 按照所需分辨率修改
#define LCD_SCR_XSIZE_TFT (800) // 按照所需分辨率修改
#define LCD_SCR_YSIZE_TFT (600) // 按照所需分辨率修改
#define LCD_XSIZE_TFT 800 // 按照所需分辨率修改
#define LCD_YSIZE_TFT 600 // 按照所需分辨率修改
#define LCD_VBPD ((7)&0xff)
#define LCD_VFPD ((4)&0xff)
#define LCD_VSPW ((2) &0x3f)
#define LCD_HBPD ((37)&0x7f)
#define LCD_HFPD ((32)&0xff)
#define LCD_HSPW ((30)&0xff)
◆ s3c2440disp.cpp文件:
m_nScreenWidth =800; // 按照所需分辨率修改
m_nScreenHeight =600; // 按照所需分辨率修改
m_cxPhysicalScreen =800; // 按照所需分辨率修改
m_cyPhysicalScreen =600; // 按照所需分辨率修改
*************************************************************************************************************************************************
#defineLCD_VBPD ((29-7)&0xff)
#define LCD_VFPD ((13-1)&0xff)
#define LCD_VSPW ((3) &0x3f)
#define LCD_HBPD ((40+3)&0x7f)
#define LCD_HFPD ((40-4)&0xff)
#define LCD_HSPW ((48)&0xff)
#define CLKVAL_TFT (1)
240×320
帧频80HZ
/* VCLK = HCLK / ((CLKVAL + 1) * 2) -> About 7 Mhz */
*********************************************************************************************************************************************
VBPD 列开始等待周期
VSPW列有效脉冲宽度
VFPD列结束等待周期
HBPD 行开始等待周期
HSPW行有效脉冲宽度
HFPD 行结束等待周期
VBPD 是指LCD显示每帧开始时有这么多个周期是没有图像信号输出的,目的是为了同步.取值范围与所使用的LCD屏参数有关
*********************************************************************************************************************************************
VCLK 的频率和帧频率由寄存器CLKVAL 的值决定。
帧频= 1/ [ { (VSPW+1) + (VBPD+1) + (LIINEVAL + 1) + (VFPD+1) }×{(HSPW+1) + (HBPD +1)
+ (HFPD+1) + (HOZVAL + 1) }×{ 2×( CLKVAL+1 ) / ( HCLK ) } ]
实际应用中,由于内存带宽的限制,必须考虑系统的时序,以避免FIFO 跑空的情况出现。
*********************************************************************************************************************************************
例:
TFT 屏分辩率:240×240
VSPW = 2, VBPD = 14, LINEVAL = 239, VFPD = 4
HSPW = 25, HBPD = 15, HOZVAL = 239, HFPD = 1
CLKVAL = 5
HCLK = 60M (Hz)
下列的参量必须由LCD 尺寸和驱动器规格参考设定。
VSPW、VBPD、LINEVAL、VFPD、HSPW、HBPD、HOZVAL 和HFPD
帧频目标值为60 到70Hz,则CLKVAL 的值应为5,所以帧频为67Hz。
************************************************************************************************************************************************
问题
1、当确定分辨率是多少时,如何确定VSPW、VBPD、LINEVAL、VFPD、HSPW、HBPD、HOZVAL 和HFPD值呢?只要帧频在60-70HZ就好,其他值凑出来的,还是其他什么原因?
已解决
根据LCD的时序时间表来定义这些参数值。