1222.ARM嵌入式系统中MiniGUI的研究和实验开发.doc
《1222.ARM嵌入式系统中MiniGUI的研究和实验开发.doc》由会员分享,可在线阅读,更多相关《1222.ARM嵌入式系统中MiniGUI的研究和实验开发.doc(66页珍藏版)》请在三一办公上搜索。
1、毕业设计题 目 ARM嵌入式系统中MiniGUI的 研究和实验开发学 院 控制科学与工程学院专 业 自动化姓 名 学 号 指导教师 二OO八年六月十三日摘 要MiniGUI是一个专门面向嵌入式系统的图形用户界面支持系统,它主要具有体积小、易维护、通用性强等优点。在软件系统上,它介于内核和应用程序之间,现在己经发展成为了一个比较成熟的跨操作系统的嵌入式图形支持系统。目前MiniGUI主要应用于医疗器械的嵌入式GUI、个人娱乐终端、通信产品界面以及农业灌溉系统等一些广泛需要嵌入式GUI技术的领域。本文从实验的角度出发详细介绍了CLinux及MiniGUI在S3C44B0X上的移植,并在移植之前介绍
2、了ARM、Linux及MiniGUI的部分相关内容,最后通过编写一个游戏程序说明了MiniGUI下程序的特点及其基本组成。本文为实验室的嵌入式系统的开发提供了参考,有助于实验教学。关键词:嵌入式系统;S3C44B0X;CLinux;MiniGUIABSTRACTMiniGUI is a graphical user interface supporting sysem that faces specially to the embedded system.It has advantages in its small, currently used and easily maintaintion
3、.MiniGUI lies between the kernel and the application programs of softwae system.Now it has already been developed into a riper embedded graphical supporting system which crosses defferent operation systems.At present,MiniGUI is mainly applied to fields that need embedded GUI technologies eagerly,for
4、 instance,medical equipment with embedded GUI,personal entertainment terminals,communication products and irrigation system for agriculture.This article gave the method and steps of porting CLinux and MiniGUI to S3C44B0X from the point of experiment,and before porting it has introduced some knowledg
5、e of ARM,Linux and MiniGUI.At last a simple game is provided in orde to show the features of programmming in MiniGUI and the programs construction.This article has provided the reference for the development of embedded system in the laboratory and this will be helpful to the next experimental techin
6、g.Keywords: embeded system; S3C44B0X; CLinux; MiniGUI目 录摘 要1ABSTRACT2目 录31.绪论51.1课题背景和研究意义51.2 本论文所做的工作52.嵌入式系统72.1 嵌入式系统的定义72.2 嵌入式系统的结构82.2.1 嵌入式系统硬件平台82.2.2嵌入式操作系统83.硬件平台概述103.1 ARM简介103.1.1 ARM的体系结构103.1.2 ARM处理器核103.2 S3C44B0X简介113.3 EL-ARM-830实验箱简介124.软件平台概述144.1 嵌入式操作系统概述144.2 嵌入式Linux简介144.3
7、 CLinux简介154.4 CLinux源代码的组成165.MiniGUI185.1 嵌入式GUI的地位及特殊要求185.2 MiniGUI的定义185.3 MiniGUI的技术特点195.4 MiniGUI 的技术优势205.5 MiniGUI 的软件架构215.5.1 基于 MiniGUI 的嵌入式系统结构215.5.2 MiniGUI 运行模式225.5.3 窗口系统225.5.4 字体235.5.5 输入设备的支持235.5.6 输入法236.移植步骤246.1 说明246.2 BootLoader的移植246.3 CLinux的移植256.3.1 建立交叉编译环境256.3.2安装
8、CLinux的源代码并做修改266.3.3 编译内核276.3.4 在开发板上运行CLinux286.4 移植MiniGUI296.4.1 添加键盘驱动296.4.2 添加LCD驱动326.4.3开启CLinux的FrameBuffer驱动336.4.4 GAL与IAL的移植356.4.5移植MiniGUI366.4.6 CLinux中添加MiniGUI程序387.MiniGUI编程407.1 MiniGUI编程基础407.2示例程序简介418.总 结44参考文献45致 谢46附 录471.绪论1.1课题背景和研究意义随着半导体技术和信息技术的飞速发展,各式各样的嵌入式系统产品已经渗入到人们生
9、活中的每一个角落,小到手机、MP3、MP4、数码相机和智能电饭煲等产品,大到汽车、数控机床、导弹和火箭等产品。嵌入式系统的应用更是涉及到电信、信息家电、工业控制、网络、金融、航空航天和军事等各个领域,以致于一些学者断言嵌入式系统技术将成为PC时代的主宰。 嵌入式系统由硬件和软件两大部分组成。硬件方面的主要核心是嵌入式处理器。目前各种嵌入式处理器下朝着低功耗、高性能、高可靠性、低成本的方向发展,而32位RISC(精简指令集计算机)处理器以独有的优势逐渐占领了中、高端嵌入式应用市场,以ARM为核的处理器就是其中的佼佼者。软件方面一股上嵌入式操作系统(不是必须的,根据实际情况选用)和应用软件组成,根
10、据目标产品需求可能要用到图形界面(GUI)、文件系统(FS)、网络(TCP/IP协议栈)等软件功能。常见的嵌入式操作系统有嵌入式Linux、CLinux、Windows CE、T-Kernel(TRON)、eCos、VxWorks和uC/OS-II等。由于Linux、CLinux具有开放源代码、免授权费和资源丰富等特点,越来越博得嵌入式产品开发者的青睐。GUI为Graphics User Interface的缩写,即图形用户界面。这是用于提高人机交互友好性、易操作性的计算机程序,建立在计算机图形学基础上的产物。图形用户界面是当今计算机技术的重大成就之一,它极大地方便了非专业用户的使用,可通过窗
11、口、菜单方便地操作计算机(包括嵌入式产品)。随着嵌入式系统的日益发展和32位嵌入式处理器以及图形显示设备的广泛应用,目标产品对GUI的需求越来越多。只要是面向人机交互的嵌入式产品,就涉及文字或者的输出问题。以手机为例,操作界面、游戏、彩信以及即将来临的3G应用,都需要功能完备的GUI的支持。由于嵌入式系统的资源有限,所以对GUI的要求是可裁剪的、高速的。以前,大多数嵌入式系统产品(尤其是不使用嵌入式操作系统的)将GUI部分软件融合到整个应用程序中,使用比较简单的手法实现GUI。这样做不利于系统的扩展和移植,代码复用率不高。现在,可以选用合适的嵌入式操作系统和嵌入式图形用户界面(GUI)系统,然
12、后为输入/输出设备设计好驱动程序,即可使用GUI的函数库进行窗口界面的设计。目前较为流行的嵌入式GUI有MicroWindows、QT/Embedded、MiniGUI和OpenGUI等。本文通过移植MiniGUI到S3C44B0X开发板,旨在为那些从事嵌入式GUI移植工作的同学提供参考,并为以后的嵌入式实验教学提供一些帮助。1.2 本论文所做的工作在学习ARM7TDMI和研究嵌入式CLinux操作系统的理论基础之上,本文先是完成了CLinux操作系统到S3C44B0X的移植,之后又完成了MiniGUI到CLinux的移植,并在目标板上成功的运行了MiniGUI应用程序。本论文主要做了以下工作
13、:1. 简要介绍了嵌入式系统的概念及其组成;2. 介绍了嵌入式开发的硬件系统ARM7TDMI、以ARM7TDMI为核心的S3C44B0X芯片和实验中用到的具体开发板;3. 介绍了嵌入式操作系统以及CLinux的特点及其应用;4. 详细介绍了MiniGUI,包括其技术特点及软件架构等;5. 深入细致地讲解了CLinux移植到开发板上和MiniGUI移植到CLinux上的步骤,是全文的重点;6. 以一个由本人编写的游戏程序为例,说明了MiniGUI下程序的特点及程序的组成框架;7. 对本论文进行了整体的总结。2.嵌入式系统2.1 嵌入式系统的定义嵌入式系统是一种应用范围非常广泛的系统。可以说除了桌
14、面计算机和服务器外所有计算设备都属于嵌入式系统,例如从便携式音乐播放器到航天飞机上的实时系统控制都属于嵌入式系统2。大多数商用的嵌入式系统都设计成专用任务的低成本的产品。大多数的嵌入式系统都具有实时性的要求。有些功能需要非常快的主频,但其他大多数功能并不需要高速的处理能力。这些系统通过特定的器件和软件来满足性的要求。简单地通过速度和成本来定义嵌入式系统是困难的,但对于在批量产品而言,成本常常对系统设计起决定作用。通常,一个嵌入式系统的很多部分相对系统主要功能来说需要较低的性能,因此嵌入式系统和通用PC相比,能够使用一个满足辅助功能的合适的CPU,从而简化了系统设计,降低了成本。例如,数字电视的
15、机顶盒需要处理每秒以百万兆位的连续数据,但这些数据处理大部分是由定制的硬件来实现的,如解析、管理和编解码多个频道的数字影像。对于大批量生产的嵌入式系统,如便携式音乐播放器或手机等,降低成本就成为最主要的问题。这些系统通常只具有几个芯片:一个调度集成的CPU,一个定制的芯片用于控制其他所有的功能,还有一个存储芯片。在这种设计中,每部分都设计成使用最小的系统功耗。对于小批量的嵌入式应用,为了开发成本,常常使用PC体系结构,通过限制程序的执行时间或用一个实时操作系统来替换原先的操作系统。在这种情况下,可以使用一个或多个高性能的CPU来替换特殊用途的硬件。嵌入式系统的软件通常运行在有限的硬件资源上:没
16、有硬盘、操作系统、键盘或屏幕。软件一般都没有文件系统,如果有的话,也会采用Flash驱动器。如果有人机交互接口的话,也是一个小键盘或液晶显示器。硬件是计算机的物理部分,和存储在硬件中的计算机软件程序和数据区分开来。嵌入到机械中的嵌入式系统需要长期无故障连续运行,因此它的软件需要比PC软件更加仔细地开发和更加严格地测试。那么,到底什么是嵌入式系统呢?根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助设备、机器和车间运行的装置”(原文为devices used to control,monitor, or assisit the operation of equipm
17、ent,machinery or plants)。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。可以这样认为,嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数系统都是由单个程序实现整个控制逻辑。2.2
18、 嵌入式系统的结构一般来说,嵌入式系统由图2.1所示的3个部分组成。嵌入式系统硬件平台嵌入式操作系统嵌入式系统应用图2.1 嵌入式系统的组成如上图所示,嵌入式系统一般由3个部分组成:嵌入式系统硬件平台、嵌入式操作系统和嵌入式系统应用。其中嵌入式系统硬件平台为各种嵌入式硬件平台上运行的操作系统,目前比较主流的嵌入式操作系统有嵌入式Linux、CLinux、uC/OS-II等。具体应用哪种嵌入式操作系统应视具体情况而定。嵌入式Linux提供了完善的网络技术支持;CLinux是专门为没有MMU的ARM芯片开发的;uC/OS-II操作系统也成为实时操作系统或RTOS,使用它作为开发工具将使得实时应用程
19、序变得相对容易3。2.2.1 嵌入式系统硬件平台嵌入式系统硬件平台是整个嵌入式操作系统和应用程序运行的硬件平台,不同的应用通常有不同的硬件环境。在嵌入式系统中硬件平台具有多样性的特点。嵌入式系统的核心部件是各种类型的嵌入式处理器,目前据不完全统计,全世界嵌入式处理器的品种总量已经超过1000种,流行体系结构有三十几个系列,数据总线宽度从832们,处理速度从0.12000MIPS。按照功能和内部结构等因素可分成下面几类。(1)嵌入式RISC微处理器RISC(Reduced Instruction Set Computer)是精简指令集计算机,RISC把着眼点放在如何使计算机的结构更加简单和如何使
20、计算机的处理速度更加快速上。RISC选取了使用频率最高的简单指令,抛弃复杂指令,固定指令长度,减少指令格式和寻址方式,不用或少用微码控制。这些特点使得RISC非常适合嵌入式处理器。嵌入式微控制器将整个计算机系统或者一部分集成到一块芯片中。嵌入式微控制器一般以某一种微处理器内核为核心,以MIPS或ARM核为核心,在芯片内部集成ROM、RAM、内部总线、定时/计数器、WatchDog、I/O端口、串行口等各种必要的功能和外设。和嵌入式处理器相比,嵌入式微控制器的最大特点是单片化,实现同样功能时系统的体积大大减小。嵌入式微控制器的品种和数量较多,比较有代表性的通用系列包括Atmel公司AT91系列、
21、三星公司S3C系列,Intel公司PXA25x系列等。(2)嵌入式CISC处理器嵌入式微处理器的基础是通用计算机中的CPU在不同应用中将微处理器装配在专门设计的电路板上,只保留和嵌入式应用有关的功能,这样可以大幅度减小系统体积和功耗。嵌入式微处理器目前主要有Intel公司x86系列、Motorola公司68000系列等。2.2.2嵌入式操作系统嵌入式操作系统完成系统初始化以及嵌入式应用的任务调度和控制等核心功能。具有内核较精简、可配置、与高层应用紧密关联等特点。嵌入式操作系统具有相对不变性。嵌入式操作系统具有以下特点。(1)体积小嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的
22、存储介质,而大多使用闪存(Flash Memory)作为存储介质。这就要求嵌入式操作系统只能运行在有限的内存中,不能使用虚拟内存,中断的使用也受到限制。因此,嵌入式操作系统必须结构紧凑,体积微小。(2)实时性大多数嵌入式系统都是实时系统,而且多是多任务系统,要求相应的嵌入式操作系统也必须是实时操作系统(RTOS)。实时操作系统作为操作系统的一个重要分支已成为研究的一个热点,主要探讨实时多任务调度算法和可调度性、死锁解除等问题。(3)特殊的开发调试环境提供完整的集成开发环境是每一个嵌入式系统开发人员所期待的。一个完整的嵌入式系统的集成开发环境一般需要提供的工具是编译/连接器、内核调试/跟踪器的集
23、成图形界面开发平台。其中的集成图形界面开发平台包括编辑器、调试器、软件仿真器和监视器等。3.硬件平台概述3.1 ARM简介ARM是Advanced RISC Machines 的缩写,是微处理器行业的一家知名企业,该企业设计了大量廉价、高性能、低功耗的RISC处理器、相关技术及软件。ARM公司的处理器具有性能高、成本低、和能耗小的特点,适用于多种领域,如嵌入控制、消费/教育类多媒体、DSP和移动式应用等4。ARM将其技术授权给世界上许多著名的半导体、软件和OEM厂商,每个厂商得到的都是一套独一无二的ARM相关技术及服务。利用这种合作关系,ARM很快成为许多全球性RISC标准的缔造者。目前,共有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 1222. ARM 嵌入式 系统 MiniGUI 研究 实验 开发
链接地址:https://www.31ppt.com/p-2392336.html