欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 信息管理 > MiniGUI到EV44B0Ⅱ上的移植研究

MiniGUI到EV44B0Ⅱ上的移植研究

日期:2023-01-24 阅读量:0 所属栏目:信息管理


摘 要:minigui建立在比较成熟的图形引擎之上,其特点是小巧精致并尽量保持与win32的兼容。讲解minigui到ev44b0ii的移植工作,提出minigui软件移植的基本步骤。
关键词:minigui;图形引擎;ev44b0ii;移植
引言
要在自己的arm嵌入式系统[1]中使用minigui,首先目标板要有足够的硬件资源;之后为目标板编写minigui的图形引擎(gal)和输入引擎(ial)[2];接下来就可以配置minigui交叉编译minigui函数库及其应用程序;编译通过后,就可以在目标板上搭建minigui应用环境;最后就可以启动minigui应用程序了。
1 minigui
只要某个硬件平台上运行有minigui所支持的操作系统,minigui就能在这个平台上运行。minigui本身的占用空间非常小,在2mb到4m左右。在某些系统上,尤其是在传统嵌入式操作系统中,功能完备的minigui系统本身所占用的空间可进一步缩小到1mb以内。和其它针对嵌入式产品的图形系统相比,minigui对系统的需求具有如下几大优势:可伸缩性强、轻型、占用资源少、高性能、高可靠性和可配置性。
2 移植过程
2.1在pc机上安装minigui
将minigui函数库源代码、资源文件复制到pc机的linux操作系统的特定目录下,解压,以便于进行交叉编译。在“终端”窗口使用以下命令完成解压,对于较长的文件名或目录名,可以使用“*”通配符指定。
#cd /home/minigui
#tar zxf lib*.gz
#tar zxf mini*.gz
#tar zxf mg*.gz
2.2 minigui的gal移植
minigui引入了图形抽象层和输入抽象层(graphics and input abstract layers,即gal和ial)的概念。在libminigui-str-1.6.2/src/gal/native目录下建立一个源文件commlcd.c,编写老的gal接口的几个接口函数[3]。
//使用native图形引擎的数据结构和fb(framebuffer)的驱动程序
#include "native.h"
#include "fb.h"
#include "lcddrive.h"
//图形引擎初始化函数
//初始化正确返回psd结构,否则返回null
static psd fb_open(psd psd)
{ psubdriver subdriver;
tftinit();
fprintf(stderr,"gal common engine:init lcm!\n");
psd->planes=1; //单屏
#if swap_xy_en==1
psd->xres=gui_lcm_ymax;
psd->yres=gui_lcm_xmax;
#else
psd->xres=gui_lcm_xmax;
psd->yres=gui_lcm_ymax;
#endif
};
在libminigui-str-1.6.2/src/gal/native目录下建立液晶驱动程序文件lcddrive.c和lcddrive.h,由于在lcddrive.c文件中使用了s3c44b0的头文件,所以要将此文件复制到libminigui-str-1.6.2/src/gal/native目录下。设置libminigui-str-1.6.2/src/gal/native目录下的文件,在lib_native_la_sources变量最后加入lcddrive.c和commlcd.c等文件。

为了使minigui能够正确使用移植的图形引擎,还需要进行注册[4]。
2.3 minigui的ial移植
在libminigui-str-1.6.2/src/ial目录下建立源文件comminput.c及头文件comminput.h,在comminput.c文件中编写ial接口的几个接口函数。
在libminigui-str-1.6.2/src/ial建立键盘驱动程序文件comm_drive.c,实现键盘的读取和键码的转换,具体源代码在micetek ev44b0ii产品的配套光盘上。键盘驱动程序文件comm_drive.c把ev44b0ii开发板上的16个按键定义为0~9、tab、esc和enter等功能。设置libminigui-str-1.6.2/src/ial目录下的文件,新定义一个变量comminput_srcs,变量赋值为comminput.c和comm_drive.c等文件,并在libial_la_sources变量最后加入comminput_srcs的引用,这样在编译minigui时就可以编译这些移植的ial源文件了。
为了使minigui能够正确使用移植的输入引擎,还需要进行注册。
2.4交叉编译minigui
针对ev44b0ii开发板需要专门编写一个配置脚本buildlib-ev44b0ii,文件保存在libminigui-1.6.2目录下。可以从libminigui-str-1.6.2/build目录下复制build-uclinux-s3c44b0文件,然后更改文件名为buildlib-ev44b0ii,修改文件内容即可。
2.5设置minigui运行环境
打开“终端”窗口,执行以下指令安装资源文件。执行完以下指令后,在/usr/local/lib/minigui目录下会产生一个res目录,该目录下保存有minigui的资源文件(如图片、图表和字体等)。
#cd /home/minigui/minigui-res-str-1.6
#make install
minigui运行时需要使用,主要配置使用的有图形引擎、输入引擎和窗口字体等。修改/home/minigui_lib/etc目录下文件,使用commlcd图形引擎和comm输入引擎。
结语
详细介绍了minigui到ev44b0ii的移植过程,主要就是编写适用于目标硬件的gal图形引擎和ial输入引擎。上述移植可以快速构建一个可视化软件系统,“嵌入式linux+minigui图形系统”的设计模式是嵌入式可视化软件系统较理想的设计模式,将大大缩短嵌入式可视化软件的开发周期。
参考 文献
[1]周立功.arm嵌入式系统基础教程[m].北京:北京航空航天大学出版社,2005.
[2]詹瑾瑜,熊光泽,孙明.一种嵌入式gui软件结构实现方案[j]. 电子 科技大学学报,2003,32(1):2-4.
[3]马晓波.嵌人式gui的研制-gui支撑技术的研究与实现[d].成都:电子科技大学硕士 论文 ,2003:40-51.
[4]施晓红,周佳.精通gui图形界面编程[m].北京:北京大学出版社,2003.
本文链接:http://www.qk112.com/lwfw/jsjlw/xinxiguanli/260165.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学