教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教学研究 >

基于嵌入式图形界面开发与应用

来源:网络收集 时间:2026-09-14
导读: 基于嵌入式图形界面开发与应用 《工业控制计算机》2010年第23卷第6期29 基于嵌入式图形界面开发与应用 BasedonEmbeddedGraphicalInterfaceDevelopmentandApplication 蒋邦友 闫学文(太原科技大学电子信息工程学院,山西太原030024) 摘 要 介绍了Qt的技术,

基于嵌入式图形界面开发与应用

《工业控制计算机》2010年第23卷第6期29

基于嵌入式图形界面开发与应用

BasedonEmbeddedGraphicalInterfaceDevelopmentandApplication

蒋邦友

闫学文(太原科技大学电子信息工程学院,山西太原030024)

介绍了Qt的技术,Qt/Embedded开发环境在Linux系统中的搭建。阐述Qt/Embedded应用程序如何在主机上进行交叉编译以及在TQ2440目标机上的运行上。该方法也适用于其它嵌入式产品的图形用户界面的设计。

关键词:图形用户界面,Qt,交叉编译

Abstract

ThispaperintroducestheQttechnology,theQt/EmbeddeddevelopmentenvironmentinLinuxsystembuild,andelaborateshowtheQt/EmbeddedapplicationproceduredoescarryonthecrosscompilingaswellasontheTQ2440targetmachine'smovementonthemainengine.Thismethodisalsosuitableforotherembeddedproductgraphicaluserinterfacedesign.

Keywords:graphicaluserinterface,Qt,cross

compiling

随着嵌入式消费电子产品的普及,例如PDA(个人数字助理)、智能手机、手持信息设备等,嵌入式图形用户界面(GUI:

嵌入式设备称为目标机。本文操作系统RedHat9.0是用

GraphicalUserInterface)已成为不可缺少的重要组成部分,

嵌入式图形用户界面以其丰富的图形图像信息、直观的表达方式与用户交互,被越来越多的嵌入式系统所采用,现已成为当今嵌入式领域的发展热点之一。

1Qt的分析

图形用户界面是软件与最终用户的接口,在很大程度上决

VMwareWorkstation安装在PC机上,所使用的开发板是广州天嵌计算机科技有限公司生产的TQ2440开发板。S3C2440是三星公司推出的一款功能强大,功耗极低的ARM9嵌入式CPU,应用范围非常广泛。

搭建的系统平台基本框架为嵌入式微处理器(TQ2440)+嵌入式操作系统(Linux)。第一步在PC上设置超级终端,如图1所示,这样就可以实现PC机和TQ2440目标板联通。

定着软件的成败。所以,为应用程序选择图形用户界面开发工具箱是软件开发过程中非常重要的一件事。目前,可供选择的图形用户界面工具箱较多,每个工具箱都有自己的优点和缺点。

Linux操作系统下的图形用户界面开发工具QtDesigner

提供丰富的控件,利用直接拖拽控件的方式可以很方便地进行软件界面的设计。Qt是诺基亚公司的一个的产品,是完全面向对象的跨平台图形用户界面开发工具,是Linux系统中最流行的开发工具之一,也是在Unix上自由软件开发的主流。主要有以下特点:

1)优良的跨平台特性,Qt支持下列操作系统:MicrosoftWin-dows,Linux,Solaris,SunOS,DigitalUNIX,FreeBSD,BSD/OS,QNX等等。

2)良好的面向对象,Qt的封装机制使得Qt的模块化程度非常高,可重用性较好。Qt提供了一种称为Signals/Slots的安全类型来替代Callback,这使得各个元件之间的协同工作变得十

分简单。

图1超级终端设置

第二步在RedHat9.0的终端使用#minicom-s命令设置如下:

3)Qt是一种跨平台的工具包,它对编程者隐藏了在处理不

同窗口系统时的潜在问题,使程序员避免了在文件处理、时间处理等方面所存在的依赖操作系统的细节问题。

4)开发程序的方便性,Qt提供了可视化的开发工具QtDe-signer,使用该工具可以直接向项目中添加各种组件。Qt还为应

