ImageVerifierCode 换一换
格式:DOC , 页数:54 ,大小:3.60MB ,
资源ID:1272789      下载积分:30 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1272789.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于S3C2410的嵌入式硬盘MP3播放器的设计与实现—Linux下MiniGUI用户界面与播放功能的开发-毕业论文.doc)为本站会员(滴答)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基于S3C2410的嵌入式硬盘MP3播放器的设计与实现—Linux下MiniGUI用户界面与播放功能的开发-毕业论文.doc

1、 本科毕业论文 (科研训练、毕业设计 ) 题 目: 基于 S3C2410的 嵌入式 硬盘 MP3播放器 的设计与实现 Linux 下 MiniGUI 用户界面与播放功能的开发 姓 名: 学 院:软件学院 系: 专 业:软件工程 年 级: 学 号: 指导教师 (校内 ) : 职称: 年 月 日厦门大学本科毕业论文 基于 S3C2410 的 嵌入式 硬盘 MP3 播放器 的设计与实现 Linux 下 MiniGUI 用户界面与播放功能的开发 摘要 近年来,嵌入式系统的发展成为计算 机科学领域的一个热门 技术 。嵌入式系统是应用于特定设备中的专用计算机。随着计算机硬件技术的发展革新,用户对嵌入式产品

2、功能的要求也愈加完备。越来越多的嵌入式系统,包括 PDA、 MP3播放器、 WAP手机等在我们生活中扮演着愈加重要的角色。 其中作为嵌入式数码设备的代表, MP3 播放器深得广大用户的喜爱。 本文首先对当前比较常见的 MP3 播放器的系统架构和硬件组成进行了深入的分析,提出对现有 MP3 播放器的一种改进方案,详细比较了这两种体系结构的优缺点。该方案采用高性能 MPU(Microprocessor Unit)代替传统 的 MCU/DSP (Microcontroller Unit/Digital Signal Processor),同时引入嵌入式 Linux 操作系统,实现网络播放和复杂图形界

3、面等功能。 作为一个遵循 GPL 的操作系统 ,Linux 在嵌入式领域获得了巨大的成就 ,这归功于 Linux 系统的高性能与低成本,以及对众多图形引擎的支持 ,如 QT/Embedded 和 MiniGUI。如何在特定硬件平台上设计出优秀的图形用户界面,对商业化嵌入式系统至关重要。本文对当今嵌入式系统以及图形用户界面的发展做了简要的介绍,并结合毕业设计的课题 ,介绍如何在 HHARM9-EDU 平台上实现嵌入式硬盘 MP3 播放器。播放器将使用软件对 IDE 硬盘上的 MP3 歌曲进行解码播放,采用触控屏与小键盘双输入控制播放器的播放动作,如播放,暂停,上一首,下一首,录音,复读等功能,采

4、用 Linux 下的 gcc 与 MiniGUI 库相结合,在 HHARM9-ED 平台上的彩色 LCD上实现图形用户界面。 关 键 词 嵌 入式系统 , Linux, 图形用户界面 (GUI), MP3 厦门大学本科毕业论文 Design and Implement of Embedded HDD MP3 Player base on S3C2410 - Development of User Interface and Model of Playing on Linux AbstractIn recent years, it is commonly believed that the de

5、velopment of embedded system become a hot issue in the areas of computer science. An embedded system is a special purpose computer that is used inside of a device. Now with the innovation of hardware, users expect a perfect function on embedded products. More and more embedded systems, such as PDA,

6、MP3 player, WAP mobile phone play an increasing significant role in the daily life. As a typical embedded digital device, MP3 player is popular among customers. Firstly, this paper makes a detail analysis of systemic framework and hardware components of traditional MP3 player then indicate an improv

7、ed scheme. It also point out the advantage and disadvantage between these architectures. Traditional MCU/DSP (Microcontroller Unit/Digital Signal Processor) is replaced by MPU(Microprocessor Unit) in the new method. We also use embedded Linux operating system to play the music online and show comple

8、x graphical user interface. As an operating system under the terms of the General Public License, the Linux operating system has achieved success in the embedded arena. The move to Linux can be attributed to lower cost and high performance . It also supports some excellent GUI engines, such as QT/Em

9、bedded, MiniGUI etc.How to design an excellent graphical user interface with special hardware is of great importance to commercial embedded system. This thesis will explore the realization and architecture of GUI in the development of an embedded MP3 player which makes up a significant part of my gr

