OMAPL138开发板的Linux QT图像界面开发教程
更新时间:2023-09-14 15:53:01 阅读量: 初中教育 文档下载
- omapl138开发入门推荐度:
- 相关推荐
DSP+ARM+FPGA
三核主板方案领导者
目录
1
Qt介绍 .................................................................................................................................. 3 1.1 Qt简介 ....................................................................................................................... 3 1.2 Qt发展历史 ............................................................................................................... 3 1.3 Qt平台支持 ............................................................................................................... 5 1.4 Qt优势 ....................................................................................................................... 6 1.5 QT相关网站 .............................................................................................................. 6 2
移植Qt4.7到OMAPL138开发板 ...................................................................................... 7 2.1 安装触摸屏支持库tslib .......................................................................................... 11
2.1.1 解压tslib库 ................................................................................................... 11 2.1.2 配置tslib ........................................................................................................ 11 2.1.3 配置编译安装选项 ........................................................................................ 14 2.1.4 编译和安装tslib ............................................................................................ 15 2.1.5 在OMAPL138开发板安装tslib .................................................................. 15 2.1.6 OMAPL138开发板触摸屏校准 ................................................................... 16 2.2 交叉编译Qt4.7 ........................................................................................................ 18
2.2.1 解压安装Qt源码 .......................................................................................... 18 2.2.2 配置Qt编译环境 .......................................................................................... 20 2.2.3 编译和安装Qt4.7 .......................................................................................... 23 2.3 在OMAPL138开发板上部署Qt4.7 ...................................................................... 24 2.4 在OMAPL138开发板上运行Qt示例程序 .......................................................... 24 3
使用Qt Creator工具开发Qt4程序―Hello World!‖ ...................................................... 25 3.1 在Ubuntu系统下安装Qt Creator .......................................................................... 25 3.2 使用Qt Creator编写Qt4程序示例程序―Hello World!‖ .................................... 32
3.2.1 新建工程 ........................................................................................................ 32 3.2.2 设计界面 ........................................................................................................ 36 3.2.3 编辑代码 ........................................................................................................ 39
1/71
DSP+ARM+FPGA
三核主板方案领导者 3.2.4 在pc机上运行Qt程序―Hello World!‖ .................................................... 41 3.3 设置QtCreator支持交叉编译 ................................................................................ 42 3.4 交叉编译Qt4 ........................................................................................................... 43 3.5 在OMAPL138开发板上Qt程序运行―Hello World!‖ ......................................... 48 4
LED Demo按键程序点亮OMAPL138开发板LED灯.................................................. 49 4.1 新建LED Demo工程 .............................................................................................. 49 4.2 建立信号槽响应函数 .............................................................................................. 54 4.3 移植led Qt程序到OMAPL138开发板 ................................................................ 61 4.4 制作简单点亮LED灯启动脚本 ............................................................................. 63 5
OMAPL138开发板按键button demo测试实验 .............................................................. 65 5.1 建立按键demo项目工程 ....................................................................................... 65 5.2 移植按键Demo程序到Omapl138开发板上 ........................................................ 69 5.3 按键实验测试 .......................................................................................................... 71
2/71
DSP+ARM+FPGA
三核主板方案领导者
1 Qt介绍
图1
Qt是一个1991年由奇趣科技开发的跨平台C++图形用户界面应用程序开发框架。它
既可以开发GUI程式,也可用于开发非GUI程式,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,易于扩展,允许组件编程。2008年,奇趣科技被诺基亚公司收购,QT也因此成为诺基亚旗下的编程语言工具。2012年,Qt被Digia收购。 1.1 Qt简介
Qt是1991年奇趣科技开发的一个跨平台的C++图形用户界面应用程序框架。它提供
给应用程序开发者建立艺术级的图形用户界面所需的所用功能。Qt很容易扩展,并且允许真正地组件编程。基本上,Qt同 X Window 上的 Motif,Openwin,GTK 等图形界面库和 Windows 平台上的 MFC,OWL,VCL,ATL 是同类型的东西。 1.2 Qt发展历史
* 1996 OctKDE组织成立
* 1998 Apr 05Trolltech的程序员在 5 天之内将 Netscape5.0 从Motif移植到Qt上
3/71
DSP+ARM+FPGA
三核主板方案领导者
* 1998 Apr 08 KDE Free Qt基金会成立 * 1998 Jul 09 Qt 1.40 发布 * 1998 Jul 12 KDE 1.0 发布 * 1999 Mar 04QPL1.0 发布 * 1999 Mar 12 Qt 1.44 发布 * 1999 Jun 25 Qt 2.0 发布 * 1999 Sep 13 KDE 1.1.2 发布 * 2000 Mar 20嵌入式Qt发布 * 2000 Sep 06 Qt 2.2 发布 * 2000 Oct 05 Qt 2.2.1 发布
* 2000 Oct 30 Qt/Embedded 开始使用GPL宣言 * 2000 Sep 04 Qt free edition 开始使用 GPL
* 2008 Nokia从Trolltech公司收购Qt, 并增加LGPL的授权模式
* 2011 Digia从Nokia收购了Qt的商业版权,从此Nokia负责Qt on Mobile, Qt
Commercial由Digia负责
*根据最新消息,NOKIA已经停止Meltemi系统开发,QT部门被解散
* 2012 Aug 09 作为非核心资产剥离计划的一部分,诺基亚宣布将Qt软件业务出售给
芬兰IT服务公司Digia。
* 2013年7月3日,Digia公司Qt开发团队在其官方博客上宣布Qt 5.1正式版发布。
4/71
DSP+ARM+FPGA
三核主板方案领导者 1.3 Qt平台支持
Qt支持下述平台:
MS/Windows - 95、98、NT4.0、ME、2000、XP 、 Vista、Win7、win8;
Unix/X11 - Linux、SunSolaris、HP-UX、CompaqTru64 UNIX、IBMAIX、SGI IRIX、
FreeBSD、BSD/OS和其它很多X11平台;
Macintosh -Mac OS X;
Embedded - 有帧缓冲(framebuffer)支持的嵌入式Linux平台,Windows CE; Qt Creator
在发布Qt 4.6 的同时,作为Qt开发跨平台 IDE 的Qt Creator 也发布了更新版本。
Qt Creator 1.3 和Qt 4.6共同构成的Qt SDK,包含了开发跨平台应用程序所需的全部功能。
Qt Creator是一个用于Qt开发的轻量级跨平台集成开发环境。Qt Creator可带来两大
关键益处:提供首个专为支持跨平台开发而设计的集成开发环境 (IDE),并确保首次接触Qt框架的开发人员能迅速上手和操作。
Qt Creator包含了一套用于创建和测试基于Qt应用程序的高效工具,包括一个高级的
C++代码编辑器上下文感知帮助系统可视化调试器源代码管理项目和构建管理工具.
Qt Creator在LGPL2.1版本授权下有效,并且接受代码贡献。 Qt Linguist
Qt Linguist被称为Qt语言家。它的主要任务只是读取翻译文件、为翻译人员提供友
好的翻译界面,它是用于界面国际化的重要工具。
Linguist工具从4.5开始可以支持Gettext的PO文件格式。
5/71
DSP+ARM+FPGA
三核主板方案领导者 1.4 Qt优势 优良的跨平台特性
Qt支持下列操作系统: Microsoft Windows 95/98, Microsoft Windows NT, Linux,
Solaris, SunOS, HP-UX, Digital UNIX (OSF/1, Tru64),Irix, FreeBSD, BSD/OS, SCO, AIX, OS390,QNX 等等。 面向对象
Qt的良好封装机制使得Qt的模块化程度非常高,可重用性较好,对于用户开发来说
是非常方便的。Qt提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件之间的协同工作变得十分简单。 丰富的 API
Qt包括多达 250 个以上的 C++ 类,还提供基于模板的 collections, serialization,
file, I/O device, directory management, date/time 类。甚至还包括正则表达式的处理功能。
支持 2D/3D 图形渲染,支持 OpenGL 大量的开发文档 XML 支持 1.5 QT相关网站
Qt软件下载:http://qt.digia.com/ Qt开发文档:http://doc.qt.digia.com/
Qt中文论坛:http://www.qtcn.org/bbs/home.php
6/71
DSP+ARM+FPGA
三核主板方案领导者 2 移植Qt4.7到OMAPL138开发板
备注:若需要移植Qt4.7到OMAPL138开发板,需要将光盘Linux目录下的
rootfs.tar.bz2的文件系统代替预装在SD卡的文件系统,否则会出现触摸屏无法使用的情况。主要原因是SD卡中预装的文件系统的触摸屏库的版本和将要移植的版本不一致。
在移植Qt之前,请务必确认开发板系统已经可以正常启动,并且已经安装了交叉编
译工具链和g++。编译Qt需要安装g++工具,安装命令(确保虚拟机可以上网): Host# sudo apt-get install g++
图2
7/71
DSP+ARM+FPGA
三核主板方案领导者
图3
如果无法安装,如出现以下信息:
图4
请在Ubuntu选择system->software sources进行选择源
8/71
DSP+ARM+FPGA
三核主板方案领导者
图5
点击download from选择china->mirrors.163.com
图6
9/71
DSP+ARM+FPGA
三核主板方案领导者
图7
deb http://mirrors.163.com/ubuntu/ raring main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ raring-security main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ raring-updates main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ raring-proposed main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ raring-backports main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ raring main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ raring-security main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ raring-updates main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ raring-proposed main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ raring-backports main restricted universe multiverse
选择后在/etc/apt/sources.list文件最后添加以下内容:
图8
10/71
最后update:
DSP+ARM+FPGA
三核主板方案领导者 export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=$TSLIB_ROOT/etc/ts.conf export TSLIB_PLUGINDIR=$TSLIB_ROOT/lib/ts export TSLIB_CONSOLEDEVICE=none export TSLIB_FBDEVICE=/dev/fb0
export QWS_MOUSE_PROTO=tslib:/dev/input/event0:$QWS_MOUSE_PROTO export QWS_DISPLAY=LinuxFb:/dev/fb0 export
LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib:/opt/tslib/lib:/home/tl/qt/Qt4.7/lib:$LD_LIBRARY_PATH
修改完成后如下图:
图14
以上语句主要是设置鼠标、触摸屏和Qts显示需要调用的文件路径,然后将
/home/tl/tslib目录拷贝到开发板的/opt目录下。 2.1.6
OMAPL138开发板触摸屏校准
执行以下命令运行触摸屏校准程序:
/opt/tslib/bin/ts_calibrate
Target#
这时LCD屏幕会出现校准界面,点击准星5次即可完成校准,后台信息如下图:
16/71
DSP+ARM+FPGA
三核主板方案领导者
图15
系统会自动将校准信息保存在/etc/pointercal文件中,可以使用―cat /etc/pointercal‖查看
其保存的校准信息,如下图:
图16
执行以下命令将ts_calibrate文件拷贝到/bin目录下,并修改权限为777,这样以后就
不用将校准文件的路径打全,在任意路径下输入―ts_calibrate‖再按回车即可。 Target# Target#
cp /opt/tslib/bin/ts_calibrate /bin chmod 777 /bin/ts_calibrate
如下图所示: 17/71
DSP+ARM+FPGA
三核主板方案领导者
图17
2.2 交叉编译Qt4.7 2.2.1
解压安装Qt源码
本文档提到的Qt4.7在本教程中默认是指Qt4.7.0版本。将光盘
tools\\qt-everywhere-opensource-src-4.7.0.tar.gz的Qt源码复制到共享目录,进入Qt工作目录(若不存在/home/tl/qt目录请先建立): Host# cd qt
将Qt4.7源码拷贝到虚拟机共享目录,然后复制到/home/tl/qt并解压安装。
Host# cp /mnt/hgfs/shareVM/qt-everywhere-opensource-src-4.7.0.tar.gz ./ Host# tar zxvf qt-everywhere-opensource-src-4.7.0.tar.gz -C ./
18/71
DSP+ARM+FPGA
三核主板方案领导者
图18
图19
19/71
DSP+ARM+FPGA
三核主板方案领导者
图20 2.2.2
配置Qt编译环境
qt-everywhere-opensource-src-4.7.0解压后,进入解压目录,再执行以下命令新建一个
编译配置目录mkspecs/qws/linux-omapl138-g++,它是存放OMAPL138 的Qt编译配置的文件夹。
Host# cp -a mkspecs/qws/linux-arm-g++/ mkspecs/qws/linux-omapl138-g++
进入mkspecs/qws/linux-omapl138-g++目录,可以看到该目录下有qmake.conf配置文
件,需要修改此文件指定的交叉编译器。
20/71
正在阅读:
OMAPL138开发板的Linux QT图像界面开发教程09-14
美国全球战略与中国国家安全08-12
2014-2019年中国布坯行业投资现状与策略研究分析报告 - 图文05-11
142页2015年公共基础知识真题演练2000道附答案05-01
HSE考卷11-08
加尔文要义103-17
结识有缘人 关于这两年的灾 - 图文01-25
- 二甲基甲酰胺安全技术说明书
- 南邮计算机网络复习题
- 高分子物理实验指导书 - 图文
- 2009.9.25 莞惠环控专业施工图设计技术要求
- 学生工作简报
- 揭阳市斯瑞尔环境科技有限公司废酸综合利用项目可行性研究报告-广州中撰咨询
- 今日靓汤(佘自强)
- 奥数 - 二年级 - 数学 - 第三讲时间的教师版计算答案 - 图文
- 如何命制一份好的物理试卷
- 数据库开题报告
- 禁用未经批准或已经废止或淘汰技术的制度流程
- 大学英语(二)第2阶段测试题
- 湘教版一年级上册美术教案(全)
- (整套)学生顶岗(毕业)实习手册
- 高频 二极管包络检波 - 图文
- 2018届中考英语复习题型四任务型完形填空备考精编含解析 - 186
- 郑煤集团超化煤矿一采区开采设计 - 图文
- 财政学习题
- 摄影摄像复习资料
- SMC D-A93接线方式 - 图文
- 开发
- OMAPL138
- 图像
- 界面
- 教程
- Linux
- 网格化管理在城市社区治理中的作用研究
- 浙教版初中科学教材的设计和特点
- 翻译中最经典的30个替换单词
- 毕业设计论文—基于单片机控制的射频ID卡考勤机的设计-精品 - 图文
- 货运新题库(参考答案)
- 华为策略路由配置实例
- 国家级科技企业孵化器复核工作的通知 - 图文
- DevExpress基础验证控件
- 气动符号
- 沪教版七下《水乡茶居》教案2篇
- 二十七届全国高中学生化学竞赛福建区赛区获奖名单 2
- 2016节能环保知识竞赛试题
- 分离乙醇—正丙醇二元物系浮阀式精馏塔的设计
- 列车乘务实务模拟样题一答案
- 《本科模拟电子技术实验》教案
- 白云公司白庄煤矿“六大系统”管理制度
- 全国优秀社团申报材料
- 精神科护理学试题和答案
- 我国民营民营中小企业融资难现状及对策研究
- 小学数学“空间与图形”知识的教学策略