mp3播放器详细设计说明书.doc_第1页
mp3播放器详细设计说明书.doc_第2页
mp3播放器详细设计说明书.doc_第3页
mp3播放器详细设计说明书.doc_第4页
mp3播放器详细设计说明书.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1 1 引言.2 1.1 编写目的.2 1.2 背景.2 1.3 定义.2 1.4 参考资料.2 2 程序系统的结构.3 3 程序设计说明.3 3.1 程序描述.4 3.2 功能.5 3.3 性能.5 3.4 输人项.5 3.5 输出项.5 3.6 算法.5 3.7 流程逻辑.6 3.8 接口.6 3.9 存储分配.7 3.10 注释设计.7 3.11 限制条件.7 3.12 测试计划.7 3.13 尚未解决的问题.9 2 详细设计说明书详细设计说明书 1 引言引言 1.1 编写目的编写目的 嵌入式系统具有巨大的市场需求前景,可广泛应用于移动计算设备、网络设备、信息 电器、工控设备、车载设备、

2、娱乐设施、仪器仪表等场合。而 mp3 具有巨大的市场需求。 为适应当前发展趋势,开发基于嵌入式 linux 的 mp3 系统。 1.2 背景背景 1. 软件名称:mp3 播放器。 2. 开发小组成员: 3. 软件平台:linux 操作系统。 4. 硬件平台:s3c2440 1.3 定义定义 mp3(mpegaudiolayer-3)是一种数字音频压缩技术,数字压缩速率达到每通道 128kbps, 数比例可以达到 12:1。mp3 播放器的主要作用就是解压压缩的 mp3 数字音频,再现 mp3 音 乐,同时为携带方便还要能存贮 mp3 文件,mp3 歌曲可以从电脑上下载。mp3 播放器主要由 m

3、p3 文件解码部分、文件存贮部分、文件下载接口和语音播放部分构成。根据解码的方法 播放器可分为软解码和硬解码两种:软解码是利用控制软件解压缩 mp3 文件,它要求控制器 处理速度要快。 1.4 参考资料参考资料 1. 宋宝华 linux 设备驱动开发详解 。人民邮电出版社 2. 孙天泽,袁文菊 嵌入式设计及 linux 驱动开发指南(第二版) 。电子工业出版社 3. 刘淼 嵌入式系统接口设计与 linux 驱动程序开发。 北京航天航空大学出版社 3 4. 赵炯 linux 内核完全剖析 机械工业出版社 5. 韦东山 嵌入式 linux 应用开发完全手册 人民邮电出版社 6. 李善平 ,施韦 ,

4、林欣. linux 教程. 北京:清华大学出版社 ,2005. 7. 王道乾,刘定智,文俊浩.基于 arm 处理器的 mp3 播放器分析与实现 ,计算机工程 与计,2007 8. 李亚锋, 欧文盛. arm 嵌入式 linux 系统开发从入门到精通.北京:清华大学出版社, 2007. 9. 李斐 , 王申康. 基于 iis 总线的嵌入式音频系统设计. 计算机应用, 2004 10. 高建华,王姝.基于 s3c2410 型微处理器和 uda1341 型立体声音频编解码器的嵌入 式音频系统设计.国外电子元器件,2006 2 程序系统的结构程序系统的结构 3 程序设计说明程序设计说明 基于 s3c2

5、440 的 mp3 播放器。该播放器是基于嵌入式 linux 操作系统、s3c2440 为平 4 台。由于采用的是嵌入式 linux 实现的,该种 mp3 播放器可以很容易地移植到其他微控制 器系统中,使设备兼具 mp3 播放功能的设备。 3.1 程序描述程序描述 硬件电路以处理器为中心。采用 samsung 公司的 arm9 处理器s3c2440x,是一 款基于 arm920t 内核的 16 位/32 位 risc 嵌入式处理器。arm920t 核由 arm9tdmi、 存储管理单元(mmu)和高速缓存三部分组成。其中 mmu 可以管理虚拟内存,高速缓存由独 立的 16kb 地址和 16kb

