学位论文-—2015年基于atmega16的mp3设计与实现.doc
《学位论文-—2015年基于atmega16的mp3设计与实现.doc》由会员分享,可在线阅读,更多相关《学位论文-—2015年基于atmega16的mp3设计与实现.doc(52页珍藏版)》请在咨信网上搜索。
1、哈尔滨工业大学基于ATmega16的MP3设计与实现摘要本课题实现了基于ATmega16的MP3设计与实现。论文通过自顶向下的方法从硬件到软件深入分析系统的需求,介绍了实现系统的总体规划,并分别阐述各模块的实现细节CH375通过CH375子程序库存取U盘并智能读取音频文件(MP3、WMA格式等)的方法、VS1003音频解码程序的方法、显示屏显示音频文件歌曲名等信息的方法以及通过按键控制播放曲目和音量的方法。U盘中的音频文件智能识别,存放音频路径到固定文件,并可以根据给定偏移量读取,最后声音的播放通过扬声器和耳机进行,基本实现了音乐播放器智能播放U盘中所有音乐的功能,并能根据按键控制歌曲和音量。
2、关键字: ATmega16;MP3播放器;CH375U盘读写;VS1003;哈尔滨工业大学Software Design of Music Player Based on ATmega16 MCUAbstractThis topic has realized based on ATmega16 MP3 design and implementation.Papers from hardware to software by using the method of top-down analysis the demand of the system, this paper introduces
3、the implementation system of planning, and expounds the implementation details of the various modules respectively - CH375 through CH375 subroutine library access U disk and intelligent reading the audio file (MP3, WMA format, etc.) method, methods of VS1003 audio decoding procedures, screen display
4、 information such as audio files songs name method, and through the button control playlists and volume method.U dish in the audio file intelligent identification, store the audio path to the fixed files, and can be read according to the given offset, the last sound broadcast through the speakers an
5、d headphones, the music player has been basically achieved intelligent play the function of the usb drive all music, and can according to the songs and the volume button control.Key words: ATmega16;MP3player.CH375U plate, speaking, reading and writing;VS1003;目 录摘要IAbstractII第一章 绪论11.1 应用背景与意义11.1.1
6、背景11.1.2 意义1第二章 理论分析与方法论证32.1 理论分析32.1.1 ATmega16开发板和下载器32.1.2 MP3解码芯片42.1.3 USB总线设备接口芯片52.1.4 存储介质52.1.5 液晶显示屏62.1.6 控制设备62.2 方法论6第三章 软件开发平台73.1 编译器的选择73.2 Atmel Studio 6简介73.3 下载器软件工具8第四章 系统设计104.1 硬件系统总体设计方案104.2 ATmega16处理器介绍104.3 ATmega16与外部芯片的连接114.3.1 ATmega16与VS1003的连接114.3.2 ATmega16与CH375b
7、的连接124.3.3 ATmega16与LCD12864的连接134.3.4ATmega16与按键的连接14第五章 系统软件设计165.1 需求分析165.1.1 数据流图165.1.2 数据字典195.2 软件总体设计215.2.1 结构化总体设计215.2.2 软件总体结构图的构建215.3 软件详细设计225.3.1 CH375管理模块225.3.2 VS1003管理模块255.3.3 LCD12864管理模块285.3.4 保存U盘所有音频文件路径名模块295.3.5按指定条件读取新生成文件模块315.3.6 MP3播放模块315.3.7液晶显示模块325.3.8按键处理模块335.3
8、.9主模块335.4 系统测试345.4.1 LCD12864显示模块测试345.4.2 CH375读写模块测试355.4.3 VS1003播放模块测试375.4.4 按键控制模块测试375.4.5 CH375读写模块和VS1003播放模块联合测试375.4.6 综合测试37结论39参考文献40致谢41外文原文42中文翻译46哈尔滨工业大学第一章 绪论1.1 应用背景与意义1.1.1 背景1998年韩国世韩(SEAHAN)推出了世界上第一台MP3MPManF10,在世韩为人们带来惊喜之后,美国的美国的帝盟(Diamond)公司挑头,于1998年底推出了Rio PMP300,这是第一个让全世界都
9、印象深刻的MP3。MP3(MPEG Audio Layer 3)是采用国际标准MPEG(Moving Pictures Experts Group,动态图象专家组)中的第三层音频压缩模式,对声音信号进行压缩的一种格式。MPEG声音压缩算法是一种通用的声音编码技术,它对音源的性质没有作任何假设,而是利用人耳的听觉特性对声音进行压缩。MPEG音频层根据压缩质量和编码复杂程度划分为三层,即Layer1、Layer2、Layer3,且分别对应MP1、MP2、MP3这三种声音文件,并根据不同的用途,使用不同层次的编码。MPEG音频编码的层次越高,编码器越复杂,压缩率也越高,MP1和MP2的压缩率分别为4
10、:1和6:1-8:1,而MP3的压缩率则高达10:1-12:1。也就是说,一分钟CD音质的音乐,未经压缩需要10MB的存储空间,而经过MP3压缩编码后只有1MB左右。跨入21世纪,MP3的高速发展使人们不再满足于闪存那以MB为单位的容量。2000年1月,音频硬件领域的老大哥创新推出了世界第一台2.5寸硬盘MP3NOMAD Jukebox,它采用了富士通6.4GB的2.5英寸硬盘作为存储介质,可以存储相当于100多张CD的MP3音乐,容量远远超过了当时的闪存MP3,不过体积也非常惊人,竟比一般的CD随身听还要大,其外形也跟CD随身听非常相似。虽然采用硬盘介质,但为了保证在运动时音乐能流畅地进行播
11、放,创新为其设计了可支撑5分钟的8MB防震缓存,这样即使在外出及移动的条件下也不会出现音乐跳轨现象。当日历翻到2014年这一页的时候,MP3随身听已经经历了数年的发展,而随身听市场的竞争亦趋于白热化,几乎每个星期甚至每天都会有新品MP3的推出,其发展的速度实在惊人!但一体化的设计导致存储容量固定,如果想下载更多的歌曲还得重新购买新的产品,造成了重大的浪费,另一方面,一体化又限制了MP3播放器在其他领域的应用,比如在一些固定场所使用MP3(非便携式),不方面拆卸。于是,将存储器和播放器分离成为MP3的另一个发展方向。1.1.2 意义基于ATmega16的音乐播放器应用的方面特别广,不仅便携简单,
12、而且在一些特殊环境,如车载MP3,浴室MP3,这些不易移动的产所有很广泛的用途,别且可以作为很多系统的辅助功能,如智能家具,智能手机的一个功能模块。本论文设计的MP3在于播放器与存储器相分离的思想,U盘在市场上很容易买到,支持常用的文件系统FAT12,FAT16以及FAT32,并且支持容量达100G,只要手上有U盘,而且有MP3等音频格式的文件,那么就可以使用本系统所提供的USB接口,直接插上去就可以播放音乐,同时,通过显示屏可以知道当前播放的歌曲,还可以通过按键直接控制音量和歌曲,比起过去用flash保存的音乐要方便的多。 最后,对我们大学生而言,提高了解决问题的能力,增强了动手能力,熟练了
13、一些常见电子芯片的使用。哈尔滨工业大学第二章 理论分析与方法论证2.1 理论分析针对MP3音乐播放系统,要选择合适核心控制芯片和外部芯片来配合实现,因为本课题要求基于ATmega16的控制芯片,所以核心控制芯片选择ATmega16,下面分别介绍芯片选用原则和最终芯片和模块的确定。2.1.1 ATmega16开发板和下载器控制芯片已经确定为ATmega16,那么如何将程序下载到单片机中?一种方法就是自己设计基于Atmega16的最小系统和必要的外围电路;第二种方法就是利用已经设计好的开发板,用现成的工具,直接下载到单片机,而且现在的开发板都会为用户提供外围接口,使用户能够根据自己的需求去开发其它
14、系统。第一种方法开发周期较长,所以采用第二种方法,选择用现成的开发板。本课题选用由天翔电子公司设计的AVR开发板,如图2-1,下载器使用由轩微科技出品的USBISP,不用JTAG的的原因是本系统占用的I/O会比较多,而JTAG会占用PC口,影响实验结果,USBISP有个缺点是不具备仿真功能,如图2-2。图 2-1 AVR 开发板图 2-2 USBISP下载器2.1.2 MP3解码芯片首先联想到能否用ATmega16单片机来直接对MP3音频文件直接解码?答案是不行的,因为对单片机而言,数字处理速度和资源都远远达不到,所以只能简介通过外部解码芯片来实现解码,并播放歌曲。MP3解码芯片常见的有VS1
15、00X系列、SAA775X系列、STA01X系列等;SAA775X系列是MP3播放器解码芯片组功能最全,效果最好的芯片,但价格较贵;STA01X系列需要外加DAC,使用起来多有不便;VS100X系列自带DAC输出功能,而且能解码的音频格式也比较多,同时价格合理。经过比较,选用VS1003作为解码芯片,该芯片支持MP3、WMA、WAV、MIDI、等格式的解码,而且自带DAC输出;同时还可以调节音量、高低音等,更重要的是它还具有MIC功能,如需要还可以实现录音功能。因此,选用VS1003作为本课题音频解码芯片。如图2-3为VLSI公司生产的VS1003芯片图,2-4为由天翔电子公司设计的接入外围电
16、路只提供与控制芯片接口的MP3播放器。 图 2-3 VS1003图 2-4 MP3播放器(模块)2.1.3 USB总线设备接口芯片USB总线设备接口设备较多较杂,在本课题中选用有南京沁恒公司生产的CH375b芯片,它是全速USB设备接口,兼容USBV2.0,即插即用,外围器件需要晶体电容,支持HOST主机方式和DEVICE设备方式。在本地端,CH375b具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU等控制器的系统总线上。在USB主机方式下,CH375b还提供了串行通信方式,通过串行输入、串行输出和中断输出与单片机/DSP/MCU等相连接。CH375b的
17、USB主机方式支持各种常用的USB全速设备,外部单片机/DSP/MCU可以通过CH375b按照相应的USB协议与USB设备通信。单片机可以通过CH375b读写U盘中的数据,CH375提供了U盘文件级子程序库单片机可以直接调用子程序读写U 盘中的文件数据,硬件上只需要在原单片机系统中增加一个CH375芯片,综合成本较低。CH375的U 盘文件级子程序库支持常用的FAT12、FAT16 和FAT32 文件系统,支持容量高达100GB 的U 盘。如图2-5为CH375b芯片,图2-6为有天翔电子公司设计的接入外围电路只提供与控制芯片接口的CH375U盘模块。 图 2-5 CH375B图 2-6 CH
18、375U盘模块2.1.4 存储介质MP3播放器需要大容量的存储器来存放歌曲,可以选择Flash芯片存储、SD卡、U盘等。如果选用Flash,则整个系统需要较多的I/O端口来读取,更重要的一点,也是本次课题要解决的一个问题,那就是整个系统的容量就被固定了,扩容存在空难;而U盘和SD卡都是不错的选择,并且U盘和SD卡均容易购买的到,同时价格较为低廉,所以,存储部分选用U盘读取来实现。2.1.5 液晶显示屏为了兼顾成本,选择普通单色液晶显示屏,常用的有LCD1602和LCD12864,在本课题中选择LCD12864,因为LCD12864本身带有字库的功能,系统不需要添加外部字库文件,就可以实现曲目等
19、有效信息汉字显示;而LCD1602只有常见的ASCII符号,要想显示中文必须添加外部字库文件。如图2-7为液晶LCD12864。图 2-7 LCD128642.1.6 控制设备控制设备选用键盘,但是键盘又分为编码键盘和非编码键盘,键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或键值的称为编码键盘,如计算机键盘,而靠软件编程来识别的称为非编码键盘;由于成本低廉和结构简单考虑,在本次课题中选择非编码键盘。2.2 方法论MP3播放器系统以ATmega16为控制核心,不仅要管理USB总线的通用接口芯片CH375b、MP3解码芯片VS1003b、LCD12864液晶显示屏和按键的处理,而且还管
20、理USB存储设备中的文件系统,查找文件,写文件等等。存储器里的媒体文件首先要查询,查询到的文件确定是音频文件(MP3等)后,把MP3路径名写到固定文件中,将所有的音频文件路径名写到固定文件中后,按照文件偏移,读取固定文件中的音频文件路径名,根据路径名,读取音频文件到MCU的RAM中,然后又被送到解码芯片中,解码后的音频数据被还原成模拟音频,再由扬声器传出。由于ATmega16本身不支持USB接口功能,所以MCU无法直接与U盘完成数据传输的功能,存储设备需要通过自身的接口与CH375b相接。其它芯片是通过普通I/O端口连接的。第三章 软件开发平台在上一章中介绍了硬件设备的选择,那么我们知道,只有
21、硬件而没有软件的机器就是一个没有灵魂的电人,所以,在这一章中介绍软件的开发平台,使没有灵魂的电人让它有自己的思想。3.1 编译器的选择我们知道,机器只认识机器代码,所以要将我们所编写的程序翻译成二进制机器码必须要使用编译器。由于单片机内存和程序存储空间非常有限,好的编译器可以优化源代码,使程序的运行消耗资源小、效率提高,所以选择一个性能优越的编译器是必须的。AVR编译器非常多,常见的有ICCAVR,GCCAVR,IAR AVR等;ICCAVR编译器是市面上教科书使用它作为AVR例程的较多,集成代码生成向导,虽然它的各方面性能均不是特别突出,但使用较为方便,一般作为教学方面的应用;GCCAVR,
22、GCC是Linux的唯一开发语言,GCC编译器优化程度可以说是目前世界上民用软件中做的最好的,另外,它有一个非常大的有点,免费!在国外,使用它的人几乎是最多的但,相对而言,它的缺点是操作比较麻烦;IAR实际上在国外比较多的人使用,但它的价格较为昂贵,所以,中国大陆内,使用它的开发人员比较少,只有习惯用IAR的工程师才会去使用它。综上分析,使用GCCAVR是非常不错的选择。3.2 Atmel Studio 6简介Atmel公司在2012年推出广受欢迎的集成开发环境(IDE)的最新版ATmel Studio 6,支持基于Atmel32位ARM Cortex-M系列与Atmel 8/32位AVR系列
23、的处理器(MCU)。Atmel Studio 6是免费的IDE,提供专业质量的开发工具,同时配有Atmel软件框架,因而显著降低了创建新设计的成本。利用Atmel软件框架,设计人员可以获得经验证的大型免费源代码库-包括近1000个设计样例。利用此IDE更快的产品开发周期,配合更低的片上闪存成本与速度更快的MCU,正在推动更多的设计工程师以C和C+语言编写代码,而不是使用汇编代码。Atmel Studio 6使得工程师能够轻易编写、构建和调试其C/C+和汇编代码,还能够以无缝方式集成具备辅助代码编写功能的编辑器、用于快速创建新项目的向导工具、一个GNU C/C+编译器、一个功能强大的仿真器,以及
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学位 论文 2015 基于 atmega16 mp3 设计 实现
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【胜****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【胜****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。