u-boot-2010.09 for mini6410 (add LCD support)
原文链接:http://blog.chinaunix.net/space.php?uid=20543672&do=blog&id=94391
已经移植最新的2010.12,此版本停止开发
在完成了基本移植之后,我决定现搞定LCD console的显示,玩一下。经过几天业余时间的努力,终于搞定了。期间也被透明参数搞郁闷了,本来早就弄好了,但是透明值理解反了,结果设成了全透明。我一直找原因:为什么会没有显示呢?最后参考nboot的参数设置才找到原因。
其实要在U-boot中添加LCD支持其实很简单,只要你的CPU支持类似framebuffer的机制,就只要添加一个初始化LCD 控制器和一个GraphicDevice *pGD结构体的代码就基本可以了。
在6410中,他的LCD 控制器可以显示5层的画面,我在uboot中使用了两层,一个作为console的显示,一个作为背景,可以拷贝一张BMP的图形到NAND Flash中,启动的时候代码会自动拷贝nand中特定地址的数据并显示为背景。具体的地址看下include/configs/mini6410.h的最后就知道了。(图片的制作请参考:对uboot移植的点滴记录。)
所有的代码已经上传github,可以到这里下载。
为了部分无法下载git源码的朋友,上传了补丁(请先打上basic补丁):
http://www.rayfile.com/zh-cn/files/cef5ea78-c4ef-11e0-b18c-0015c55db73d/
以下是显示效果,有图有真相:

同时支持3.5吋屏,只需要输入命令:setenv videomode 0x211 ;saveenv ,然后重启即可。其他的屏幕我没有,所有无法测试。
浙公网安备 33010602011771号