6、 数据高速 cache 组成。s3c2440 芯片集成了大量的功能单元。 我们选择在此 mp3 播放器上运行 arm-linux 操作系统。嵌入式 linux 系统从软件角度 来可以分为 5 个层次: (1) 引导加载程序。包括固化在固件(firmware)中的启动代码(可选)和 bootloader 两大 部分。 (2) 内核(linux2.6.29.4) 。特定于具体硬件的定制内核以及控制内核引导系统的参数。 (3) 文件系统(initramfs) 。 (4) uda1341 声卡驱动程序。 (5) 用户应用程序。特定于用户的应用程序。对于本系统来说就是播放程序。 播放 mp3 的软件我们

7、选用 mad(mpegaudiodecoder),mad 是一个高品质的 mpeg 音频解码软件,能够输出 24-bit 的音频,完全是定点计算,非常适合没有浮点支持的平台上 使用。它现在支持 mpeg-1 和 mpeg-2 扩展到低频采样的部分,以及实际的 mpeg-2.5 格式。 所以三个音频层layeri,layer,和 layer(也就是 mp3)被完全实现。mad 还不支持 mpeg-2 多波段音频,并且现在还不支持 aac(advancedaudiocompresion)。mad 具有以下 特点:24 位的 pcm(pulsecodemodulation)输出;100%的定点(整数

8、)计算;基于 iso/iec 标准的 全新实现。在 gpl 协议下可用 mad 提供完全 24 位的 pcm 输出,所以使用 mad 的应用程 序能够产生高品质的音频。即使输出设备仅支持 16 位 pcm,应用程序也能够利用额外的分 辨率来增加动态音频的范围。mad 运用整数运算而不是浮点运算,这使得它能够很好地适 应没有浮点处理单元的体系结构。所有德计算都是由 32 位定点整数表示执行的。对于我们 的 mp3 而言,想要运行 mad,必须进行交叉编译,生成 arm 体系结构的可执行代码,要进行 交叉编译,我们要编写为交叉编译准备的配置脚本,然运行配置脚本,最后交叉编译,然后下载 5 到板子上

9、就可以运行了。 3.2 功能功能 mp3 播放音乐时首先将 mp3 歌曲文件从内存中取出并读取存储器上的信号送到解码 芯片对信号进行解码,然后通过数模转换器(dac)将解出来的数字信号转换成模拟信号, 再把转换后的模拟音频信号放大、经低通滤波后到耳机输出口,最后输出就是我们所听到 的音乐了。 3.3 性能性能 mp3 为了取得较好的压缩效果而采用了相对复杂的技术,而且宽带音频信号的取样率 较高(一般为 44.1khz 以上) ,所以编解码的运算量和 mp3 数据量都相当庞大 。mpeg layeriii 解码算法在 s3c2440 上验证通过并获得较好的效果,在通过优化后可流畅播放。 3.4

10、输人项输人项 用户在开发板上按下不同的按键,应用程序作出不同的响应。 按键 1:播放 按键 2:暂停 按键 3:继续 按键 4:下一首 按键 5:上一首 3.5 输出项输出项 该程序在启动后显示当前目录的音乐列表,同时开始播放音乐,显示音乐相关信息。 按下按键后,显示按键的状态并执行相应的功能。 3.6 算法算法 本程序无任何算法。 6 3.7 流程逻辑流程逻辑 操作系统加载完成后,处于监听状态,在用户选择完需要完成的动作后,由操作系统 调用相关的方法来实现其功能。 3.8 接口接口 7 3.9 存储分配存储分配 本程序采用随机存储分配。 3.10 注释设计注释设计 1. 加在模块首部的注释是以该模块的功能来命名的 2. 加在各分枝点处的注释是以各分枝点的条件来命名的 3.11 限制条件限制条件 mp3 播放器的主芯片还无法实现 txt 文件的转化功能,因此绝大多数 mp3 播放器的 tts 功能是一种软性功能,txt 到 mp3 之间的转换是在电脑内通过相应的软件来实现的; 以致于各个品牌不能够做到相互兼容。 3.12 测试计划测试计划 1. 运行“./mp3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论