基于ARM的音乐播放器的设计与实现Word文档格式.doc

上传人:wj 文档编号:3969558 上传时间:2023-05-02 格式:DOC 页数:34 大小:593KB
下载 相关 举报
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第1页
第1页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第2页
第2页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第3页
第3页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第4页
第4页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第5页
第5页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第6页
第6页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第7页
第7页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第8页
第8页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第9页
第9页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第10页
第10页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第11页
第11页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第12页
第12页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第13页
第13页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第14页
第14页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第15页
第15页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第16页
第16页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第17页
第17页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第18页
第18页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第19页
第19页 / 共34页
基于ARM的音乐播放器的设计与实现Word文档格式.doc_第20页
第20页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于ARM的音乐播放器的设计与实现Word文档格式.doc

《基于ARM的音乐播放器的设计与实现Word文档格式.doc》由会员分享,可在线阅读,更多相关《基于ARM的音乐播放器的设计与实现Word文档格式.doc(34页珍藏版)》请在冰点文库上搜索。

基于ARM的音乐播放器的设计与实现Word文档格式.doc

1.2研究意义 2

第2章需求分析与方案制定 4

2.1功能性分析 4

2.2可行性分析 4

2.3设计的主要目标任务 5

2.4系统方案制定 5

2.5本章小结 5

第3章系统功能模块介绍 6

3.1S3C2440开发板简介 6

3.2S3C2440芯片特性简介 6

3.2.1S3C2440芯片参数 7

3.2.2内核结构 7

3.2.3总线结构 7

3.2.4处理器通用模块1 8

3.2.5处理器通用模块2 8

3.2.6存储器接口 9

3.2.7外围总线接口 9

3.2.8人机接口 9

3.3LCD模块介绍 9

3.4软件模块介绍 10

3.5本章小结 11

第4章硬件系统 12

4.1开发板系统的硬件框架 12

4.2LCD模块原理 12

4.2.1A/D转换器 12

4.2.2触摸屏原理结构 13

4.3系统硬件介绍 14

4.4各个外设接口 14

4.4.1JTAG接口 14

4.4.2USB_UART转换接口 15

4.4.3RS232接口 15

4.4.4USB主接口 15

4.4.5USB从接口 16

4.4.6AD输入接口 16

4.4.7复位系统 16

4.5本章小结 16

第5章系统软件设计 17

5.1系统软件设计流程图 17

5.2Bootloader内核的配置 17

5.2.1Bootloader 17

5.2.2配置编译bootloader---u-boot 18

5.2.3裁剪编译linux-2.6.34(编译内核) 19

5.3制作根文件系统 19

5.4烧录镜像文件 20

5.4.1烧录Bootloader 20

5.4.2烧录Linux2.6内核和根文件系统 22

5.5安装交叉编译编译工具链 24

5.6对Mplayer源码进行重新配置编译 24

5.7编写主程序(包含触屏驱动) 25

5.8设计人机交互界面 25

5.9程序移植 26

5.10本章小结 26

第6章结论 27

参考文献 28

致谢 30

IV

第1章绪论

1.1选题背景

多媒体是全面的综合性的信息资源,它常常指信息表示媒体的多样化,常见的形式有文字、资料、图形、影像、动画、视讯、声音、特殊效果,再经由电脑表现出来,它能用来达成信息传播中的任何媒体资源。

多媒体技术的产生和发展,是技术和应用发展的必然。

在信息社会,人们迫切希望计算机能以人类习惯的方式提供信息服务,因而多媒体技术应运而生。

它的出现,使得原本“面无表情”、“死气沉沉”的计算机有了一副“生动活泼”的面孔。

用户不仅可以通过文字信息,还可以通过直接看到的影像和听到的声音,来了解感兴趣的对象,并可以参与或改变信息的演示。

一般而言,嵌入式系统的构架可以分成四个部分:

处理器、存储器、输入输出(I/O)和软件,嵌入式系统目前最主要的组成部分。

根据操作系统的工作特性,实时是指物理进程的真实时间。

