1、 课 程 设 计 报 告 课程名称课程名称 嵌入式系统嵌入式系统 课题名称课题名称 QTOPIAQTOPIA 移植移植 专专 业业 计算机科学与技术计算机科学与技术 班班 级级 学学 号号 姓姓 名名 指导教师指导教师 年年 月月 日日 嵌入式系统课程设计任务书 设计课题 5:Qtopia 移植实验 1 1、 问题描述:问题描述: 良好的良好的 GUIGUI 界面是嵌入式产品设计中不可或缺的部分,界面是嵌入式产品设计中不可或缺的部分, Qt/EmbeddedQt/Embedded 是一个是一个 多平台的多平台的 C+C+图形用户界面应用程序框架,其对象容易扩展,可移植性好,支持图形用户界面应用
2、程序框架,其对象容易扩展,可移植性好,支持 多个多个 GUIGUI 平台的交互开发, 而基于平台的交互开发, 而基于 Qt/EmbeddedQt/Embedded 框架的框架的 Qtopia Qtopia 是是 Trolltech Trolltech 公公 司为采用嵌入式司为采用嵌入式 Linux Linux 操作系统的消费电子设备而开发的综合应用平台。操作系统的消费电子设备而开发的综合应用平台。 2 2、 功能设计要求:功能设计要求: 1 1)本系统针对)本系统针对 xbase270xbase270 实验箱,运用实验箱,运用 Redhat9Redhat9 搭建交叉开发环境,涉及搭建交叉开发环
3、境,涉及 QtQt 程序的设计,程序的设计,QtopiaQtopia 平台的移植。平台的移植。 2 2)TslibTslib 和和 Qt/EQt/E 模块:模块: 交叉编译环境搭建交叉编译环境搭建 编译编译 TslibTslib 源码:源码:TslibTslib 是一个开源的程序,能够为触摸屏驱动获得是一个开源的程序,能够为触摸屏驱动获得 的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的的采样提供诸如滤波、去抖、校准等功能,通常作为触摸屏驱动的 适配层,为上层的应用提供了一个统一的接口。适配层,为上层的应用提供了一个统一的接口。 编译带编译带 TslibTslib 库的库的 Qt/E
4、Qt/E 源码:源码:Qt/EQt/E 库文件是库文件是 QtopiaQtopia 移植所必备的移植所必备的 库文件。库文件。 3 3)QtopiaQtopia 模块:模块: 交叉编译环境搭建交叉编译环境搭建 QtopiaQtopia 源码分析及交叉编译源码分析及交叉编译 运用串口或网络的程序下载。运用串口或网络的程序下载。 4) Qt4) Qt 程序配置程序配置 用用 QtQt 的的 designerdesigner 工具设计一个工具设计一个 QtQt 界面程序界面程序 将此程序将此程序配置到配置到 QtopiaQtopia 平台中平台中 3 3、要求:、要求: 1 1)用)用 VMware
5、VMware 搭建搭建 Redhat9Redhat9 的交叉编译环境;的交叉编译环境; 2 2)对)对 QtopiaQtopia 源码的核心部分加必要注释和说明;源码的核心部分加必要注释和说明; 3 3)运用正确的方法进行程序下载;)运用正确的方法进行程序下载; 目录 一、系统介绍 1 二、总体设计 2 三主要模块的实现 3 四程序调试 3 五总结与体会 6 六源程序清单 6 1 一、一、 系统介绍系统介绍 目前嵌入式Linux的主流GUI系统主要有MiniGUI、Microwindows、OpenGUI、 Qt/Embedded,这些GUI在接口定义、体系结构、功能特性存在很大差别,采取的技术路 线也有所不同。 MiniGUI是建立在比较成熟的图形引擎之上, 开发的重点在于窗口系统, 其小巧精致并且尽量与Win32兼容。MicroWindows目前开发的重点在底层的图形引擎, 窗口系统和图形接口方面功能比较欠缺,与Win32和X Windows窗口系统保持兼容,提供 了相对完善的图形功能。 OpenGUI基于一个用汇编实现的x86图形内核, 提供了一个高层 的C/C+图形/窗口接口,它的资源消耗小,可移植性差,不支持多进程。 我们这次的实验用的就是基于Qt/Embedded,它具有良好的扩展性和众多优秀的配 套工具。 实验