10、aduation projection on HHARM9-EDU platform. Player reads MP3 files from IDE HDD and uses software to convert it into voices. Both of keyboard and touch panel would be used to control the performance of the MP3 player, such as PLAY,STOP,NEXT,PRE,RECORD etc. We will use gcc with MiniGUI Library on Lin

11、ux to show GUI component on LCD of HHARM9-EDU Platform. Keywords Embedded System, Linux , Graphical User Interface (GUI) , MP3 目 录 厦门大学本科毕业论文 第一章 引言 1 第 二 章 嵌入式系统概述 2 2.1 嵌入式系统定义 2 2.2 嵌入式系统发展 2 2.3 嵌入式 系统开 发流程 3 2.4 嵌入式开发流程的特点 4 2.5 课题背景 6 2.5.1 HHARM9-EDU 平台硬件模块与接口 6 2.5.1 市面常见的 MP3 播放器 7 2.5.2 本文

12、 开发的硬盘 MP3 播放器 9 第 三 章 嵌入式 Linux 操作系统 12 3.1 嵌入式 操作系统分类与相关产品 12 3.2 嵌入式 Linux 的优势 12 3.3 Linux 在 HHARM9-EDU 平台上的移植 13 3.4 系统开发环境 14 3.4.1 宿主机 Linux 系统安装 14 3.4.2 交叉编译环境的建立 15 第 四 章 嵌入式 Linux 平台下的 MiniGUI 程序设计 16 4.1 嵌入式系统 GUI 的实现方法 16 4.1.1 MiniGUI 16 4.1.2 MicroWindows 16 4.1.3 Qt/Embedded 16 4.2 各

13、种嵌入式 GUI 系统 的比较 16 4.3 MiniGUI 在嵌入式 Linux 平台下的移植 17 4.3.1 MiniGUI 库在 HHARM9-EDU 平台的移植 18 4.3.2 MiniGUI 宿主机模拟平台 qvfb 的建立 18 第 五 章 嵌入式 MP3 播放器的设计与实现 20 5.1 MP3 概述 20 厦门大学本科毕业论文 5.1.1 MPEG LAYER III 音频压缩算法介绍 20 5.1.2 MP3 文件结构分析 20 5.2 MP3 播放器 的详细 设计 22 5.2.1 使用硬件设备 22 5.2.1.1 触 控 屏 22 5.2.1.2 LCD 彩色液晶显

14、示屏幕 23 5.2.1.3 小键盘 23 5.2.1.4 硬盘 IDE 接口 24 5.2.1.5 音频输入 /输出 24 5.2.2 MiniGUI 图形开发 24 5.2.2.1 程序结构图 24 5.2.2.2 主窗体界 面建立 25 5.2.2.3 MP3 文件列表读取与显示 30 5.2.2.4 触 控 屏菜单与按键实现 34 5.2.2.5 仿 LED 七段 数码管 显示的实现 36 5.2.2.6 小键盘操作的实现 38 5.2.2.7 使用 IPC 与播放进程通信 41 5.2.2.8 录音放音功能的实现 42 5.2.3 应用程序移植 44 5.2.3.1 启动 shell

15、 脚本编写 44 5.2.3.2 引导代码及文件系统烧录 45 第六章 结束语 47 致谢 48 参考文献 49 厦门大学本科毕业论文 第 1 页 共 49 页 第一章 引言 随着后 PC时代的到来,嵌入式产品已不再是一个新的概念,嵌入式产品遍布于人们的日常生活,从移动电话, PDA到家用洗衣机,空调,冰箱,机床控制,武器制导系统。数字化已不再仅仅限于 PC的桌面系统,而已经扩展到各式各样的嵌入式设备中。 在嵌入式领域, Linux作为下一代嵌入式系统开发工具,从技术方面看, Linux存在许多现实的、可以量化的优势,例如广泛的硬件支持、良好的可伸缩性、卓越的性能、极高的可靠性和开放的 API

16、。从成 本方面看,不用交版税、免费或廉价的软件组件以及免费的源代码,这些都会在降低产品成本和提高产品灵活度上得到很大的优势。因此越来越多的国内外开发厂商使用 Linux作为嵌入式系统开发 和应用 平台。 毕业设计的目标是在华恒公司生产的 HHARM9-EDU教学实验平台上,通过移植嵌入式 Linux操作系统, MiniGUI函数库 ,在实验板上向用户提供友好的操作界面,实现硬盘 MP3播放器的基本功能,其中包括 MP3文件播放,录音复读等功能,在项目中,本人主要负责 MiniGUI图形接口的设计以及与 MP3解码程序的通信与控制。 项目 的成功实现有着特殊的意义,它摆脱了传统 MP3 播放器使

