您的位置:首页 > 其它

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

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

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

主要代码如下:

void port_init(void)
{
GPACON  = 0x7fffff;
GPBCON  = 0x044555;
GPBUP   = 0x7ff;	 // The pull up function is disabled GPB[10:0]
GPCCON  = 0xaaaaaaaa;
GPCUP   = 0xffff;	 // The pull up function is disabled GPC[15:0]
GPDCON  = 0x00151544;
GPDDAT  = 0x0430;
GPDUP   = 0x877A;
GPECON  = 0xaa2aaaaa;
GPEUP   = 0xf7ff;	 // GPE11 is NC
GPFCON  = 0x55aa;
GPFUP   = 0xff;		 // The pull up function is disabled GPF[7:0]
GPGCON  = 1<<8;
GPGDAT  = 0;
GPHCON  = 0x16faaa;
GPHUP   = 0x7ff;	 // The pull up function is disabled GPH[10:0]
EXTINT0 = 0x22222222;	 // EINT[7:0]
EXTINT1 = 0x22222222;	 // EINT[15:8]
EXTINT2 = 0x22222222;	 // EINT[23:16]
}


将 port_init 函数加到boot.c中的主函数里即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: