关键字:ecos gui, ecos ucgui, static library
------------------------------------------------------------------------------
【lib简介】:
找了很久,但就是没找到一个比较好又是开源免费的嵌入式GUI,所以就移植了个ucgui到
eCos中。它虽然不是免费的,但如果不是用于产品的话,还是可以玩下的。
本次移植ucgui到eCos中,是把它作为一个静态库进行移植的。这个与goAhead移植到eCos
有点类似。这为我们开发用户应用程序提供了一种思路:使用第3方提供的源码包或者一个
功能包时,我们可以把它编译为一个静态库,然后我们的应用程序生成镜像时再去链接这
个静态库。
ucgui有很好的移植性,而且网上有很多的移植文档和资料。把ucgui移植到eCos的流程大
抵上可参照那些步骤,这里增加的一个步骤就是:建立编译工程,也就是编写makefile。
关于移植的详细文档后续再补上(请关注我的博客http://velep.com)!
------------------------------------------------------------------------------
【目录介绍】:
* bin: 存放编译好的ucgui静态库、测试程序等二进制映像文件;
* obj: 存放.o和.d文件;
* test:测试程序
* UCGUI3.90: ucgui3.90版本源程序
------------------------------------------------------------------------------
【lib使用】:
下载包后,进入ucgui目录,然后在cygwin或者虚拟机上进行编译。
编译之前,先修改makefile中的几个变量:
1> HOST:设定你的编译主机,是LINUX还是CYGWIN;
2> 根据编译主机,修改ECOS_REPOSITORY,即ECOS仓库路径;
3> 根据编译主机,修改PKG_INSTALL_DIR,即ECOS安装路径;
编译目标说明如下:
make: 只生成ucgui静态库,名称为libucgui.a;
make test:除生成ucgui静态库外,还生成一个ucgui的测试程序映像文件:test_ucgui
包里面提供了编译好的ucgui静态库及其测试程序映像文件(RAM启动方式),如果是安富莱
V2开发板,可以直接使用。
------------------------------------------------------------------------------
【VS工程】:
UCGUI3.90\Start目录下有两个WINDOW下的工程,分别是ucgui自带的VC6.0工程和
Microsoft Visual Studio 2008工程。
通过使用VS工程及其LCD仿真程序,可以方便我们开发ucgui应用程序,不用频繁烧写程序
到目标板中。
------------------------------------------------------------------------------
【ucgui版本】:
理认上,也适应于其它ucgui版本。编译时需要修改makefile中的UCGUI_VERSION变量。
------------------------------------------------------------------------------
【触摸屏驱动】:
提供的包,触摸屏驱动是OK的,如果使用TSC2046触摸IC,其驱动包详见:
http://52ecos.net/thread-647-1-1.html
------------------------------------------------------------------------------
【测试程序】:
位于test目录,目前直接使用ucgui中的demo程序。
运行效果:![](/uploads/ask/201501/25/64a185ee3f1ce13694cb5dc588e4538c.jpg)
源码包下载地址:由于附件太大,不能直接上传,所以我把它上传到金山快盘了,下载链接:http://www.kuaipan.cn/file/id_76175290853752897.htm?f=52ecos.net
另外,我也上传一个redboot的映像文件:
如果你有安富莱开发板的话,则可以把程序烧写到板子上,具体步骤如下:
用JLINK把redboot.bin烧写到STM32内部flash中;烧写完成后,重新上电,然后在redboot中把ucgui的测试程序下载到STM32外部RAM中支行,命令如下:
用网络下载(插上网线,打开tftp服务器,并把ucgui测试程序test_ucgui.bin放到tftp服务器下载目录中):
ip -l 192.168.0.24/24 -h 192.168.0.102,这条命令用于设置redboot的IP和tftp服务器的所在IP地址,其中,192.168.0.24是设置redboot即板子的IP,192.168.0.102是tftp服务器所在的IP,一般是你电脑的IP;load -r -b 0x68008000 -m tftp test_ucgui.bin;go 0x68008011
如下图所示:
![](/uploads/ask/201501/25/6572634221bc3da18012d27f896bf145.jpg)
用串口下载:
打开超级终端,redboot启来后,执行命令:load -v -m xmodem,然后选择ucgui测试程序test_ucgui.srec进行下载,等下载完成后,执行go 0x68008011命令开始运行程序。