17、用硬件芯片进行解码的旧思路,利用高性能 MPU 代替 MCU/DSP 实现解码以及实现高质量的 GUI 接口控制,在商业 MP3的改进道路上进行了积极的探索。 厦门大学本科毕业论文 第 2 页 共 49 页 第二章 嵌入式系统 概述 2.1 嵌入式系统定义 嵌入式系统 (Embedded System)是 “ 嵌入式计算机系统 ” 的简称,它是相对于通用计算机系统而言的。某些系统中也包含计算机,但是计算机是作为某个专用系统中的某一个部件而单独存在的。像这样嵌入到更专用,更大型的系统中的计算机系统,称为 “ 嵌入式计算机 ” 、 “ 嵌入式计算机系统 ” 或者简单的称为 “ 嵌入式系统 ” 。

18、嵌入式系统有着多种定义。 一般地说 嵌入式系统可以定义为 “ 嵌入到对象系统中的专用计算机系统 ” 。 “ 嵌入性 ” 、 “ 专用性 ” 与 “ 计算机系统 ” 是嵌入式系统的三个基本要素。对象系统则是指嵌入式系统所嵌入的宿主系统。 IEEE的定义:嵌入式系统是用来控制和监视机器,装置或工厂等的大规模系统的设备。此定义是从应用方面考虑,嵌入式系统是软件和硬件的综合体,还可以涵盖机电等附属设备。 2.2 嵌入式系统 发 展 嵌入式系统已经在很多领域得到广泛的使用,如国防,工业 控制,通信,办公自动化和消费电子领域等。 嵌入式计算机系统要嵌入到对象体系中,实现的是对象的智能化控制,因此,它有着与

19、通用计算机系统完全不同的技术要求与技术发展方向。通用计算机系统的技术要求是高速、大量的数值计算;技术发展方向是总线速度的无限提升,存储容量的无限扩大。而嵌入式计算机系统的技术要求则是对象的智能化控制能力;技术发展方向是与对象系统密切相关的嵌入性能、控制能力与控制的可靠性。 最初,人们将通用计算机系统进行改装,在大型设备中实现嵌入式应用。然而,对于众多的对象系统(如,家用电器、工控设备 等),无法嵌入通用计算机系统,况且嵌入式系统与通用计算机系统的技术发展方向完全不同,因此,必须独立地发展通用计算机系统与嵌入式计算机系统,这就形成了现代计算 机技术发展的两大分支。 通用计算机系统与嵌入式计算机系

20、统的专业化分工发展,于是在 20世纪末、 21世纪初,计算机技术的飞速发展。计算机专业领域集中精力发展通用计算机系统的 软、硬件技术,不必兼顾嵌入式应用要求,通用微处理器迅速从 80286、 80386、 80486 到奔腾系列;操作系厦门大学本科毕业论文 第 3 页 共 49 页 统则迅速扩张计算机基于高速海量的数据文件处理能力,使通用计算机系统进入到尽善 尽美阶段。 嵌入式计算机系统则走上了一条完全不同的道路,这条独立发展的道路就是单芯片化道路。它动员了原有的传统电子系统领域的厂家与专业人士,接过起源于计算机领域的嵌入式系统,承担起发展与普及嵌入式系统的历史任务,迅速地将传统的电子系统发展

21、到智能化的现代电子系统时代。 如果说微型机的出现,使计算机进入到现代计算机发展阶段,那么嵌入式计算机系统的诞生,则标志了计算机进入了通用计算机系统与嵌入式计算机系统两大分支并行发展时代,从而导致 20世纪末,计算机的高速发展时期。 嵌入式智能计算机将是继 PC 和 Internet 之后对世界影响最大的科技产品。 2.3 嵌入式 系统 开发流程 一般而言嵌入式系统开发需要经历以下几个步骤 : (1)元器件选型 (2)原理图编制 (3)印制板设计 (4)样板试制 (5)硬件功能测试 (6)编写引导程序 (7)操作系统移植 (8)驱动程序开发 (9)API 设计与开发 (10)支撑软件设计与调试

