毕业设计(论文)基于ARM的MP3播放器设计.doc
《毕业设计(论文)基于ARM的MP3播放器设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于ARM的MP3播放器设计.doc(41页珍藏版)》请在三一办公上搜索。
1、目 录摘 要IABSTRACTII引 言11MP3播放器概述31.1MP3播放器的工作原理31.2MP3的文件结构41.3MP3播放器的历史与发展41.4MP3播放器设计的可行性分析51.4.1技术可行性分析51.4.2经济可行性分析62系统硬件平台介绍72.1系统硬件特性介绍72.1.1ARM9处理器介绍72.1.2RISC微处理器S3C2440介绍72.2硬件平台工作原理83平台搭建的总体设计103.1嵌入式系统概述103.2软件平台的设计103.3U-BOOT分析与移植113.3.1BootLoader简介113.3.2U-BOOT启动流程分析113.3.3U-BOOT的详细设计123.
2、4Linux内核分析与文件系统移植173.4.1Linux启动过程173.4.2Linux内核的移植173.5文件系统的设计183.5.1Jffs2文件系统介绍193.5.2文件系统的制作194MP3播放器的设计与实现224.1播放模块的设计224.1.1声卡驱动的设计224.1.2MADPLAY播放器的移植234.2同步歌词模块的设计254.3USB驱动模块的设计264.4按键控制模块的设计314.4.1创建歌曲列表314.4.2播放MP3文件314.4.3暂停播放334.4.4停止播放334.4.5歌曲切换335MP3播放器的界面设计355.1界面设计工具的选择355.2图形界面的设计35
3、致 谢39参考文献40引 言随着计算机技术的发展和微处理器工艺的改进,社会正在一天天的步入信息化,嵌入式系统的应用也越来越广泛,计算机和网络已经全面渗透到了我们日常生活中的每个角落,任何人都可以拥有从小到大的各种采用了嵌入式技术的产品,小到MP3,PDA等微型数字化产品,大到许多的家用电器,车载设备等,嵌入式系统及其应用在电子市场占有了一定的份额,并起了一定的主导作用。由于嵌入式系统是建立在特定的硬件系统之上,系统的开发和硬件的关系十分密切,且入市开发板为开发者提供了丰富的设为设备和接口,通过接口可以调试应用程序和打印输出调试信息。嵌入式开发板已经成为了嵌入式开发和移植的有力工具。基于ARM内
4、核的微控制器芯片不但占据了高端微控制器市场的大部分是成份额,同时也逐渐向低端微控制器应用领域扩展,ARM微控制器的低功耗、高性价比使其以70%左右的市场占有率成为嵌入式解决方案中主流处理器。Linux近几年在嵌入式领域异军突起,成为了非常有潜力的操作系统。Linux操作系统的代码的开放性、系统的稳定性、强大的网络功能以及优秀的文件系统支持,在嵌入式设备特别是网络设备中得到了广泛的应用。因此,选择Linux操作系统作为设计的操作系统。随着计算机和多媒体技术的不断发展以及个人计算机的普及,各种各样的媒体文件、媒体播放器层出不穷,而MP3(MPEG Audio Layer3)格式以其体积小、音质也有
5、保证的特点成为使用最为广泛的音频格式,得到了绝大多数软件和硬件媒体播放器的支持。如今,软件市场上的媒体播放器层出不穷,如:酷狗音乐、千千静听、QQ音乐播放器等。高音质播放和低内存消耗是各种媒体播放器所追求的目标。嵌入式系统具有巨大的市场需求前景,可广泛应用于移动计算设备、网络设备、信息电器、工控设备、车载设备、娱乐设施、仪器仪表等场合。而MP3具有巨大的市场需求。为适应当前发展趋势,开发基于嵌入式LINUX的MP3音乐播放器系统。为了对嵌入式系统的开发过程能够熟练的掌握,学习了一些有关嵌入式系统开发技术的方法,掌握了开发的基本步骤。在设计时构建了一个ARM9开发平台、使用嵌入式Linux操作系
6、统进行了具体的设计,最终实现了在ARM上的简易MP3播放器的设计。本设计探索性地设计实现了一个支持LRC歌词显示的MP3播放器的软件。该播放器实现了在播放MP3的同时实时地显示LRC歌词,并实现歌曲的暂停、停止以及歌曲的切换功能。论文首先介绍了嵌入式系统以及开发环境,然后,介绍了一些设计过程中的准备工作,接着介绍了MP3播放器的开发平台,阐述了系统各功能的详细设计与实现。最后,论文介绍了系统的运行环境及运行效果,并对各个部分进行了图示说明。最后介绍了本设计的设计目标,划分并设计了系统功能模块,包括:系统初始化模块、播放模块、同步歌词模块、按键切换模块等,设计了媒体文件和歌词文件的处理流程。1
7、MP3播放器概述MP3的全称应为MPEG1 Layer-3音频文件,MPEG(Moving Picture Experts Group)在汉语中译为活动图像专家组,特指活动影音压缩标准,MPEG音频文件是MPEG1标准中的声音部分,也叫MPEG音频层,它根据压缩质量和编码复杂程度划分为三层,即Layer-1、Layer2、Layer3,且分别对应MP1、MP2、MP3这三种声音文件,并根据不同的用途,使用不同层次的编码。1.1 MP3播放器的工作原理MP3播放器是利用数字信号处理器DSP(Digital Sign Processer)来完成处理传输和解码MP3文件的任务的。DSP掌管随身听的数
8、据传输,设备接口控制,文件解码回放等活动。DSP能够在非常短的时间里完成多种处理任务,而且此过程所消耗的能量极少,这也是它适合于便携式播放器的一个显著特点。 一个完整MP3播放机要分几个部分:中央处理器、解码器、存储设备、主机通讯端口、音频DAC和功放、显示界面和控制键。其中中央处理器和解码器是整个系统的核心。这里的中央处理器我们通常称为MCU,简称单片机。它运行MP3的整个控制程序,也称为fireware,或者固件程序。它控制了MP3的各个部件的工作,例如从存储设备读取数据送到解码器解码;与主机连接时完成与主机的数据交换;接收控制按键的操作,显示系统运行状态等。解码器是芯片中的一个硬件模块,
9、或者说是硬件解码,它可以直接完成各种格式的MP3数据流的解码操作,并输出PCM或I2S格式的数字音频信号。 存储设备是MP3播放机的重要部分,通常的MP3随身听都是采用半导体存储器(FLASH MEMORY)或者硬盘(HDD)作为储存设备的。它通过接受储存主机通讯端口传来的数据,回放的时候MCU读取存储器中的数据并送到解码器。数据的存储是要有一定格式的,众所周知,PC管理磁盘数据是以文件形式,MP3也不例外,最常用的办法就是直接利用PC的文件系统来管理存储器。 主机通讯端口是MP3播放器与PC机之间交换数据的重要途径,PC机通过该端口操作MP3播放器存储设备中的数据,对数据进行拷贝、删除、复制
10、文件等操作。目前最广泛使用的是USB总线,并且遵循微软定义的大容量移动存储协议规范,将MP3播放器作为主机的一个移动存储设备。这里需要遵循几个规范:1、USB通信协议,2、大容量移动存储器规范,3、SCSI协议。 音频DAC是将数字音频信号转换成模拟音频信号,以推动耳机、功放等模拟音响设备。在这里,本文需要介绍一下数字音频信号。数字音频信号是相对模拟音频信号来说的。我们知道声音的本质是波,人说能听到的声音的频率在20Hz到20kHz之间,称为声波。模拟信号对波的表示是连续的函数特性,基本的原理是不同频率和振幅的波叠加在一起。数字音频信号是对模拟信号的一种量化,典型方法是对时间坐标按相等的时间间
11、隔做采样,对振幅做量化。单位时间内的采样次数称为采样频率。这样一段声波就可以被数字化后变成一串数值,每个数值对应相应抽样点的振幅值,按顺序将这些数字排列起来就是数字音频信号了。这是ADC(模拟-数字转换)过程,DAC(数字-模拟转换)过程相反,将连续的数字按采样时候的频率顺序转换成对应的电压。MP3解码器解码后的信息属于数字音频信号(数字音频信号有不同的格式,最常用的是PCM和I2S两种),需要通过DAC转换器变成模拟信号才能推动功放,被人耳所识别。 MP3播放器的显示设备通常采用LCD或者OLED等来显示系统的工作状态。控制键盘通常是按钮开关。键盘和显示设备合起来构成了MP3播放机的人机交互
12、界面。 MP3播放器的软件结构跟硬件是相对应的,即每一个硬件部分都有相应的软件代码,这是因为大多数的硬件部分都是数字可编程控制的。 通过以上分析,一个最简化的MP3播放器的工作原理可以概括如下:首先将MP3歌曲文件从内存中取出并读取存储器上的信号,然后到解码芯片对信号进行解码操作,然后通过数模转换器将解出来的数字信号转换成模拟信号,再把转换后的模拟音频放大,经过低通滤波后到耳机输出口,最后输出的就是我们所听到的音乐了。1.2 MP3的文件结构MP3的文件大体分为三部分:TAG_V1(ID3V1),Frame,TAG_V2(ID3V2)。TAG_V1(ID3V1)包含了作者,作曲,专辑等信息,长
13、度为128BYTE。Frame是一系列的帧,个数由文件大小和帧长来决定,帧是MP3文件中最小的组成单位,每个Frame的长度可能不固定,有bitrate(比特率)来决定。每个Frame又分有帧头和数据实体两部分,帧头几率MP3的位率,采样率和版本信息等。TAG_V2(ID3V2)到现在共有4个版本,但流行的播放软件一般只支持第3版本,它存放在文件的首部,包含了作者,作曲,专辑等信息,但是长度不固定,同时扩展了ID3V1的信息量。1.3 MP3播放器的历史与发展世界上第一台MP3的诞生,其实是有一个小故事的,故事追溯到1997年3月的一天,韩国三星公司一位部门经理Moon先生,出差在美国回到汉城
14、的飞机上,在他的笔记本电脑上看他的同事给他发出的一分报告。这是一份图象、文字和MP3音乐合成的简报。当Moon阅读完毕摘下耳机,发现他身旁的旅客正在听着MD,Moon顿时受到启发:要是电脑上的MP3音乐文件也能够直接取出来,用一个独立的播放器来播放,那不就是最好的音乐随身听吗?回到韩国后,他将这个想法提给当时的总裁尹钟龙。可惜的是,当时三星正在进行组织重整,无暇兼顾Moon的发展提案。半年后,亚洲金融风暴的发生使三星公司受到巨大的冲击,Moon先生也被迫提早退休。离开三星公司后,Moon先生进入了另一家韩国企业Saehan(世韩)出任总裁,并将他的想法在Saehan公司转变成为了现实,于199
15、8年推出了世界上第一台的MP3播放器MPMan F10。 MPMan,取意于MP3与WALKMAN的结合。MPMan F10的体积为70x90x16.5mm,约有四个1.44M软盘堆叠起来这么大,体重为65克,可谓非常轻巧。MPMan F10没有任何的机械部件,信噪比达到70dB,失真率为0.01-0.1%。播放时可显示音轨、播放时间,可编排播放顺序,支持低音/中音放大,电池状态检测和显示,依靠2个镍氢电池也能维持8小时播放,即使在现在也并不会显得落后。MPMan F10当时开发出来的目的是为了让使用者从收费音乐网站下载歌曲,可惜Saehan公司没有足够的实力进行大范围的推广,加上MPMan
16、F10采用的是而且采用的是当时极为昂贵的闪存,很快便在与MD的较量中败下阵来。 虽然没有引起人们太多的注意,但MPMan F10的出现从此便启动了MP3市场,韩国的许多公司都开始了对MP3的研发和生产。直到今日,韩国依然在MP3领域处于领先地位。MP3随身听已经经历了数年的发展,而随身听市场的竞争亦趋于白热化,几乎每个星期甚至每天都会有新品MP3的推出,其发展的速度实在惊人。与此同时,在各种媒体上,无论是IT网站还是报纸杂志,MP3厂商们的广告铺天盖地,各种各样的解码芯片,支持的媒体格式,还有MP3屏幕的发色数以及分辨率令消费者目不暇接,不知所措。然而,在众多的广告当中,有一条却特别引起了笔者
17、的注意,那就是以艾诺为首的厂商所提出的”音画双绝”的概念,在笔者看来,这不仅仅是一个概念,一个名称,它更是一种潮流的趋势。此外MP3的制作和交流也很方便,有很多音乐播放软件都提供MP3的制作,转换等功能。基于MP3的上述优点,他很快成为了深受人们喜爱的音乐媒体,而携带方便,小巧精致的MP3播放器,也在最近几年风靡一时,成为了广大消费者茶余饭后的音乐伴侣。1.4 MP3播放器设计的可行性分析本文设计的是MP3播放器。该播放器是基于嵌入式Linux操作系统、以S3C2440为硬件平台。1.4.1 技术可行性分析本设计因为采用了嵌入式Linux,所以该Mp3播放器可以很容易的移植到其他微控制器系统中
18、,使设备兼具MP3播放的功能,同时使用Linux操作系统可以使设计出来的MP3播放器的性能更加的稳定。另外硬件电路以Samsung公司的ARM9处理器S3C2440为中心。这是一款基于ARM920T内核的16位/32位RISC嵌入式处理器。ARM920T核由ARM9TDMI、存储管理单元(MMU)和高速缓存三部分组成。下面对这三部分进行简要的概述。ARM9TDMI是ARM9的处理器核,它采用了哈弗结构,将指令存储器和数据存储器分开,在数据中止模式时,ARM9TDMI采用的是基地址重新载入的模式,当出现访问存储器数据中止时,处理器硬件在数据中止指令执行前,自动保存相应发生数据中止时基地址寄存器的
19、值。MMU是用来管理虚拟内存系统的硬件,用于完成将虚拟地址转换成物理地址,并控制存储器的存储权限。主要对ARM9TDMI的指令和数据地址接口提供传输和访问允许检查,提供地址信号的传输和保护规划。高速缓存由独立的16KB地址和16KB数据高速Cache组成。采用了64路相连的分段式CAM-RAM组织,每个cache分为8段,每段64行。S3C2440芯片集成了大量的功能单元,让设计出的MP3播放器拥有低功耗的特性。1.4.2 经济可行性分析本设计是在Linux环境下的进行编程实现的,Linux是免费、开源的,使用的硬件平台是S3C2440,价格便宜,运行稳定,也可方便的移植到其他平台。这点让设计
20、出来的MP3播放器能够降低设计成本,同时也可以让开发者在开发过程中进一步完善MP3播放器的功能。综上所述,本文以S3C2440为硬件平台,基于嵌入式Linux操作系统,设计出了MP3播放器。2 系统硬件平台介绍2.1 系统硬件特性介绍嵌入式系统总是面向特定应用的,与通用PC的硬件相比,它的硬件系统具有以下特性:1、 对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核的执行时间减少到最低的限度。2、 具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软
21、件诊断。3、 可扩展的处理器结构,以便能够迅速地开发出满足各种应用需求的高性能嵌入式微处理器。2.1.1 ARM9处理器介绍相比于ARM7,ARM9系列微处理器在性能和功耗方面表现更佳,具有以下特点:(1)5级整数流水线,指令执行效率更高;(2)提供11MIPSMHz的哈佛结构;(3)支持32位ARM指令集和1 6位Thumb指令集;(4)支持32位的高速AMBA总线接口;(5)全性能的MMU,支持Windows CE、Linux、Palm OS等多种主流嵌入式操作系统;(6)MPU支持实时操作系统;(7)支持数据Cache和指令Cache,具有更高的指令和数据处理能力。ARM9系列微处理器主
22、要应用于无线设备、仪器仪表、安全系统、机项盒、高端打印机、数字照相机和数字摄像机等。ARM9系列微处理器包含ARM920T、ARM922T和ARM940T三种类型。2.1.2 RISC微处理器S3C2440介绍三星公司推出的16/32位RISC微处理器S3C2440A, 为手持设备和一般类型应用提供了低价格、低功耗、高性能小型微控制器的解决方案。 为了降低整体系统成本,S3C2440A 提供了一下丰富的内部设备 S3C2440A 采用了 ARM920t 的内核, 0.13um 的 CMOS标准宏单元和存储器单元。其低功耗,简单,优雅,且全静态设计特别适合于对成本和功率敏感型的应用。它采用了新的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 ARM MP3 播放 设计
链接地址:https://www.31ppt.com/p-3978502.html