实时操作系统具有实时性,能从硬件方面支持实时控制系统工作的操作系统。

其中实时性是第一要求,需要调度一切可利用的资源完成实时控制任务,其次才着眼于提高计算机系统的使用效率,重要特点是要满足对时间的限制和要求。

嵌入式系统一般由嵌入式计算机系统和执行机构组成,嵌入式计算机系统是由硬件层、中间层、系统软件层和应用软件层组成的。

执行机构也作为控制对象,它可以接收由嵌入式计算机系统发出的控制命令,执行所需的操作或任务。

执行器可以很简单,如手机上的微小型点击,手机在振动时机大开,也可以是非常复杂的,如SONY智能机器人集成以上的小型和微型控制电机,以及各种传感器,它可以执行各种复杂的动作和感情的各种状态信息。

嵌入式微处理器在世界上有超过1000种,30多个系列,其中的主流体系结构有ARM,MIPS,PowerPC上,X86和SH等。

但不像全球PC市场,没有那种嵌入式微处理器能够主宰市场,就32个产品而言,有超过100种嵌入式微处理器。

嵌入式微处理器的选择是由具体应用决定的。

这几年掀起的嵌入式系统的应用热潮主要有以下几种原因:

首先,芯片技术的发展,使一个单一的芯片具有更强的处理能力,而且集成多种接口已成为可能,许多芯片制造商焦点在这方面。

另一方面,其原因在于应用需求,产品的可靠性,成本,更换为嵌入式系统的需求不断增加,从纯硬件实现的和使用通用计算机来实现的的应用中脱颖而出,成为令人关注的焦点

Linux以它的高效性和灵活性著称。

它能够在PC计算机上实现全部的Unix特性,具有多任务、多用户的能力。

Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。

Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。

它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用WindowsNT一样,允许我们使用窗口、图标和菜单对系统进行操作。

Linux之所以受到广大计算机爱好者的喜爱,主要原因有两个,一是它属于自由软件,用户不用支付任何费用就可以获得它和它的源代码,并且可以根据自己的需要对它进行必要的修改,无偿对它使用,无约束地继续传播。

另一个原因是,它具有Unix的全部功能,任何使用Unix操作系统或想要学习Unix操作系统的人都可以从Linux中获益。

绝大多数基于Linux内核的的操作系统使用了大量的GNU软件,包括了shell程序、工具、程序库、编译器及工具,还有许多其他程序,例如Emacs。

大多数系统还包括了像提供GUI界面的XFree86之类的曾经运行于BSD的程序。

软件可移植性指一种计算机上的软件转置到其它计算机上的能力(也可称作软件自动搬家)。

软件移植是实现功能的等价联系,而不是等同联系软件可移植性的主要标志是:

这类软件有个通用的标准文本;

它们独立于具体的计算机。

软件相对于具体计算机的独立性,从狭义上讲,是指可移植软件应独立于计算机的硬件环境;

从广义上讲,可移植软件还应独立于计算机的软件,即高级的标准化的软件,它的功能与机器系统结构无关,可跨越很多机器界限。

从一种计算机向另一种计算机移植软件时,首先要考虑所移植的软件对宿主机硬件及操作系统的接口,然后设法用对目标机的接口代换之。

因此,接口的改造容易与否,是衡量一个软件可移植性高低的主要标志之一。

多媒体已成为我们日常生活的重要组成部分,但一个优秀的播放器,却往往因为系统环境,不开源等问题,而不是被广泛认可、使用,这是我们的损失。

因此,跨平台的多媒体播放器移植有很好的市场前景。

1.2研究意义

未来对多媒体的研究,主要有以下几个研究方面:

数据压缩、多媒体信息特性与建模、多媒体信息的组织与管理、多媒体信息表现与交互、多媒体通信与分布处理、多媒体的软硬件平台、虚拟现实技术、多媒体应用开发。

展望未来,网络和计算机技术相交融的交互式多媒体将成为21世纪多媒体发展方向。

所谓交互式多媒体是指不仅可以从网络上接受信息、选择信息,还可以发送信息,其信息是以多媒体的形式传输。