用程序的本地化提供完全支持,所有用户界面文本都可以被译成各国语言。

2开发过程

2.1主机与目标机环境的建立

嵌入式系统应用软件的开发属于跨平台开发,需要一个交叉开发环境在PC机上编译出适用于嵌入式设备CPU架构的软件。用来开发的计算机一般称为宿主机,运行着Linux程序,

图2

端口设置

基于嵌入式图形界面开发与应用

30

完成以上两步,就建立好了主机RedHat9.0和目标机

TQ2440的开发环境。宿主机RedHat9.0装有诺基亚公司的自由版软件包Qtopia-free-src-2.2.0.rar.gz。Qtopia2.2.0安装包包含了qt-x11-3.X、qt-x11-2.X、Qt/Embedded2.3.12和qtopia2.2.0。开发Qt/Embedded应用程序所需要的工具见表1。此外还需要相应的库(1ibqte、libqpe、libqtopia)和必要的头文

件支持。

表1

开发Qt/Embedded

应用程序所需要的工具

2.2创建Qt应用程序

Qt应用程序中,首先是在main.cpp中创建QApplication对象,QApplication类负责图像用户界面应用程序的控制流和

主设置,它包含主事件循环,在其窗口系统和其它资源的所有事件被处理和调度,它也处理应用程序的初始化和结束并提供对话管理。我们以heoll.cpp例子为例。#include<qapplication.h>//QApplication类的定义#include<qpushbutton.h>//定义QPushButton类intmain(intargc,char觹觹argv)//函数是程序的入口邀

QApplicationa(argc,argv);//a是程序的QApplicationQPushButtonhello(″Helloworld选″,0);//按钮被设置成显示并

且它构成了一个窗口

hello.resize(100,30);//按钮设置成100像素宽,30像素高a.setMainWidget(&hello);//按钮被选为这个应用程序的主窗口部件

hello.show();

//用show()来使它变为可见的returna.exec();//这里就是main()把控制转交给Qt,并

且当应用程序退出的时候exec()就会返回

2.3交叉编译

1)在宿主机RedHat9.0设置交叉编译器arm-linux-gcc为v3.2.3,#gedit/etc/profile添加如下内容:

#pathmunge/usr/local/arm/2.95.3/bin

pathmunge/usr/local/arm/3.3.2/bin

#pathmunge/opt/EmbedSky/crosstools_3.4.1_softfloat/arm-lin-ux/gcc-3.4.1-glibc-2.3.3/bin

保存profile文件之后#soucrce/etc/profile之后该交叉编译器成当前默认的3.2.3交叉编译器。3.3.2版本的交叉编译器用来编译Qt/Embedded;2.95.3版本的交叉编译器用来编译VIVI以及移植boa等;3.4.1_softfloat版本的交叉编译器用来编译内核、busybox、u-boot和各种程序等。

2)在宿主机RedHat9.0设置Qt/Embedded环境变量:

#exportQTDIR=/opt/qte-3.2.3//设置当前路径为/opt/qte-3.2.3

#exportLD_LIBRARY_PATH=$QTDIR/lib

#$PATH

显示内容为:

bash:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/arm/3.3.2/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:没有那个文件或目录

3)在目标机上设置Qt/Embedded环境变量:

#exportQTDIR=/root/qte-3.2.3

//设置当前路径为/opt/qte-3.2.3

基于嵌入式图形界面开发与应用

#exportLD_LIBRARY_PATH=$QTDIR/lib

4)设置好Qt/Embedded环境变量之后,在宿主机上就要对heoll.cpp进行编译:

#qmake-project//生成.pro文件#qmake//生成Makefile

#geditMakefile//gcc替换arm-linux-gcc,g++替换为

arm-linux-g++#make

//编译生成目标机上可执行的文件3在目标机上运行程序

将编译好的Qt …… 此处隐藏:2494字,全部文档内容请下载后查看。喜欢就下载吧 ……

基于嵌入式图形界面开发与应用.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/1581037.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)