




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、www.chinaEDA.cn嵌入式用户图形界面编程嵌入式用户图形界面编程n嵌入式图形系统简介n基于Qt/Embedded的嵌入式GUI设计www.chinaEDA.cn1、嵌入式图形系统简介、嵌入式图形系统简介1.1 Qt/Embedded1.1 Qt/EmbeddedQt/Embedded(Qt/Embedded(简称简称QtE)QtE)是一个专门为是一个专门为嵌入式系统设计图形用户界面的工具包。嵌入式系统设计图形用户界面的工具包。QtQt是挪威是挪威TrolltechTrolltech软件公司的产品,它为软件公司的产品,它为各种系统提供图形用户界面的工具包,各种系统提供图形用户界面的工具
2、包,QtEQtE就是就是QtQt的嵌入式版本。的嵌入式版本。 www.chinaEDA.cn1.1 Qt/Embedded运用QtE,开发者可以:用QtE开发的运用程序要移植到不同平台时,只需求重新编译代码,而不需求对代码进展修正。可以随意设置程序界面的外观。可以方便地为程序衔接数据库。可以使程序本地化。可以将程序与Java集成。www.chinaEDA.cn嵌入式系统地要求是小而快速,而QtE就能协助开发者为满足这些要求开发强健地运用程序。QtE是模块化和可裁剪地。开发者可以选取他所需求的一些特性,而裁剪掉所不需求的。这样,经过选择所需求的特性,QtE的映像变得很小,最小只需600K左右。w
3、ww.chinaEDA.cn同Qt一样,QtE也是用C+写的,虽然这样会添加系统资源耗费,但是却为开发者提供了清洗的程序框架,使开发者可以迅速上手,并且可以方便地编写自定义的用户界面程序。由于QtE是作为一种产品推出,所以它有很好的开发团体和技术支持,这对于运用QtE的开发者来说,方便开发过程,并添加了产品的可靠性。www.chinaEDA.cn总的来说,QtE拥有下面一些特征:拥有同Qt一样的API;开发者只需求了解Qt的API,不用关怀程序所用到的系统与平台 它的构造很好地优化了内存和资源地利用。拥有本人的窗口系统:QtE不需求一些子图形系统。它可以直接对底层的图形驱动进展操作。 模块化:
4、开发者可以根据需求本人定制所需求的模块。代码公开以及拥有非常详细的技术文档协助开发者。 强大的开发工具。www.chinaEDA.cnl与硬件平台无关:QtE可以运用在一切主流平台和CPU上。支持一切主流的嵌入式Linux,对于在Linux上的QtE的根本要求只不过是Frame Buffer设备和一个C+编译器(如gcc)。Qte同时也支持很多实时的嵌入式系统,如QNX和WindowsCE。 l提供紧缩字体格式:即使在很小的内存中,也可以提供一流的字体支持。l支持多种的硬件和软件的输入。l支持Unicode,可以轻松地使程序支持多种言语。l支持反锯齿文本和Alpha混合的图片。www.chin
5、aEDA.cnTrolltech公司在QtE的根底上开发了一个运用的环境Qtopia,这个运用环境为挪动和手持设备开发。其特点就是拥有完全的、美观的GUI,同时它也提供可上百个运用程序用于管理用户信息、办公、文娱、Internet交流等。曾经有很多公司采用了Qtopia来开发他们主流的PDA。www.chinaEDA.cnQtE虽然公开代码和技术文档,但是它不是免费的,当开发者的商业化产品需求用到他的运转库时,必需向Trolltech公司支持license费用(每套3美金),假设开发的东西不用于商业用途那么不需求付费。QtE由于平台无关性和提供了很好的Gui编程接口,在许多嵌入式系统中得到了广
6、泛的运用,是一个胜利的嵌入式GUI产品。www.chinaEDA.cn1.2 MicrowindowsMirowindows是嵌入式系统中广为运用的一种图形用户接口,其官方网站是:。这个工程的早期目的是在嵌入式Linux平台上提供和普通个人电脑上类似的图形用户界面。作为PC上X-Windows的替代品,Microwindows提供了和X-Windows类似的功能,但是占用的内存要少得多,根据用户得配置,Microwindows占用得内存资源在100KB-60KB。www.chinaEDA.cn1.2 MicrowindowsMicrowindows支持多种外部设
7、备得输入,包括液晶显示器、鼠标和键盘等。在嵌入式Linux平台上,从Linux2.2.x的内核开场,为了方便图形的显示,运用了framebuffer的技术。Microwindows完全支持Linux最新framebuffer技术,支持每个象素1位、2位、4位、8位、16位、24位和32位的颜色空间/灰度,并且经过调色板技术将RGB格式的颜色空间转换成目的机器上最相近的颜色,然后显示出来。www.chinaEDA.cn1.2 MicrowindowsMicrowindows的中心基于显示设备接口,因此可移植行很好,microwindows有本人的Framebuffer,因此它并不局限于Linux
8、开发平台,在eCos、FreeBSD、RTEMS等操作系统上都能很好地运转。 此外,Microwindows能在宿主机上仿真目的机。这意味着基于Linux的Microwindows运用程序的开发和调试可以在普通的个人电脑上进展,而不需求运用普通嵌入式软件的“宿主机目的机调试方式,从而大大加快了开发速度。Mincrowindows是完全免费的一个用户图形系统。 www.chinaEDA.cn1.3 MiniGUI MiniGUI是由北京飞漫软件技术主持的一个自在软件工程(遵照GPL条款),其目的是为基于Linux的实时嵌入式系统提供一个轻量级的图形用户界面支持系统。 MiniGUI为运用程序定义
9、了一组轻量级的窗口和图形设备接口。利用这些接口,每个运用程序可以建立多个窗口,而且可以在这些窗口中绘制图形。用户也可以利用MiniGUI建立菜单、按钮、列表框等常见的GUI元素。www.chinaEDA.cn1.3 MiniGUI用户可以将MiniGUI配置成“MiniGUI-Threads或者“MiniGUI-Lite。运转在MiniGUI-Threads上的程序可以在不同的线程中建立多个窗口,但一切的窗口在一个进程中运转。相反,运转在MiniGUI-Lite上的每个程序是单独的进程,每个进程也可以建立多个窗口。MiniGUI-Threads适宜于具有单一功能的实时系统,而MiniGUI-L
10、ite 那么适宜于类似于PDA和瘦客户机等嵌入式系统。www.chinaEDA.cn1.2 QTE和和Qtopia开发模型开发模型1.2.1 QTE与QT/X11比较Linux KernelFramebufferQT/EmbeddedQT/X11XlibX Window ServerQT APIApplication Source Codewww.chinaEDA.cn1.2.1 QTE与与QT/X11比较比较QT/Embedded经过Qt API 与Linux I/O设备直接交互,成为嵌入式linux端口。同Qt/X11相比, QT/Embedded很节省内存,其不需求一个X效力器或是Xli
11、b库,它在底层摈弃了Xlib,采用framebuffer帧缓存作为底层图形接口。同时,将外部输入设备笼统为keyboard和mouse输入事件。 QT/Embedded 的运用程序可以直接写内核缓冲帧,这可防止开发者运用繁琐的Xlib/Server系统。www.chinaEDA.cn1.2.2 Qtopia引见引见Qtopia是一种全方位的运用开发平台,它可用于基于嵌入式linux的PDA,挪动,web pads,以及其他挪动计算设备。Qtopia构建于Qt/Embedded之上,是专为基于linux的消费电子产品提供和创建图形用户界面而设计的。常见的有两种版本:Qtopia Phone版:专
12、为基于linux的智能和多功能设计。Qtopia PDA版:专为基于linux的PDA设计。www.chinaEDA.cn1.2.2 Qtopia引见引见Qtopia特征:视窗操作系统;同步窗口;开发环境;本地化支持;游戏和多媒体;PIM运用程序;输入法;个性化选项;internet运用程序;java集成;无线支持;www.chinaEDA.cn1.2.3 Qt/Embedded开发模型开发模型嵌入式软件开发通常都采用交叉编译的方式进展,基于Qt/Embedded和Qtopia的GUI运用开发也采用这样的方式。先在宿主机上调试运用程序,调试经过后,经过交叉编译移植到目的板上。Qt/Embedd
13、ed直接写入帧缓存,在宿主机上那么是经过qvfbvirtual framebuffer来模拟帧缓存。qvfb是X窗口用来运转和测试Qtopia运用程序的系统程序。qvfb运用了共享内存存储区域虚拟的帧缓存来模拟帧缓存并且在一个窗口中模拟一个运用程序来显示帧缓存,显示的区域被周期性的改动和更新。www.chinaEDA.cn1.2.3 Qt/Embedded开发模型开发模型宿主机移植所需工具及环境变量声明:工具软件描述变量声明Tmake1.11生成Makefile文件TMAKEDIR/TMAKEPATH/PATHQt-x11-2.3.2Qvfb虚拟帧缓存工具Uic用户界面编辑器Designer
14、Qt 图形设计器LD_LIBRARY_PATH_/PATHQt-embedded-2.3.7Qt库支持 libqte.soQTEDIR/LD_LIBRARY_PATH/PATHQtopia-free-1.7.0应用程序开发包 桌面环境QPEDIR/LD_LIBRARY_PATH/PATHwww.chinaEDA.cn1.2.4 Qt/Embedded信号与插槽信号与插槽1概述信号与插槽是QT自定义的一种通讯机制,它独立于规范的从C/C+言语。他的实现必需借助于mocMeta Object Compiler的QT工具,他是一个C+预处置程序,为高层次的事件处置自动生成所需求的附件代码。所谓图形用
15、户接口的运用就是对用户的动作作出呼应。程序员那么必需把事件和相关代码联络起来,这样才干对事件作出正确的呼应。www.chinaEDA.cn一切从一切从QObjectQObject或其子类例如或其子类例如QwidgetQwidget派派生的类都可以包含信号和插槽。生的类都可以包含信号和插槽。当对象改动形状时,信号就由该对象发射当对象改动形状时,信号就由该对象发射emitemit出来。出来。插槽用于接纳信号,但它们是普通的对象成插槽用于接纳信号,但它们是普通的对象成员函数。员函数。一个插槽并不知道能否有任何音讯与本人相一个插槽并不知道能否有任何音讯与本人相连。用户可以将很多信号与一个插槽相连,也可
16、连。用户可以将很多信号与一个插槽相连,也可将单个音讯与多个插槽进展链接。将单个音讯与多个插槽进展链接。 www.chinaEDA.cn2信号与插槽的实现信号:void mysignal(int x);插槽:void myslotint x;信号与插槽关联:connectabutton, SIGNAL(clicked),SLOT(quit);www.chinaEDA.cn3、基于、基于Qt/Embedded的嵌入式的嵌入式GUI设计设计3.1 3.1 建立建立Qt/EmbeddedQt/Embedded开发环境开发环境安装安装x86-qtopiax86-qtopia源代码源代码# tar xvz
17、f x86-qtopia.tgz C /sbc2410 # tar xvzf x86-qtopia.tgz C /sbc2410 # cd /sbc2410/x86-qtopia # cd /sbc2410/x86-qtopia #./build (shell #./build (shell 程序程序) )安装安装SBC-2410XSBC-2410X版本的版本的arm-qtopiaarm-qtopia源代码源代码#tar xvzf arm-qtopia.tgz C /sbc2410#tar xvzf arm-qtopia.tgz C /sbc2410# cd /sbc2410/x86-qtopia # cd /sbc2410/x86-qtopia #./build (shell #./build (shell 程序程序) )www.chinaEDA.cn3.2 设置链接库当在PC上模拟Qtopia的运转时,需求用到对应Qt版本的库文件,因此需求修正/etc/ld.so.conf 文件以顺应刚刚安装的Qt(Redhat安装时带有Qt库,但不适宜我们最新安装的版本),修正后的ld.so.conf文件内容如下: /sbc2410/x86-qtopia/qt/lib
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025心力衰竭的护理
- 气候变化下的农业调整试题及答案
- 医疗耗材采购合同补充协议二零二五年效期管理条款
- 2024年计算机二级考试提分诀窍试题及答案
- 黑龙江省佳木斯市富锦市2025届数学四下期末统考试题含解析
- 黑龙江省双鸭山市尖山区第一中学2025年高三下学期2月期末统考历史试题含解析
- 备考中的时间规划:2024年育婴师考试试题及答案
- 黑龙江省绥棱县2025届下学期初三物理试题期初联考考试试卷含解析
- 黑龙江省齐齐哈尔十一中学2024-2025学年高三下一模调研测试(期末)试题数学试题含解析
- 黑龙江艺术职业学院《商务智能与数据挖掘Ⅱ》2023-2024学年第二学期期末试卷
- 中石化巴陵石油化工有限公司炼油部环己酮装置技术升级改造项目环评报告书
- 化学气相沉积CVD教材课件
- 快开门式压力容器操作规程
- 危化品MSDS知识考核试题与答案
- 医院常见化验指标的正常值及临床意义临床讲解
- 白芨栽培技术专题培训课件
- 医保按病种分值付费(DIP)院内培训
- 普通创造学:第五章创造原理及其技法(5次)
- 施工项目部标准化配置达标检查表(新模板)(1)
- 茶叶产业园项目计划书(参考模板)
- 入伍简历当兵简历.doc
评论
0/150
提交评论