利用这一技术,人们能够在家里购物、点播自己喜欢的电视节目。

21世纪的交互式多媒体技术的实现将会极大的改变我们的生活。

由于Linux是一套具有Unix全部功能的免费操作系统,它在众多的软件中占有很大的优势,为广大的计算机爱好者提供了学习、探索以及修改计算机操作系统内核的机会。

Linux不仅为用户提供了强大的操作系统功能,而且还提供了丰富的应用软件。

用户不但可以从Internet上下载Linux及其源代码,而且还可以从Internet上下载许多Linux的应用程序。

可以说,Linux本身包含的应用程序以及移植到Linux上的应用程序包罗万象,任何一位用户都能从有关Linux的网站上找到适合自己特殊需要的应用程序及其源代码,这样,用户就可以根据自己的需要下载源代码,以便修改和扩充操作系统或应用程序的功能。

开源的特性也决定了它使用的人越多,程序进步越快的特点。

我们可以预见在不久的将来,linux一定会大行其道,linux的强大的兼容性,可移植性也将发挥的淋漓尽致。

含有嵌入式系统设备统称嵌入式系统,如:

手机,电子手表,多媒体播放器等,覆盖消费类电子产品,汽车电子,军用电子,生产,工业控制,通信,网络等领域。

随着技术的进步,越来越高性能的嵌入式设备被广泛使用。

操作系统是通过软件的运行带动硬件工作。

然而,大部分的软件对操作系统有要求。

这就要进行软件的移植,使其在需要的其他操作系统下也能正常工作。

在这种情况下,一个好的软件就不会仅仅局限于一个小领域,例如:

把Iphone上的应用移植到其他平台上,从而改善我们的生活,促进技术进步的发展。

2

第2章需求分析与方案制定

本章分析了设计需求,并对设计的可行性进行分析,阐述了设计的主要目标以及设计的大体流程,并最终制定了系统的实施方案。

2.1功能性分析

用S3C2440开发板作为产品的主体,LCDModuileV1.1作为一个控制面板,通过可触摸的LCDModuile实现播放控制。

以u-boot作为bootloader,采用Linux2.6内核和yaffs格式的文件系统,核心媒体播放程序为MPlayer-1.0rc3,核心解码器为libmad1.7。

可以实现绝大部分Mplayer的功能:

1)实现市场上几乎所有流行的音频文件播放。

2)可正常播放损坏了报头的AVI文件。

3)可以解码大部分的网络流媒体文件。

4)人性化的触屏操作。

2.2可行性分析

随着人们的生活水平不断提高,精神资料的需求逐渐提高,多媒体已经成为生活中必不可少的一部分。

各式各样的多媒体迅速充斥了我们的生活,现在,多媒体正在向便携个人多媒体发展。

我们生活中数字信息的数量在今后几十年中将急剧增加,质量上也将大大地改善。

多媒体正在迅速的、意想不到的方式进入人们生活的多个方面,大的趋势是各个方面都将朝着当今新技术综合的方向发展。

他们可以归结为两大类:

音频,视频。

但是现在多媒体的格式越来越多,比较流行的多媒体格式就有十多种,他们音质画质参差不齐,便携式设备上可用的媒体播放器较PC上的应用还有不小的差距。

那些在电脑上运行的播放器经常因为操作环境等原因而不能在我们的机器上运行。

这就凸显处软件移植的必要性,现在的手机大部分都带有嵌入式操作系统,这为我们软件的移植提供了一定程度的方便,我们完全可以把一款优秀的多媒体播放器软件如Mplayer移植到手机上,它几乎支持几乎所有的音频视频文件,方便我们享受多媒体的乐趣。

2.3设计的主要目标任务

这次设计的主要任务是将一款Linux下的开源多媒体播放器Mplayer从电脑上移植到arm平台上,实现一款软件可以跨平台运行的播放器。

本设计主要研究了软件在不同平台上运行所需要的条件,以及达到触屏操作所需要的一系列要求,并研究了应用程序是如何进行不同程序及资源间调度配合。

