24402410 LCD显示屏驱动程序.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2440

u-boot早就支持framebuffer了,不光显示图片,还可以把控制台重定向到lcd上,只是24x0部分缺代码罢了,需要填充一个结构体,可以从openmoko那里copy过来。不过如果只是为了显示一张图片的话……初始化lcd控制器的代码随便放哪里运行都可以的吧!LCD显示屏驱动程序 #include config.h // GPB1/TOUT1 for Backlight control(PWM) #define GPB1_TO_OUT() (rGPBUP = 0xfffd, rGPBCON = 0xfffffff3, rGPBCON |= 0 #define GPB1_TO_1() (rGPBDAT |= 0x0002) #define GPB1_TO_0() (rGPBDAT = 0xfffd) //extern void Uart_Printf(char *f, ...) ; extern unsigned char __CHS[]; extern unsigned char __VGA[]; //volatile static unsigned short LCD_BUFFER[SCR_YSIZE_TFT][SCR_XSIZE_TFT]; static void Lcd_PowerEnable(int invpwren,int pwren); static void Lcd_Init(void) { rGPCUP = 0 rGPCCON = 0xaaaa02a9; // rGPDUP=0xffffffff; // Disable Pull-up register rGPDUP = 0 rGPDCON=0xaaaaaaaa; //Initialize VD[15:8] rLCDCON1=(CLKVAL_TFT 8)|(MVAL_USED 7)|(3 5 )|(12 1)|0; // TFT LCD panel,16bpp TFT,ENVID=off rLCDCON2=(VBPD 24)|(LINEVAL_TFT 14)|(VFPD 6)|(VSPW); rLCDCON3=(HBPD 19)|(HOZVAL_TFT 8)|(HFPD); rLCDCON4=(MVAL 8)|(HSPW); #if(LCD_TYPE == PT035) rLCDCON5 = (1 11) | (1 10) | (0 9) | (0 8) | (1 7) | (1 6) | (1 3) |(BSWP 1) | (HWSWP); #elif(LCD_TYPE == WD_F3224) rLCDCON5 = (1 11) | (1 10) | (0 9) | (0 8) | (0 7) | (0 6) | (1 3) |(0 1) | (HWSWP); #elif(LCD_TYPE == TX11D) rLCDCON5 = (1 11) | (0 10) | (0 9) | (0 8) | (0 7) | (0 6) | (1 3) | (1 2) | (BSWP 1) | (HWSWP); #endif rLCDSADDR1=(((U32)LCD_BUFFER22)21)|M5D((U32)LCD_BUFFER1); rLCDSADDR2=M5D( ((U32)LCD_BUFFER+(SCR_XSIZE_TFT * LCD_YSIZE_TFT * 2)) 1 ); rLCDSADDR3=(((SCR_XSIZE_TFT - LCD_XSIZE_TFT) / 1) 11)|(LCD_XSIZE_TFT / 1); rLCDINTMSK|=(3); // MASK LCD Sub Interrupt rTCONSEL = (~7) ; // Disable LPC3480 rTPAL=0; // Disable Temp Palette } static void Lcd_EnvidOnOff(int onoff) { if(onoff == 1) rLCDCON1 |= 1; // ENVID=ON else rLCDCON1 = rLCDCON1 0x3fffe; // ENVID Off } static void Lcd_PowerEnable(int invpwren,int pwren) { //GPG4 is setted as LCD_PWREN rGPGUP = rGPGUP ( ~(1 4)) |(1 4); // Pull-up disable rGPGCON

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档