电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

实验八:MiniGUI应用程序设计实验

10页
  • 卖家[上传人]:枫**
  • 文档编号:489893137
  • 上传时间:2024-02-28
  • 文档格式:DOC
  • 文档大小:121.50KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、实验八 MiniGUI应用程序设计实验一、实验目的1了解MiniGUI的基本结构。2练习MiniGUI的系统配置和编译安装。3交叉编译、在目标板上运行MiniGUI。4分析并了解 MiniGUI应用程序hello world。5在目标板上运行hello world程序。二、实验设备和仪器1计算机 2FS2410P教学实验平台三、实验内容及要求 1MiniGUI的系统配置和编译安装2分析并了解 MiniGUI应用程序hello world。3交叉编译MiniGUI应用程序hello world。4在开发板上运行hello world程序。四、实验原理及步骤 . 实验原理MiniGUI是一种面向嵌入式系统和实时系统的图形用户界面支持系统。它主要运行于Linux控制台,实际可以运行在任何一种具有线程支持的POSIX兼容系统上。MiniGUI同时也是国内最早出现的几个自由软件项目之一。与Microwindows相比,MiniGUI和MicroWindows均为自由软件,只是前者遵循LGPL条款,后者遵循MPL条款。这两个系统的技术路线也有所不同。MiniGUI的策略是首先建立在比较成熟的图形引

      2、擎之上,比如 SVGALib和LibGGI,开发的重点在于窗口系统如图形接口; MicroWindows目前的开发重点则在底层的图形引擎,窗口系统和图形接口方面的功能还比较欠缺。举个例子来说,MiniGUI有一套用来支持多字符集和多编码的函数接口,可以支持各种常见的字符集,包括GB、Big5、Unicode等,而MicroWindows在多字符集的支持上尚没有统一接口。- MiniGUI最初是为了满足一个工业控制系统的需求而设计和开发的。这个工业控制系统是清华大学为一台数控机床设计的计算机数控系统(CNC)。在比较了DOS、Windows 98、Windows NT、Linux等系统之后,该项目组决定选择RT-Linux作为实时操作系统,以便满足2ms甚至更高的实时性。但是图形用户界面是一个问题,因为 X Window不适合于实时控制系统,并且当时X Window系统的本地化也不尽人意。因此,项目组决定自己开发一套图形用户界面支持系统。这就是MiniGUI产生的背景。 您可以从北京飞漫软件技术有限公司的网站下载MiniGUI源代码、开发文档及示例程序。免费下载的MiniGUI只能用于开

      3、发GPL或其他公开源码的应用软件,如果您要利用MiniGUI开发专有或商业软件,则必须从北京飞漫软件技术有限公司购买商业授权。在嵌入式系统中,MiniGUI位于操作系统之上,应用程序之下,它为图形应用程序提供窗口、控件、事件管理、图形设备接口等相关接口。针对嵌入式Linux的MiniGUI应用软件开发,一般的开发步骤为:第1步.在运行Linux的PC机上安装MiniGUI,建立MiniGUI的运行环境。第2步.在PC机上开发并调试MiniGUI应用程序。第3步.为目标系统编写MiniGUI的输入引擎,确保在目标系统上能够运行MiniGUI 第4步.在目标系统上运行并测试MiniGUI应用程序。2. 实验步骤2.1 在运行Linux的PC机安装并运行MiniGUI-STR(1) 下载MiniGUI-STR相关资源包登录:“ftp:/202.193.9.75/嵌入式系统/课程实验/嵌入式Linux系统开发实验/MiniGUI”或北京飞漫软件技术有限公司()下载MiniGUI-STR V版本以及对应的资源和实例程序包:1) libminigui-str-.tar.gz2)3) mg-samp

      4、les-str-.tar.gz并保存在/s3c2410目录下。(2) 建立MiniGUI的PC运行环境在运行Linux的PC机上,MiniGUI应用程序可以两种方式运行:n 在X Window系统上,运行在虚拟Frame Buffer程序qvfb中;n 在Linux的字符控制台上,运行在Linux内核提供的Frame Buffer驱动程序上不管是qvfb还是控制台下的Frame Buffer驱动程序,两者的本质是一样,即它们都为MiniGUI提供了一种可以用来绘图的底层设施,就像一块画布一样。1) QVFBQVFB是QT提供的一个虚拟Frame Buffer工具,登录:“ftp:/202.193.9.75/嵌入式系统/课程实验/嵌入式Linux系统开发实验/MiniGUI”下载QVFB包(qvfb-1.0.tar.gz)到/s3c2410目录中。接着,按下面命令单独编译qvfb:#cd /s3c2410#tar zxf qvfb-1.0.tar.gz#./configure#make#make install执行完上述命令后,qvfb将被安装到默认的/usr/local/bin目录下。

      5、执行qvfb &命令: # qvfb &上述命令将启动qvfb程序,我们会在屏幕上看到qvfb程序会建立一个黑色的空白窗口,如图1所示:图1 (2) 配置Linux的Frame Buffer驱动程序(略,具体请参考“Linux/ucLinux+MiniGUI:嵌入式系统开发原理、工具及过程”节)(3)编译并安装MiniGUI-STRl 安装库文件#cd /s3c2410 #tar -zxvf libminigui-str-.tar.gz#cd libminigui-str-#./configure#make#make install不带任何参数执行./configure脚本将按照默认选项生成Makefile。在一切正常后,确保已经将/usr/local/bin目录添加到/etc/ld.so.conf文件中,然后运行ldconfig命令新系统的共享库搜索缓存。#/sbin/ldconfig因为默认的配置脚本将把MiniGUI的配置文件、函数库和头文件安装到以/usr/local为前缀的目录树中,具体说来:n 运行时配置文件将被安装到/usr/local/etc/ 目录下n 库文件将被安装

      6、到/usr/local/lib/目录下n 头文件将被安装到/usr/local/include/minigui/ 目录下l 安装资源文件#cd /s3c2410 #tar -zxvf minigui-res#cd minigui-res-str-1.6#make install 默认的安装脚本会把MiniGUI资源文件安装到/usr/local/include/minigui/res/目录下(4)运行MiniGUI-STR示例程序#cd /s3c2410 #tar zxf mg-samples-str-.tar.gz#cd mg-samples-str-1.6.2#make 在qvfb中运行MiniGUI应用程序,操作步骤如下:1)#qvfb /启动qvfb2)点击qvfb的菜单:file-.configure,设置成320X240 16位色的显示模式3)修改MiniGUI的运行时配置文件:/usr/local/etc/MiniGUI.cfg,指定要使用的图形引擎和输入引擎名称及相关参数,如下所示:修改完成后,输入命令:#cd /s3c2410/mg-samples-str-/src#

      7、./helloworld就可以运行已经编译好的MiniGUI示例程序。MiniGUI的窗口将显示在qvfb程序创建的窗口中,如图4所示:图42.2在目标板S3C2410上运行MiniGUI应用程序(1)交叉编译MiniGUI源代码:l 安装库文件:#cd /s3c2410 #tar -zxvf libminigui-str-.tar.gz #cd libminigui-str- -host=arm-Linux -build=i386-linux -target=arm-linux -with-osname=linux -with-style=pc3d -disable-cursor -disable-micemoveable -disable-nativegal -enable-threads -disable-textmode -enable-dummyial -enable-nativeial -enable-newgal -disable-savebitmap -enable-imegb2312 -enable-jpgsupport -enable-pngsupport -dis

      8、able-savescreen -enable-tinyscreen 解析:-target=arm-linux 用于指定目标平台类型,一般格式为“CPU类型-操作系统名称”;-prefix选项用于指定MiniGUI函数库的安装路径,默认的安装路径是/usr/local,交叉编译时不能使用默认值,否则它会覆盖本机的文件,本文使用交叉编译器环境的系统头文件和库文件所在目录:。#make #make install 在/usr/local/arm/2.95.3/arm-linux/include目录下会产生一个minigui的目录,包含.h后缀的头文件; 在/usr/local/arm/2.95.3/arm-linux/etc目录下会生成一个MiniGUI.cfg的配置文件,MiniGUI运行时需要使用MiniGUI.cfg配置文件,主要配置图形引擎,输入引擎,窗口字体等等;MiniGUI应用程序运行时,会先寻找用户主目录下的MiniGUI.cfg,其次是/usr/local/arm /2.95.3/arm-linux/etc/MiniGUI.cfg,最后是/etc/MiniGUI.cfg;

      9、 在/usr/local/arm/2.95.3/arm-linux/lib目录下会产生库文件,如图2所示:图2 l 安装资源文件#cd /s3c2410 #tar -zxvf minigui-res-st#cd minigui-res-str-1.6 #vi configure.linux先打开configure.linux文件修改并保存,将第12行处:prefix选项部分的默认值修改为交叉编译器所在的目录下,如图3所示图3#make install在/usr/local/arm/目录下会产生一个res目录,该目录下保存有MiniGUI的资源文件,如图标、位图和字体等。(2)编写hello world.c程序在s3c2410目录下,编辑源程序hello world.c,在FS2410P的液晶屏上实现“Hello MiniGUI!”字符输出。n 源代码见附录1n 编辑源程序 #cd /s3c2410#vi 交叉编译源程序arm-linux-gcc -o helloworld helloworld.c libminigui - libpthread解析:-o选项告诉gcc要生成的目标文件名,这里是helloworld,-l选项指定要链接的库,这里链接的是libminigui库和libpthread库。 libpthre

      《实验八:MiniGUI应用程序设计实验》由会员枫**分享,可在线阅读,更多相关《实验八:MiniGUI应用程序设计实验》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.