简易bootloader的LCD白屏问题(mini2440)

上次的简易bootloader虽然下载验证成功,可以成功引导内核启动linux,但是LCD一直处于白屏状态,没有显示。而mini2440的vivi就没有这情况,所以问题可能出在一些与LCD有关的初始化上。经过查看原理图和对照源代码,做了一些修改,最后LCD可以正常工作。

修改工作主要就是将对应LCD控制线和数据线的GPIO口进行初始化:

主要代码如下:

  1. void port_init(void)  
  2. {  
  3.     GPACON  = 0x7fffff;  
  4.     GPBCON  = 0x044555;  
  5.     GPBUP   = 0x7ff;     // The pull up function is disabled GPB[10:0]  
  6.     GPCCON  = 0xaaaaaaaa;  
  7.     GPCUP   = 0xffff;    // The pull up function is disabled GPC[15:0]   
  8.     GPDCON  = 0x00151544;  
  9.     GPDDAT  = 0x0430;  
  10.     GPDUP   = 0x877A;  
  11.     GPECON  = 0xaa2aaaaa;  
  12.     GPEUP   = 0xf7ff;    // GPE11 is NC  
  13.     GPFCON  = 0x55aa;  
  14.     GPFUP   = 0xff;      // The pull up function is disabled GPF[7:0]  
  15.     GPGCON  = 1<<8;  
  16.     GPGDAT  = 0;  
  17.     GPHCON  = 0x16faaa;  
  18.     GPHUP   = 0x7ff;     // The pull up function is disabled GPH[10:0]  
  19.     EXTINT0 = 0x22222222;    // EINT[7:0]  
  20.     EXTINT1 = 0x22222222;    // EINT[15:8]  
  21.     EXTINT2 = 0x22222222;    // EINT[23:16]  
  22. }  

将 port_init  函数加到boot.c中的主函数里即可。

永不止步步 发表于03-30 10:39 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67410个|学分:306117个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号