学年论文10电2.docx
《学年论文10电2.docx》由会员分享,可在线阅读,更多相关《学年论文10电2.docx(16页珍藏版)》请在冰豆网上搜索。
学年论文10电2
泉州师范学院
QUANZHOUNORMALUNIVERSITY
学年论文
题目基于Qt嵌入式终端应用程序开发
“Android音乐播放器”
学院物信学院专业电子信息科学与技术
年级2010级班级10电信2班
姓名学号100303078
指导教师时间2013年7月10日
摘要
随着计算机技术与通信技术的发展,越来越多的嵌入式设备使用功能强大、
价格低廉的嵌入式Linux作为操作系统并开始采用较为复杂的图形用户界面。
嵌
入式终端需要一个图形化的人机接口界面(GUI),良好的人机交互界面是嵌入式
系统设计的一个关键技术,尤其是嵌入式手持设备中,对嵌入式终端的实用性、
美观性和视听娱乐性提高了更高的要求。
Linux可安装在各种计算机硬件设备中,比
如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
Android
是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,以其强大的功能
及良好的操作性逐渐成为现代主要平台。
论文会对安卓系统基于LINUX系统的开发应用比
较进行进一步对LINUX系统的熟悉与理解。
关键词:
嵌入式Linux系统Android应用
Abstract
Withthedevelopmentofcomputertechnologyandcommunicationtechnology,moreandmoreembeddeddevicesusepowerfulembeddedLinuxasoperatingsystem,lowpriceandbegantouseamoresophisticatedgraphicaluserinterface.Theembeddedterminalrequiresagraphicaluserinterface(GUI),thegoodhuman-computerinteractioninterfaceisakeytechnologyofembeddedsystemdesign,especiallyforembeddedhandhelddevice,theembeddedterminalpractical,beautifulandaudio-visualentertainmentraisedhigherrequirements.Linuxcanbeinstalledinavarietyofcomputerhardware,suchasmobilephone,tabletcomputer,router,videogameconsoles,desktopcomputers,mainframesandsupercomputers.AndroidisanoperatingsystemLinuxisfreeandopensourcecodebased,mainlyusedinmobiledevices,withitspowerfulfunctionandgoodoperabilityhasgraduallybecomethemainplatformofmodern.ThethesiswillbefamiliarwithandunderstandingoftheLINUXsystemontheAndroidsystemcomparisonfurtherdevelopmentandapplicationofLINUXsystembasedon.
Keywords:
embedLinuxoperatingsystemAndroidApplicationcomparison
目录
摘要.........................................................................................................2
引言.........................................................................................................5
1、嵌入式Linux系统............................................................................6
1.1嵌入式Linux系统的简介..............................................................................................6
1.2嵌入式Linux系统的发展历史.....................................................................................6
1.3嵌入式Linux系统和Window系统的区别..................................................................7
2、Qt工具................................................................................8
2.1Qt工具的简介...........................................................................................8
2.2Qt的发展历程...........................................................................................8
2.3Qt支持平台...............................................................................................9
2.4Qt的特点...................................................................................................9
2.5Qt的编程应用..........................................................................................10
3、开发板................................................................................10
3.1开发板简介..................................................................................................10
3.2开发板特性.................................................................................................11
3.3、底板配置...................................................................................................11
3.4、软件资源...................................................................................................12
3.5、其他配套...................................................................................................13
4、网上软件介绍....................................................................13
4.1、酷狗音乐软件............................................................................................13
4.2、天天动听....................................................................................................14
4.3、Android音乐播放器..................................................................................15
5、Android音乐播放器设计.................................................................15
5.1、软件介绍.....................................................................................................15
5.2、软件功能.....................................................................................................16
5.3、软件设计流程.............................................................................................16
5.4、软件异同点比较.........................................................................................17
6、结束语...............................................................................................17
参考文献....................................................................................................................17
引言
目前Linux已被广泛应用于信息家电、数据网络、工业控制、医疗卫生、航空航天等众多领域。
在嵌入式领域,由于价格低廉,结构小巧的各种微处理器的出现为外设连接提供了稳定可靠的硬件架构,限制嵌入式系统发展的瓶颈就突出表现在软件方面。
尽管在20世纪80年代末开始,陆续出现了一些嵌入式操作系统,比较出名的有VXWORKS、PSOS、NECULEUS和WindowsCE。
但这些专用操作系统都是商业化产品。
其高昂的价格是很多低端产品的小公司望而却步,并且其源代码的封闭性也大大限制了开发者的积极性。
在当今的时代随着嵌入式产品的发展,往往要求嵌入式操作系统有网络和图形的功能。
利用源代码开放的Linux搭建的嵌入式操作系统,由于其强大的网络功能和低成本,近来得到了越来越多的应用。
其能够提供全功能的桌面计算,定制非常方便并且支持大多数嵌入式系统上使用的芯片,包括Strong、ARM、MIPS和PowerPC等。
在嵌入式Linux操作系统上使用一个功能完备的轻量级、高性能、高可靠、可配置的CUI系统成为可行的解决方案。
如何顺应潮流,如何使嵌入式系统为多媒体信息随手可得的目标、为我国传统产业的技术改造做出更大贡献?
结合中国国情,当前国家对自主操作系统的大力支持,为开放源码的Linux的推广提供了广阔的发展前景。
对上层应用开发者而言,嵌入式系统需要的是一套高度简练,界面友善,质量可靠,应用广泛,易开发,多任务,并且价格低廉的操作系统。
Linux对厂商不偏不倚而且成本极低,因此很快成为用于各种设备的操作系统。
如今,业界已经达成公式,即嵌入式Linux是大势所趋,其巨大的市场潜力与酝酿的无限商机必然会吸引更多的厂商加入,其关键是要开拓创新思路、挖掘潜在市场、掌握嵌入式系统设计的技术和方法,提高嵌入式系统的开发效率和质量,缩短产品进入市场的周期,推动我国嵌入式系统产业的发展。
第一章嵌入式Linux操作系统
1.1嵌入式Linux操作系统的简介
根据标准库IEEE的定义,嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”。
从中可看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。
嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统(包括硬、软件系统)极为重要的组成部分,通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等等。
嵌入式系统是与应用紧密结合的,具有很强专用性,必须结合实际系统需求进行合理的裁减利用。
国内一个普遍被认同的定义是:
以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
1.2嵌入式Linux系统的发展历史
Linux是一种自由和开放源码的类Unix操作系统。
目前存在着许多不同的Linux,但它们都使用了Linux内核。
Linux可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计算机、大型机和超级计算机。
Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。
严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。
Linux的历史可以追溯到1990年,LinusTorvalds还是芬兰赫尔辛基大学的一名学生,最初用汇编语言写了一个在80386保护模式下处理多任务切换的程序,后来从MINIX(用于操作系统教学、很小的Unix中得到灵感,于是开始写了一些硬件的设备驱动程序、一个小的文件系统,这样0.0.1版本的Linux就出来了,但是它必须在有MINIX的机器上编译以后才能使用,于是在1991年10月5号发布了Linux0.0.2版本(这是第一次正式向外公布的时间,得名于计算机业余爱好者LinusTorvalds),这个版本已经可以运行bash(一种用户与操作系统内核通讯的软件)和GCC(GNUC编译器)了。
Linux借助于Internet网络,并经过全世界各地计算机爱好者的共同努力下,现已成为今天世界上使用最多的一种类UNIX操作系统,并且使用人数还在迅猛增长。
Linux操作系统从1992问世至今的20年间,已经发展成为一个功能强大。
设计完善的操作系统。
Linux强大的功能、优良的特性、易于定制、具有大量适用的应用软件等特点使之成为嵌入式操作系统的一个比较理想的选择。
同时,Linux是个与生俱来的网络操作系统,成熟而且稳定。
Linux是源代码开放软件,不存在黑箱技术,任何人都可以修改它,或者用它开发自己的产品。
“linux系统的定制特性可以让系统内核做得很小。
一个带有中文系统及图形化界面的核心程序也可以做到不足1MB,而且同样稳定。
Linux作为一种可裁减的软件平台系统,是发展未来嵌入设备产品的绝佳资源。
1.3嵌入式Linux系统与Window系统的区别
相同点:
1.用户和组
Linux是多用户多任务操作系统,而Windows是单用户多任务操作系统。
都可以由许多不同的用户来使用,为每个用户提供单独的环境和资源。
基于用户身份来控制安全性。
都可以以组成员的方式来控制资源的访问权限,这样在用户数目较大时可以不必为每一个帐号设置权限。
用户和组可以集中管理,让多个服务器共享相同的用户和身份验证数据。
2、文件系统
Linux和Window都支持多种文件系统。
文件资源可以通过NETBIOS、FIP或者其他协议与其他客户机共享。
可以很灵活地对各个独立的文件系统进行组织,由管理员来决定她们在何处以何种方式被访问。
3、端口和设备
两种操作系统都支持各种物理设备端口,比如并口、串口和USB借口。
支持各种控制器,比如IDE和SCSI控制器。
Linux还支持很多刚刚上市的标准硬件。
4、网络
Linux和Windows都支持多种网络协议。
比如TCP/IP、NETBIOS和IPX。
都支持多种类型的网络适配器。
都具备通过网络共享资源的能力,比如共享文件和打印。
都可以提供网络服务能力,比如DHCP和DNS.
5、服务
Linux和Windows都提供服务。
所谓服务就是指那些在后台运行的应用程序,可以为系统和远程调用该服务的计算机提供一些功能。
在系统引导的时候可以单独控制并自动启动这些程序。
(Linux中沿用的是Unix的习惯,称这种应用程序为daemon)
不同点
1、Linux的应用目标是网络而不是打印
Linux的设计定位与网络操作系统。
他的设计灵感来自于Unix操作系统。
因此它的命令的设计比较简单,活着说是比较简洁。
由于纯文本可以非常好地跨网络工作,所以Linux配置文件和数据都以文本为基础。
2、可选的GUI
Linux有图形组建,支持高端的图形适配器和显示器,完全胜任图形相关的工作。
现在许多数字效果艺术家在Linux工作站上来进行他们的设计工作。
但是,图形环境并没有集成到Linux中,而是运行于系统之上的单独一层,这就意味着你可以只运行GUI,或者在需要时才运行GUI。
3、文件名扩展
Linux不使用文件名扩展来识别文件的类型。
相反,Linux根据文件的头内容来识别其类型。
为了提高可读性,你可以使用文件名扩展,但这没作用。
4、重新引导是最后的手段
Linux在本质上更遵循“牛顿运动定律”。
一旦开始运行,它将保持运行状态,知道受到外来因素的影响,比如硬件的故障。
Linux系统的设计使得应用程序不会导致内核的崩溃,因此不必经常重新引导。
5、命令区分大小写
所有的Linux命令和选项都区分大小写。
例如,-R和-r不同,会做不同的事情。
控制台命令几乎都是小写的.
2、Qt工具
2.1、Qt的简介
Qt 是一个跨平台的 C++ 图形用户界面库,由挪威 TrollTech 公司出品,目前包括Qt, 基于 Framebuffer 的 Qt Embedded,快速开发工具 Qt Designer,国际化工具 Qt Linguist 等部分 Qt 支持所有 Unix 系统,当然也包括 Linux,还支持 WinNT/Win2k,Win95/98 平台。
人们所熟知的Linux下面的KDE环境就是局域Qt开发而成的。
Qt的良好封装机制使其模块化程度非常高,可重用性较好,对于用户来说非常的方便。
QtAPI和开发工具对所有支持平台都是一致的,从而可以进行独立于平台的程序开发和配置。
它使得跨平台软件编程直观、简易和方便。
2.2、Qt的发展历程
2.2、Qt的发展历程
2.3、Qt支持的平台
(1)MS/Windows-95、98、NT4.0、ME、2000、XP、Vista和Win7
(2)Unix/X11-Linux、SunSolaris、HP-UX、CompaqTru64UNIX、IBMAIX、SGIIRIX和其它很多X11平台
(3)Macintosh-MacOSX
(4)Embedded-有帧缓冲(framebuffer)支持的Linux平台,WindowsCE
(5)塞班平台(Symbian),MeeGo平台(Maemo6现更名为MeeGo)
2.4、Qt的特点
1.面向对象
Qt具有模块设计和组件或元素的可重用的性的特点。
一个组件不需要知道它的内容和用途,通过signal和slot与外界通信、交流。
而且所有Qt的组件都可通过继承。
2.组件间的相互通信
Qt提供signal和slot概念,这是一种安全可靠的方法,它允许回调,并支持对象之间在彼此不知道对方信息的情况下进行合作,这使Qt非常合适于真正的组件编程。
3.友好的联机帮助
Qt包括大量的联机参考文档,有超文本HTML方式、UNIX帮助页、MAN手册和补充指南。
对于初学者,指南将一步步地解释Qt编程。
4.用户自定义
其他的工具包在应用时都存在一个普遍的问题,就是经常没有真正适合需求的组件,生成的自定义组件对用户来说,也是一个黑匣子。
比如,在Motif手册中就讨论了用户自定义的组件问题。
而在Qt中,能够创建组件,具有绝对的优越性,生成自定义组件非常简单,并且容易修改组件。
5.方便性
由于Qt是一种跨平台的GUI工具包,所以它对编程者隐藏了在处理不同窗口系统时的潜在问题。
为了将基于Qt程序更加方便,Qt包含了一系列类,该类能够使程序员避免了在文件处理、时间处理等方面存在依赖操作系统方面的细节问题。
6.国际化
Qt为本地化应用提供完全的支持,所有用户界面的文本或字符串都可以利用翻译工具将其译成各国语言。
另外,Qt完全支持双字节16bit国际字符标准。
7.丰富的API函数
为了适合用户的需求,Qt的API提供了250个C++类,该类大多数用于专门的GUI。
Qt还提供了基于模板的初始化、文件和通用的I/O口设备、目录管理、日期/时间类、常用表达式解析等。
目的是利用这些类,建立或生成不同的功能,用它们来实现Qt的通用化。
除此之外,也可以利用STL标准模块库和其他工具包。
8.完整的一套组件
Qt编程的基本构件称为组件,一个组件是一个用户界面的组成部分,比如按钮、滚动条。
Qt包含用来创建专业外观的用户界面所需要的所有组件。
9.高性能的工具
对于库来讲,它的有效性远超过应用性。
为了提高Qt库的有效性、快捷性,对其进行了优化,Qt能执行一些基本的任务,比如图形的润色,比一般的基于平台的代码要快。
Qt是基于Xlib,而不依赖Motif工具包。
10.GUI竞争
大多数GUI工具包是基于分层的方法。
比如,工具包为本地窗口系统组件提供很多C++类,这种结构使组件的继承性和通用性变得很差。
在层次化的工具包中,GUI功能常成为所有使用的窗口系统所必须的最普遍的。
Qt仿效本地窗口系统的组件,这是一种非常复杂的技术。
Qt还提供一些更有用的函数,类似文本的旋转,适用于多种平台。
11.可用户化的外观
Qt支持主题,所以基于Qt的应用软件能在Mac外观、Windows等外观主题之间交换,甚至改变运行时间。
这些应用程序不管是在XWindows下,还是在MicrosoftWindows