22、(11)应用软件设计于调试 (12)系统联调 (13)样机交付 其中 1-5 属于硬件开发部分,是硬件电子工程开发工程师设计范畴。 6-11 属于软件设计部分,同时也是毕业设计中的着重部分,第 7, 8, 10,11 步,尤其重要。 毕业设计中细划为 : (1)内核的参数修改, 重编译 厦门大学本科毕业论文 第 4 页 共 49 页 (2)Linux 操作系统的裁减与移植 (3)小键盘, LCD 驱动程序的开发 (4)飞漫公司 MiniGUI API 的移植 (5)MP3 解码程序的编写 (GNU C) (6)MiniGUI 播放器图形界面综合编写 (C 使用 MiniGUI 库 ) (7)调

23、试 图 2-1 嵌入式开发步骤 嵌入式系统与通用计算机在下面几个方法面差别比较明显: ( 1) 人机交互界面。嵌入式系统和通用计算机之间的最大的差别就在人机交互界面。嵌入式系统可能根本不存在 键盘显示器等设备 或者仅有 4 4 的小键盘 ,它所完成的也仅是监视 例如 传感器的变化情况,并按照事先设计好的过程即使完成响应的处理任务 。 ( 2) 有限的功能,嵌入式系统的功能在设计时已经定制好,在开发完成投入使用之后就不再变化。系统将吩咐执行这些预定好的任务,而不像通用计算机那样随时可以运行新任务。当然使用嵌入式操作系统的嵌入式系统可以添加新的任务,删除旧的任务;但这样的变化对嵌入式系统而言是关键

24、性的变化。 ( 3) 时间的关键性和稳定性。嵌入式系统可能要求要求实时响应,具有严格的时序性。同时,嵌入式系统还要求有非常可靠的稳定性。 2.4 嵌入式开发流程的特点 嵌入式系统的开发流程也和普通 PC 机开发有着很大的不同 : ( 1) 需要交叉编译环境。嵌入式应用软件开发要使用交叉便宜环境。交叉开发环境是指实现编译、链接和调试应用程序代码的环境。与运行应用程序的环境不同,它分散在有通信连接的宿主机与目标机环境中。 厦门大学本科毕业论文 第 5 页 共 49 页 (a) 宿主机 (HOST)是一台通用计算机,一般 PC 机器。它通过穿口或者网络连接与目标机通信。宿主机的软硬件资源比较丰富,包

25、括强大的操作系统。在本课题中,我们使用 P4 80G 512M 作为宿主机硬件设备。 Red Hat Linux 9 ( 完全安装,包括 KDE桌面)作为软件开发平台。 (b) 目标机 (TARGET)常在嵌入式软件开发期间使用,用来区别嵌入式系统通信的宿主机。目标机可以是嵌入式应用软件的实际运行环境,也可以是能替代实际环境的仿真系统。在这里我们使用华开源恒信息技术有限公司生产的 HHARM9-EDU 嵌入式实验平台作为目标机。该设备的外设包括输入设备 4*5 小键盘、触摸屏;输出设备有 LCD 彩色液晶显示屏。交叉软件开发工具包括交叉编译器,交叉调试器和模拟软件等。 图 2-2 描述了 嵌入

26、式 开发过程中宿主机和目标机的关系 。 宿主机 Linux PC 开发 目标 HHARM9-EDU 实验平台 图 2-2 嵌入式 linux 设备驱动程序开发流程图 ( 2) 引入任务设计方法。嵌入式应用系统以任务为基本执行单元。在系统设计阶段用多个并发任务代替通用软件的多个模块,并定义了应用软件任务间的接口。 ( 3) 需要固化程序。通用软件的开发在测试完成以后就可以直接投入运行。其目标环境一般是 PC 机,在总体结构上与开发环境差别不大。而嵌入式应用程序开发环境是 PC机,但运行的目标环境却大不相同。可以是 PDA,也可以是设备仪器。而且应用软件在目标环境下必须存储在非易失性存储器中,保证用户惯技口确保瑕疵的使用。所以应用软件在开发完成以后,应生成固化版本,烧写到目标环境的 FLASH 中运行。 ( 4) 软件开发难度比较大。绝大多数嵌入式软件有实时性的要求,特别在硬实时系统中,实时性至关重要。这些实时顶的体现一部分来自于操作系统的实时性,另一部分以来于应用软件本身的设计和代码质量。 通过 并 口将代码烧录嵌入式设备存储器

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。