本次设计最终达到触屏控制软件实现软件在原来环境下的功能等效果。

可以流畅播放多种格式的视频音频文件。

2.4系统方案制定

本系统分为两大部分:

软件部分,硬件部分。

软件部分包含经过arm交叉编译器编译生成的Mplayer可执行程序,libmad解码库,触屏驱动源代码,以及arm-linux-gcc交叉编译工具链,Windows自带的超级终端,linux操作系统,Bootloader,内核,根文件系统以及在Windows下的连接工具,烧录软件等。

硬件部分包括S3C2440开发板,串口线,并口线,LCD触摸屏,5V变压器,带串、并口的PC机。

将bootloader,内核,根文件系统烧录到S3C2440开发板上,在pc机上完成主控程序编写,和交叉编译工作,然后将程序序放到开发板上测试,运行。

2.5本章小结

本章首先对设计的功能进行分析,通过对开发环境以及开发语言的分析,得到的结论是开发环境完全可以支持设计的开发,接着对Mplayer的功能支持进行分析,结论是足以支持播放器的开发,最后在论证成功的情况下确定了一套可行的系统的方案。

29

第3章系统功能模块介绍

本章首先详细的介绍了开发板的各个部件,然后介绍了三星的S3C2440芯片,并介绍了用于实现播放器人机界面的显示器及触摸屏,最后系统的介绍软件是如何实现对应功能的。

3.1S3C2440开发板简介

S3C2440微处理器

电源

串口

USB

喇叭

复位

音量

触摸屏

这里所用的S3C2440嵌入式系统开发板功能比较强大,配备了完备的硬件资源和开发软件,开发板的结构如图3.1所示。

图3.1开发板结构图

S3C2440A是韩国三星公司推出的16/32位RISC微控制器,其CPU采用的是ARM920T内核。

电源电路实现了5v直流输入到3.3v、1.8v、1.2v输出转换的功能,为板上各功能模组的正常工作提供所需电压。

通讯接口部分,板上提供了以SPI、I2C、RS232异步串行接口、USB转串口接口、USB主/从通讯接口、太网接口等。

多媒体的处理方面,开发板提供了TV输出、VGA接口、摄像头接口、耳机/喇叭输出接口、TFT显示输出接口,在非易失性存储器方面,板上提供了8M的Norflash和64M的Nandflash存储器,还有SD卡接口,另外提供了SATA大容量硬盘接口,可以扩充存储空间。

3.2S3C2440芯片特性简介

S3C2440芯片采用的是ARM920T的芯片结构,它的结构如图3.2所示。

图3.2芯片结构(ARM920T)

3.2.1S3C2440芯片参数

S3C2440芯片的工作电压、操作频率、电源管理参数如下:

1)具有PLL时钟发生器,主频最高可达533M。

2)内核1.2V供电最高400M,1.3V供电最高533M。

3)存储器支持1.8V、2.5V、3.0V、3.3V,I/O均支持3.3V供电。

4)s3c2440为单机器周期执行指令集。

具有电源管理功能,可以使系统以普通方式、慢速方式、空闲方式和掉电方式工作,降低产品功耗。

3.2.2内核结构

内核结构具有如下特点:

1)采用ARM920T内核,具有16KB指令Cache、16KB数据Cache和存储器管理单元MMU。

2)指令高速存储缓冲器(I-Cache),数据高速存储缓冲器(D-cache)提高指令执行效率及数据存储效率,减少主存带宽和响应性带来的影响。

3)加强的ARM体系结构MMU,用于支持winCE、linux等操作系统。

4)内部高级微控制总线(AMBA)体系结构(AMB2.0,AHB/APB)。

3.2.3总线结构

S3C2440芯片采用的是ARM920T结构,ARM920T的总线结构如图3.3所示。

图3.3总线结构

3.2.4处理器通用模块1

有60个中断源,可以设定1个为快速中断,其余为普通中断,有24个外部中断,可编程电平/边沿触发方式。

