chapter嵌入式GUI设计课件.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chapter嵌入式GUI设计课件.ppt

1)轻型、占用资源少 Linux 下MiniGUI 的典型存储空间占用情况如下: Linux 内核:300KB~500KB(由系统决定) MiniGUI 支持库:500KB~700KB(由编译选项确定) MiniGUI 字体、位图等资源:400KB(由应用程序确定,可缩小到200KB 以内) GB2312 输入法码表:200KB(不是必需的,由应用程序确定) 应用程序:1MB~2MB(由系统决定) 总体的系统占有空间应该在 2MB 到4MB 左右。在某些系统上,功能完备的MiniGUI 系统本身所占用的空间可进一步缩小到1MB 以内。 2)高性能、高可靠性 MiniGUI 良好的体系结构及优化的图形接口,可确保最快的图形绘制速度。 在设计之初,就充分考虑到了实时嵌入式系统的特点,针对多窗口环境下的图形绘制开展了大量的研究及开发,优化了MiniGUI 的图形绘制性能及资源占有。 3)可配置性 可以在如下几个方面对MiniGUI 进行定制配置: 指定 MiniGUI 要运行的操作系统,是普通嵌入式Linux、uClinux、eCos 还是 uC/OS-II 或者VxWorks。 指定生成基于线程的 MiniGUI-Threads 运行模式还是基于进程的MiniGUI-Lite 运行模式,或者只是最简单的 MiniGUI-Standalone 运行模式。 指定要采用老的 GAL/GDI 接口(低端显示设备)还是新的GAL/GDI 接口(高端显示设备)。 指定需要支持的 GAL 引擎和IAL 引擎,以及引擎相关选项。first_form 指定需要支持的字体类型。 指定需要支持的字符集。 指定需要支持的图像文件格式。 指定需要支持的控件类。 指定控件的整体风格,是三维风格、平面风格还是手持终端风格。 4)可伸缩性强 MiniGUI 丰富的功能和可配置特性,使得它既可运行于基于龙珠的低端产品中,亦可运行于基于ARM9 的高端产品中,并使用MiniGUI 的高级控件风格及皮肤界面等技术,创建华丽的用户界面。 5)跨操作系统支持 理论上,MiniGUI 可支持任意一个多任务嵌入式操作系统; 实际已支持Linux/uClinux、eCos、uC/OS-II、VxWorks 等嵌入式操作系统。 同时,在不同操作系统上的MiniGUI,提供完全兼容的API接口。 为了适合不同的操作系统环境,我们可将MiniGUI 配置成三种运行模式: MiniGUI-Threads。运行在MiniGUI-Threads 上的程序可以在不同的线程中建立多个窗口,但所有的窗口在一个进程或者地址空间中运行。 MiniGUI-Lite。MiniGUI-Lite 上的每个程序是单独的进程,每个进程也可以建立多个窗口。 MiniGUI-Standalone。这种运行模式下,MiniGUI 可以以独立进程的方式运行,既不需要多线程也不需要多进程的支持,这种运行模式适合功能单一的应用场合。 Qt/Embedded 的图形引擎实现基础 Qt/Embedded 的底层图形引擎基于framebuffer。Framebuffer 是在Linux 内核架构版本2.2 以后推出的标准显示设备驱动接口。 Framebuffer 驱动程序的实现分为两个方面:一方面是对LCD 及其相关部分的初始化,包括画在缓冲区的创建和对DMA 通道的设置;另外一方面是对画面缓冲区的读写,具体到代码为read、write、lseek 等系统调用接口。 在 Qt/Embedded 中,Qscreen 类为抽象出的底层显示设备基类,其中声明了对于显示设备的基本描述和操作方式,如打开、关闭、获得显示能力、创建GFX 操作对象等。 QGfx 类。该类抽象出对于显示设备的具体操作接口(图形设备环境),如选择画刷、画线、画矩形、alpha 操作等。 Qt/Embedded 在体系上为C/S 结构,任何一个Qt/Embedded 程序都可以作为系统中唯一的一个GUI Server 存在。 Qt/Embedded 的事件驱动基础 Qt/Embedded 中与用户输入事件相关的信号,是建立在对底层输入设备的接口调用之上的。 与图形发生引擎加载方式类似的,在系统加载构造QWSServer 时,调用QWSServer::openMouse与QWSServer::openKeyboard 函数。获得鼠标类设备和键盘类设备的设备类型和设备节点。值得注意的是,虽然几乎鼠标类设备的功能上基本一致,但由于触摸屏和鼠标底层接口并不一样,会造成对上层接口的不一致。 Qtopia 简介 Qtopia 最初是

文档评论(0)

风凰传奇 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档