上次的简易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] }
简易bootloader的LCD白屏问题(mini2440),布布扣,bubuko.com
简易bootloader的LCD白屏问题(mini2440)
原文:http://blog.csdn.net/wu20093346/article/details/27115739