1个看门狗定时器、5个定时器、9个UART、24个外部中断、4个DMA中断、2个RTC中断、2个ADC中断、1个IIC、2个SPI、1个SD、2个USB、1个LCD、1个触摸屏中断、1个电池故障、1个NAND、2个摄像头、1个AC97。

3.2.5处理器通用模块2

3个通道的UART,带有16字节的TX/RXFIFO,支持IrDA1.0功能。

8通道的10位A/D转换器,最高速率可达500kSPS、提供有触摸屏接口。

具有130个通用I/O口。

有4个具有PWM功能的16位定时器和1个16位内部定时器。

看门狗定时器。

3.2.6存储器接口

sram、sdram、norflash、NANDflash、外部存储器控制器,可扩展8组,每组128MB,总容量达1GB、支持NandFlash作为启动存储器及数据存储器、支持最高达256M的SDRAM存储器接口、支持NORFLASH、SRAM存储器接口、4通道的DMA,并且有外部请求引脚。

3.2.7外围总线接口

32位地址总线、8/16/32位可编程数据总线、控制总线,具有2通道的SPI、1个通道的IIC串行总线接口和1个通道的IIS音频总线接口,有2个USB主机总线端口,1个USB设备总线端口,兼容MMC的SD卡接口。

3.2.8人机接口

带有四线电阻式触摸屏接口,有LCD控制器,支持4K色的STN和256K色的TFT,配置有DMA通道,支持多种屏幕尺寸,典型的屏幕尺寸有640*480,320*320,160*160,集成Camer摄像头控制器,具有日历功能的RTC。

3.3LCD模块介绍

电阻式触摸屏是一种传感器,它将矩形区域中触摸点(X,Y)的物理位置转换为代表X坐标和Y坐标的电压。

很多LCD模块都采用了电阻式触摸屏,这种屏幕可以用四线、五线、七线或八线来产生屏幕偏置电压,同时读回触摸点的电压。

电阻式触摸屏基本上是薄膜加上玻璃的结构,薄膜和玻璃相邻的一面上均涂有ITO(纳米铟锡金属氧化物)涂层,ITO具有很好的导电性和透明性。

当触摸操作时,薄膜下层的ITO会接触到玻璃上层的ITO,经由感应器传出相应的电信号,经过转换电路送到处理器,通过运算转化为屏幕上的X、Y值,而完成点选的动作,并呈现在屏幕上。

原理:

触摸屏包含上下叠合的两个透明层,四线和八线触摸屏由两层具有相同表面电阻的透明阻性材料组成,五线和七线触摸屏由一个阻性层和一个导电层组成,通常还要用一种弹性材料来将两层隔开。

当触摸屏表面受到的压力(如通过笔尖或手指进行按压)足够大时,顶层与底层之间会产生接触。

所有的电阻式触摸屏都采用分压器原理来产生代表X坐标和Y坐标的电压。

分压器通过将两个电阻进行串联来实现的。

上面的电阻连接正参考电压,下面的电阻接地。

两个电阻连接点处的电压测量值与下面那个电阻的阻值成正比。

为了在电阻式触摸屏上的特定方向测量一个坐标,需要对一个阻性层进行偏置:

将它的一边接VREF,另一边接地。

同时,将未偏置的那一层连接到一个ADC的高阻抗输入端。

当触摸屏上的压力足够大,使两层之间发生接触时,电阻性表面被分隔为两个电阻。

它们的阻值与触摸点到偏置边缘的距离成正比。

触摸点与接地边之间的电阻相当于分压器中下面的那个电阻。

因此,在未偏置层上测得的电压与触摸点到接地边之间的距离成正比。

触摸屏结构主要由6部分构成:

1)信号输入通道

2)触摸屏接口

3)8转1切换开关

4)中断信号发生器

5)A/D转换器

6)控制逻辑

3.4软件模块介绍

1)子进程:

在子进程中:

启动Mplayer,参数规定通过命名管道进行通信。

Mplayer会自动从命名管道中读取主进程发来的命令。

Mplayer发出

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2