免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1298 | 回复: 0
打印 上一主题 下一主题

MiniGUI应用之PDA(一)-简介 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-01-20 22:14 |只看该作者 |倒序浏览

说明:从下篇开始,我将以实例的方式介绍MiniGUI.介绍我前一段参加实训的一个项目——多功能PDA。
一、MiniGUI简介
MiniGUI是面向实时嵌入式系统的轻量级图形用户界面支持系统。它自1999年初遵循GPL条款发布第一个版本以来,已广泛应用于手持信息终端、机顶盒、工业控制系统及工业仪表、彩票机、金融终端等产品和领域。
目前,MiniGUI已成为跨操作系统的图形用户界面支持系统,可在Linux/uClinux、eCos、uC/OS-II、VxWorks等操作系统上运行;已验证的硬件平台包括Intel x86、ARM(ARM7/AMR9/StrongARM/xScale)、PowerPC、MIPS、M68K(DragonBall/ColdFire)等。
二、MiniGUI的特点
MiniGUI为实时嵌入式操作系统提供了完善的图形及图形用户界面支持。可移植性设计使得它不论在哪个硬件平台、哪种操作系统上运行,均能为上层应用程序提供一致的应用程序编程接口(API)。
三、MiniGUI的功能特色
作为操作系统和应用程序之间的中间件,MiniGUI将底层操作系统及硬件平台差别隐藏了起来,并对上层应用程序提供了一致的功能特性,这些功能特性包括:
1.完备的多窗口机制和消息传递机制。
2.常用的控件类,包括静态文本框、按钮、单行和多行编辑框、列表框、组合框、进度条、属性页、工具栏、拖动条、树型控件、月历控件等。
3.对话框和消息框支持以及其它GUI 元素,包括菜单、加速键、插入符、定时器等。
4.界面皮肤支持。用户可通过皮肤支持获得外观非常华丽的图形界面。
5.通过两种不同的内部软件结构支持低端显示设备(比如单色 LCD)和高端显示设备(比如彩色显示器),前者小巧灵活,而后者在前者的基础上提供了更加强大的图形功能。
6.Windows 的资源文件支持,如位图、图标、光标等。
7.各种流行图像文件的支持,包括JPEG、GIF、PNG、TGA、BMP等。
8.多字符集和多字体支持,目前支持ISO8859-1~ISO8859-15、GB2312、GBK、GB18030、BIG5、EUC-JP、Shift-JIS、EUC-KR、Unicode等字符集,支持等宽点阵字体、变宽点阵字体、Qt/Embedded使用的嵌入式字体QPF、TrueType 以及Adobe Type1等矢量字体。
9.多种键盘布局的支持。MiniGUI除支持常见的美式PC键盘布局之外,还支持法语、德语等语种的键盘布局。
10.简体中文(GB2312)输入法支持,包括内码、全拼、智能拼音等。用户还可以从飞漫软件获得五笔、自然码等输入法支持。
11.针对嵌入式系统的特殊支持,包括一般性的I/O流操作,字节序相关函数等。
四、MiniGUI的技术优势
和其它针对嵌入式产品的图形系统相比,MiniGUI具有如下技术优势:
1.轻型、占用资源少
MiniGUI 本身的占用空间非常小。以嵌入式Linux操作系统为例,MiniGUI的典型存储空间占用情况如下:
◆ Linux 内核:300KB~500KB(由系统决定)
◆ MiniGUI支持库:500KB~700KB(由编译选项确定)
◆ MiniGUI字体、位图等资源:400KB(由应用程序确定,可缩小到200KB以内)
◆ GB2312输入法码表:200KB(不是必需的,由应用程序确定)
◆ 应用程序:1MB~2MB(由系统决定)
总体的系统占有空间应该在2MB到4MB左右。在某些系统上,功能完备的MiniGUI系统本身所占用的空间可进一步缩小到1MB以内。
MiniGUI能够在CPU主频为30MHz,仅有4MB RAM的系统上正常运行(使用uClinux操作系统)。这是其它针对嵌入式产品的图形系统,比如MicroWindows或者Qt/Embedded所无法达到的。
2.高性能、高可靠性
MiniGUI 良好的体系结构及优化的图形接口,可确保最快的图形绘制速度。在设计之初,就充分考虑到了实时嵌入式系统的特点,针对多窗口环境下的图形绘制开展了大量的研究及开发,优化了MiniGUI的图形绘制性能及资源占有。MiniGUI在大量实际系统中的应用,尤其在工业控制系统的应用,证明MiniGUI具有非常好的性能。
从1999年MiniGUI的第一个版本发布以来,就有许多产品和项目使用 MiniGUI,MiniGUI 本身也不断从这些产品或者项目当中获得发展动力和新的技术需求,不断提高了自身的可靠性和健壮性。
3.可配置
为满足嵌入式系统千变万化的需求,必须要求GUI系统是可配置的。和Linux内核类似,MiniGUI也实现了大量的编译配置选项,通过这些选项可指定MiniGUI库中包括哪些功能而同时不包括哪些功能。大体说来,可以在如下几个方面对MiniGUI进行定制配置:
◆ 指定MiniGUI要运行的操作系统,是普通嵌入式Linux、uClinux、eCos还是 uC/OS-II或者VxWorks。
◆ 指定生成基于线程的MiniGUI-Threads运行模式还是基于进程的MiniGUI-Lite运行模式,或者只是最简单的MiniGUI-Standalone运行模式。
◆ 指定要采用老的GAL/GDI接口(低端显示设备)还是新的GAL/GDI接口(高端显示设备)。
◆ 指定需要支持的GAL引擎和IAL引擎,以及引擎相关选项。
◆ 指定需要支持的字体类型。
◆ 指定需要支持的字符集。
◆ 指定需要支持的图像文件格式。
◆ 指定需要支持的控件类。
◆ 指定控件的整体风格,是三维风格、平面风格还是手持终端风格。
这些配置选项大大增强了MiniGUI的灵活性,对用户来讲,可针对具体应用需求量体裁衣,生成最适合产品需求系统及软件。
4.可伸缩性强
MiniGUI丰富的功能和可配置特性,使得它既可运行于基于龙珠的低端产品中,亦可运行于基于ARM9的高端产品中,并使用MiniGUI的高级控件风格及皮肤界面等技术,创建华丽的用户界面。
5. 跨操作系统支持
理论上,MiniGUI可支持任意一个多任务嵌入式操作系统;实际已支持Linux/uClinux、eCos、uC/OS-II、VxWorks等嵌入式操作系统。同时,在不同操作系统上的MiniGUI,提供完全兼容的API接口。
五、Minigui的安装
你可以到飞漫软件的官方网站下载免费版的MiniGUI软件、资源包和示例程序包。地址为:http://www.minigui.com/index.php?id=27&L=1


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/22935/showart_468404.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP