SMDK2416 3.5"LCD驱动程序的移植
2011-09-19 17:55
246 查看
使用S3C2416 ARM 系统平台,使用WINCE6.0操作系统,LCD屏是奇美的LQ035NC111或科万宏的KWH035ST12-F01,其时序入下图。根据S3C2416芯片资料,自己编写的FrameRate计算器软件计算FrameRate,如下图:
得到FrameRate=61
一、修改的程序文件
1. D:\WINCE600\PLATFORM\SMDK2416\Src\Drivers\Display\s3c2416_ldi_lib\s3c2416_ldi.c
2. D:\WINCE600\PLATFORM\SMDK2416\Src\Inc\bsp_cfg.h
二、修改内容
1. D:\WINCE600\PLATFORM\SMDK2416\Src\Drivers\Display\s3c2416_ldi_lib\s3c2416_ldi.c
switch(g_ModuleType)
{
// Tianma 3.5"
case LDI_UT35A_RGB:
//SureLion
pDeviceInfo->RGBOutMode = DISP_24BIT_RGB888_P ;
pDeviceInfo->uiWidth = 320;
pDeviceInfo->uiHeight = 240;
pDeviceInfo->VBPD_Value = 15;
pDeviceInfo->VFPD_Value = 4;
pDeviceInfo->VSPW_Value = 3;
pDeviceInfo->HBPD_Value = 38;
pDeviceInfo->HFPD_Value = 20;
pDeviceInfo->HSPW_Value = 30;
pDeviceInfo->VCLK_Polarity = IVCLK_RISE_EDGE;
pDeviceInfo->HSYNC_Polarity = IHSYNC_LOW_ACTIVE;
pDeviceInfo->VSYNC_Polarity = IVSYNC_LOW_ACTIVE;
pDeviceInfo->VDEN_Polarity = IVDEN_LOW_ACTIVE;
pDeviceInfo->PNR_Mode = PNRMODE_RGB_P;
pDeviceInfo->VCLK_Source = CLKSEL_F_HCLK;
pDeviceInfo->VCLK_Direction = CLKDIR_DIVIDED;
pDeviceInfo->Frame_Rate = 61;
RETAILMSG(1,(TEXT("[LDI:INF] Output Devce Type [LDI_UT35A_RGB] =[%d] x [%d]\n\r"),pDeviceInfo->uiWidth,pDeviceInfo->uiHeight));
break;
2. D:\WINCE600\PLATFORM\SMDK2416\Src\Inc\bsp_cfg.h
#define LCD_MODULE_TYPE (LCD_MODULE_UT35A) // Tianma 3.5" 320x240
//#define LCD_MODULE_TYPE (LCD_MODULE_UT43A) // Qunchuang 4.3" 480x272
//#define LCD_MODULE_TYPE (LCD_MODULE_UT50A) // Dianbang 5 " 800x480
//#define LCD_MODULE_TYPE (LCD_MODULE_UT70A) // Qunchuang 7" 800x480
//#define LCD_MODULE_TYPE (LCD_MODULE_UT102A) // Qunchuang 10.2" 800x480
//#define LCD_MODULE_TYPE (LCD_MODULE_UT104A) // AUO 10.4" 800x600
//#define LCD_MODULE_TYPE (LCD_MODULE_UTVGA6448) // VGA 640x480
//#define LCD_MODULE_TYPE (LCD_MODULE_UTVGA8060) //VGA 800x600
三、编译下载
VISUAL STUDIO 2005 菜单"Build"->"Advanced Build Commands"->"Clean Sysgen"或”Build and Sysgen"编译,最好用DNW软件按步骤下载OK。
四、结束
看似简单的修改,把我这个拆鸟搞得焦头烂额差不多一个月。为了避免其他人走弯路,把自己的心得与大家分享。
得到FrameRate=61
一、修改的程序文件
1. D:\WINCE600\PLATFORM\SMDK2416\Src\Drivers\Display\s3c2416_ldi_lib\s3c2416_ldi.c
2. D:\WINCE600\PLATFORM\SMDK2416\Src\Inc\bsp_cfg.h
二、修改内容
1. D:\WINCE600\PLATFORM\SMDK2416\Src\Drivers\Display\s3c2416_ldi_lib\s3c2416_ldi.c
switch(g_ModuleType)
{
// Tianma 3.5"
case LDI_UT35A_RGB:
//SureLion
pDeviceInfo->RGBOutMode = DISP_24BIT_RGB888_P ;
pDeviceInfo->uiWidth = 320;
pDeviceInfo->uiHeight = 240;
pDeviceInfo->VBPD_Value = 15;
pDeviceInfo->VFPD_Value = 4;
pDeviceInfo->VSPW_Value = 3;
pDeviceInfo->HBPD_Value = 38;
pDeviceInfo->HFPD_Value = 20;
pDeviceInfo->HSPW_Value = 30;
pDeviceInfo->VCLK_Polarity = IVCLK_RISE_EDGE;
pDeviceInfo->HSYNC_Polarity = IHSYNC_LOW_ACTIVE;
pDeviceInfo->VSYNC_Polarity = IVSYNC_LOW_ACTIVE;
pDeviceInfo->VDEN_Polarity = IVDEN_LOW_ACTIVE;
pDeviceInfo->PNR_Mode = PNRMODE_RGB_P;
pDeviceInfo->VCLK_Source = CLKSEL_F_HCLK;
pDeviceInfo->VCLK_Direction = CLKDIR_DIVIDED;
pDeviceInfo->Frame_Rate = 61;
RETAILMSG(1,(TEXT("[LDI:INF] Output Devce Type [LDI_UT35A_RGB] =[%d] x [%d]\n\r"),pDeviceInfo->uiWidth,pDeviceInfo->uiHeight));
break;
2. D:\WINCE600\PLATFORM\SMDK2416\Src\Inc\bsp_cfg.h
#define LCD_MODULE_TYPE (LCD_MODULE_UT35A) // Tianma 3.5" 320x240
//#define LCD_MODULE_TYPE (LCD_MODULE_UT43A) // Qunchuang 4.3" 480x272
//#define LCD_MODULE_TYPE (LCD_MODULE_UT50A) // Dianbang 5 " 800x480
//#define LCD_MODULE_TYPE (LCD_MODULE_UT70A) // Qunchuang 7" 800x480
//#define LCD_MODULE_TYPE (LCD_MODULE_UT102A) // Qunchuang 10.2" 800x480
//#define LCD_MODULE_TYPE (LCD_MODULE_UT104A) // AUO 10.4" 800x600
//#define LCD_MODULE_TYPE (LCD_MODULE_UTVGA6448) // VGA 640x480
//#define LCD_MODULE_TYPE (LCD_MODULE_UTVGA8060) //VGA 800x600
三、编译下载
VISUAL STUDIO 2005 菜单"Build"->"Advanced Build Commands"->"Clean Sysgen"或”Build and Sysgen"编译,最好用DNW软件按步骤下载OK。
四、结束
看似简单的修改,把我这个拆鸟搞得焦头烂额差不多一个月。为了避免其他人走弯路,把自己的心得与大家分享。
相关文章推荐
- SMDK2416 3.5"LCD驱动程序的移植 .
- SMDK2416 3.5"LCD驱动程序的移植
- TFT_LCD(3.5")
- TFT_LCD(3.5")
- DB2 JCC驱动程序时碰到"Encoding not supported"错误怎么办
- "lcd_print" declared implicitly 产生的原因
- Windows 64位 连接Access数据库"未发现数据源名称并且未指定默认驱动程序"的解决办法
- RT-Thread 学习笔记(十三)--- 开启基于RTGUI的LCD显示功能(3)<触屏屏驱动移植和测试>
- linux-2.6.26.5内核的&nbsp;lcd驱动移植…
- LCD驱动程序往2.6.11内核的移植总结
- "S3C2410移植Linux2.6.27 系统时钟慢8倍!"——解决方法
- S3C2410 LCD 驱动程序移植及GUI程序编写
- cocos2dx通过用eclipse移植android时出现 error: undefined reference to "XXX类:XX()"
- 从"RTOS移植"迁移到"实时Linux"
- S3C2410 LCD 驱动程序移植及GUI程序编写(3)
- eclipse 移植cocos2d-x工程 报错: Program "bash" is not found in PATH
- linux-2.6.26.5内核的&nbsp;lcd驱动移植…
- 【转载】linux-2.6.38到tiny6410的移植手册(连载3)__ LCD&触摸屏
- S3C2410 LCD 驱动程序移植及GUI程序编写
- 【移植驱动到Linux3.4.2内核之二】LCD,触摸屏,按键,USB等驱动程序的移植心得总结