您当前的位置:首页>论文资料>Qt4在Linux﹢ARM9嵌入式系统中的移植与应用

Qt4在Linux﹢ARM9嵌入式系统中的移植与应用

资料类别:论文资料

文档格式:PDF电子版

文件大小:357.95 KB

资料语言:中文

更新时间:2024-12-20 17:16:55



推荐标签:

内容简介

Qt4在Linux﹢ARM9嵌入式系统中的移植与应用 微事技术与度用
软件设计与开发
Qt4在Linux+ARM9嵌入式系统中的移植与应用
李文睿方世烟
(福州大学物理与信息工程学院福建福州350108)
摘要:如何为特定的丧入式系统快速地开发出界面友好、直观,人机交互图形化的应用程序。本文根据跨平台C++GUI一一Qt4的特点,实现 Qt4在Linux+ARM9丧入式系统中的移植,并解决Qt4对特定获入式系统中自制键盘响应问题。最后在开发PC机上装QVFB,方便开发者在PC端就可以完成对应用于表入式系统中的Qt4程序的调试工作。从面提高应用程序开发的效率。
关键词:Qt4嵌入式系统移植
中图分类号:TP311.5
文献标识码:A
文章编号:10079416(2011)06-0091-01
本文主要介绍Q14在嵌人式系统中的移植方法和如何使Qt4 在嵌人式系统中对自制键盘的响应,并介绍QVFB在开发PC机上使用方法。用Qt4编译嵌人式图形界面程序可以大大减少开发时间,并且编译的程序界面友好直观。
在ARM9+Linux系统中对Qt4的移植
本文提出的移植方法需要在开发PC机上安装Fedroal13Linux 操作系统。移植过程分为三步:
()在Linux操作系统中对qt-embedded-linux-opensource-sre-4.5.3.ar.gz解压。运行Linux终端,进人qt源码包文件夹,运行/ eonfigure命令对Ot安装配置文件进行配置。配置时需要注意儿个选项,如-embedded用于配置Qt运行的CPU架构,-qvfb用于配置 qvfb的安装,=depths用于配置Ot所支持显示屏灰阶数等。然后运行gmake命令生成安装配置文件,最后再运行gmakeinstall进行安装。这里需要配置安装两份,一份安装Qtarm版本,应用于移植到arm嵌人式系统中。安装arm版本时需注意是否给终端添加arm-linux交叉编译工具路径,没有需另行添加。另一份安装x86版本,方便开发者在PC端就可以完成应用于嵌人式系统中的Q14程序的调试工作。
(2)Qt安装完成之后,将arm版本安装路径下的lib文件夹拷贝到嵌人式系统中相应的文件夹下。如Qtarm版本采用默认路径安装,会自动安装在usrlocal/Trolltech/QtEmbedded-4.5.3-arm目录下,然后将该目录下的lib文件夹全部拷贝到嵌人式系统中相同路径下。
(3)在linux操作系统终端运行./qt-creator-linux-x86-opensource-13.1.bin安装Qt开发跨平台IDEQtCreator,安装好之后为QtCreator添加arm和x86版本Qt的qmake路径。
这样Ot4在ARM9+Linux最人式系统中的移植就完成了。可以
@Virtual framebuff+X Ele.Miew
Help
netat
P Mask:
Gateway DNS: MAC:
save
218.193.124.120 255.255.255.0 218.193.124.254 210.34.48.34
08:90.90.90.90:90
close
14:3
IP Mask GateWay
DNS MAC
save
218.193.124.120 255.255.255.0 218.193.124.254 210.34.48.34 08.90.90.90.90.90
son
AY
09117:10
图1应用程序在QVFB与嵌入式系统中显示效果对比图万方数据
在OtCreator中编辑、编译运行于ARM9+Linux嵌人式系统中的图形界面应用程序。
QVFB的使用
QVFB的使用方法:首先在Linux终端启动QVFB,启动QVFB 时可以设置QVFB的大小从而与嵌入式系统的显示屏相匹配。如嵌人式系统中显示屏是300*200,则在终端运行qvfb-width300-height200&。然后运用x86版本的qmake编译程序,如本例中的 netset程序,运行程序,这时会在QVFB显示运行效果,如图1左所示。再用arm版本的qmake编译程序,在ARM9+Linux系统中运行效果如图1右所示。对比两张图,显示内容完全一致。所以QVFB 方便开发者在PC端就可以完成对应用于嵌人式系统中的Qt4程序的调试工作。从而提高应用程序开发的效率。(如图1)
Qt4对特定嵌人式系统中自制键盘响应
为了让Q14对自制键盘响应,需要创建一个动态链接库,在库中创建两个类:一个基于QWSKeyboardHandler涨生的键盘处理类(KeyHandler)和一个基于QKbdDriverPlugin派生的键盘插件类(KbdPlugin)。
KeyHandler类的主要作用是完成打开、读取底层键盘设备,并将读取到的键值映射为Q14的键值。
在一个动态库中Plugin类是导出的,所以Pligin类主要完成创建KeyHandler类的对象和与外部的接口。重载QKbdDriverPlugin基类中的create和keys函数。在create中创建KeyHandler类的对象,在keys中返回插件名。最后把动态库中的Plugin类用Q_EXPORT PLUGIN20导出。
用Qtarm版本编译键盘动态库,并把其拷到嵌人式系统中的 QtEmbedded-4.6.2-arm/plugins/kbddrivers目录下。当需要调用键盘动态库时,增加一个环境变量QWS_KEYBOARD,使其值为键盘动态库的库名。从而实现在嵌入式系统中Qt4对自制键盘的响
应。结语
Qt4是一种具有良好移植性的跨平台C++GUI编译工具。本文在ARM9+Linux环境下移植Qt4。并编写键盘动态库,使Qt4能响应嵌人式系统中的自制键盘。从而能为特定的嵌人式系统快速地开
发出界面友好、直观,人机交互图形化的应用程序。参考文献
[1]蔡志明.卢传富.李立夏等.精通Qt4编程.电子工业出版社
[2]GasminiB,MarkS.C++GUIQt3编程.北京航空航天大学出版社
[3]宋宝华Linux设备驱动开发详解人民邮电出版社,[4]成洁,卢紫毅.0t4精彩实例分析.清华大学出版社,
上一章:高清系统和标清系统视频制作的初步比较 下一章:一种基于嵌入式实时操作 系统Vxworks下的数据压缩技术

相关文章

基于ARM9_2410EP的嵌入式Linux的研究和移植 ARM9嵌入式系统设计:基于S3C2410与Linux Linux在嵌入式操作系统中的应用 嵌入式设计及Linux驱动开发指南-基于ARM9处理器 嵌入式单片机在电机控制系统中的应用 SPI和单片机技术在嵌入式系统扩展中的应用 国际电气工程先进技术译丛 嵌入式系统在智能电器和能源管理中的应用 EP9315嵌入式平台在磨床及车床一体化数控系统中的应用