论文网首页|会计论文|管理论文|计算机论文|医药学|经济学论文|法学论文|社会学论文|文学论文|教育论文|理学论文|工学论文|艺术论文|哲学论文|文化论文|外语论文|论文格式
中国论文网

用户注册

设为首页

您现在的位置: 中国论文网 >> 计算机论文 >> 计算机理论论文 >> 正文 会员中心
 计算机应用论文   计算机理论论文   计算机网络论文   电子商务论文   软件工程论文   操作系统论文   通信技术论文
MiniGUI到EV44B0Ⅱ上的移植研究
摘  要: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对系统的需求具有如下几大优势:可伸缩性强、轻型、占用资源少、高性能、高可靠性和可配置性。WWW.11665.cOm
        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目录下的makefile.am文件,在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目录下的makefile.am文件,新定义一个变量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运行时需要使用minigui.cfg,主要配置使用的有图形引擎、输入引擎和窗口字体等。修改/home/minigui_lib/etc目录下minigui.cfg文件,使用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.
  • 上一个计算机论文:
  • 下一个计算机论文:
  •  作者:曹望成 [标签: 上的 移植 ]
    姓 名: *
    E-mail:
    评 分: 1分 2分 3分 4分 5分
    评论内容:
    发表评论请遵守中国各项有关法律法规,评论内容只代表网友个人观点,与本网站立场无关。
    论基于Intranet技术的计算机通信网络的即时
    Win8的“心”,Win7的“脸”
    Blue袭来—Win8的继任者?(下)
    Win8应用更轻松
    暑假在即,Win8也能玩转老游戏
    Win8 Style,《WPS Office 2013抢鲜版》初体
    最超值Win8平板 华硕 ME400C平板电脑
    操作更简单!详解Win8资源管理器
    碉堡了!Win8也玩Ubuntu 3D特效
    PC操作系统份额:Win XP首次跌破40% Win8仅
    玩转Win8
    99m Tc—MIBI在乳腺良恶性包块鉴别中的应用
    | 设为首页 | 加入收藏 | 联系我们 | 网站地图 | 手机版 | 论文发表

    Copyright 2006-2013 © 毕业论文网 All rights reserved 

     [中国免费论文网]  版权所有