课程列表

基本问题

开源资源

好好学习天天向上

联大大纲—通信电子 ;教师介绍; 单片机课程学习经验- 学习路线图; 1.概述 -应用 -定义 -特点 -构成; 2.嵌入式处理器 —DIY CPU处理器ARM处理器Cortex-A8S5PV210讨论; 3.汇编语言 -作业 4.Bootloader -作业 5.Linux内核移植 6.嵌入式Linux程序设计 7.图形用户接口QT 8.其他框架介绍; 9.嵌入式物联网应用系统设计

Qt/Embedded简介

Qt/Embedded(简称Qt/E)是一个专门为嵌入式系统设计图形用户界面的工具包。

Qt为各种系统提供图形用户界面的工具包,Qt/E就是Qt的嵌入式版本。

Qt/E开发的应用程序要移植到不同平台时,只需要重新编译代码,而不需要对代码进行修改。

可以随意设置程序界面的外观,方便地为程序连接数据库,将程序与Java 集成。嵌入式系统地要求是小而快速,而Qt/E 就能帮助开发者为满足这些要求开发强壮地应用程序, 可以使程序本地化。

Qt/E具有是模块化和裁性。开发者可以选取所需要的一些特性,而裁剪掉所不需要的。这样通过选择所需要的特性,Qt/E的映像变得很小,最小只有600K 左右。同Qt一样,Qt/E也是用C++写的,虽然这样会增加系统资源消耗,但是却为开发者提供了清晰的程序框架,使开发者能够迅速上手,并且能够方便地编写自定义的用户界面程序。

由于Qt/E是作为一种产品推出,所以它有很好的开发团体和技术支持,这对于使用Qt/E的开发者来说,方便开发过程,并增加了产品的可靠性。

1Qt/Embedded 特征

1)面向应用服务的特征如下:

l拥有同Qt 一样的API。开发者只需要了解Qt API,不用关心程序所用到的系统与平台。

l它的结构很好地优化了内存和资源地利用。

l拥有自己的窗口系统。Qt/E不需要一些子图形系统,它可以直接对底层的图形驱动进行操作。

l模块化。开发者可以根据需要自己定制所需要的模块。

l代码公开以及拥有十分详细的技术文档帮助开发者。

l强大的开发工具。

l与硬件平台无关。Qt/E 可以应用在所有主流平台和CPU 上,支持所有主流的嵌入式Linux

2)对于在Linux上的Qt/E的基本要求只不过是Frame Buffer设备和一个C++编译器(gcc)Qt/E同时也支持很多实时的嵌入式系统,如QNX WindowsCE。面向系统级服务特征如下:

l提供压缩字体格式。即使在很小的内存中,也可以提供一流的字体支持。

l支持多种的硬件和软件的输入。

l支持Unicode,可以轻松地使程序支持多种语言。

l支持反锯齿文本和Alpha 混合的图片。

Qt/E 虽然公开代码和技术文档,但是它不是免费的,当开发者的商业化产品需要用到他的运行库时,必须向Trolltech 公司支持license费用(每套3 美金),如果开发的应用产品仅用研究会教学用途,则不需要付费。

Qt/E由于平台无关性和提供了很好的GUI编程接口,在许多嵌入式系统中得到了广泛的应用,是一个成功的嵌入式GUI 产品。

2Qt/Embedded Qt/X11

Qt/Embedded通过Qt APILinuxI/O设施直接交互,成为嵌入式Linux端口。同Qt/X11相比,Qt/Embedded很节省内存,其不需要一个X服务器或是Xlib库,它在底层摈弃了Xlib,采用framebuffer(帧缓存)作为底层图形接口。Qt/EQt/X11在系统级所处位置比较如图7.9

7.9  Qt/EQt/X11在系统中的位置

在图7.9中显示的内容可知,Qt/Embedded将外部输入设备抽象为keyboardmouse 输入事件。Qt/Embedded的应用程序可以直接写内核缓冲帧,这可避免开发者使用繁琐的Xlib/Server系统。