已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要随着计算机技术,微电子技术和数字信号处理技术的迅速发展,各种消费类电子产品朝着集成化和小型化发展。特别是随着网络多媒体技术的普及、数字音视频技术的快速发展,以MP3为代表的消费类电子产品广泛的应用在我们的生活中,数字音频技术得到了长足的发展。MP3全称是动态影像专家压缩标准音频层面3(MOVINGPICTUREEXPERTSGROUPAUDIOLAYERIII)。是当今较流行的一种数字音频编码和有损压缩格式,它设计用来大幅度地降低音频数据量,而对于大多数用户来说重放的音质与最初的不压缩音频相比没有明显的下降。它是在1991年由位于德国埃尔朗根的研究组织FRAUNHOFERGESELLSCHAFT的一组工程师发明和标准化的。MP3就是一种音频压缩技术,由于这种压缩方式的全称叫MPEGAUDIOLAYER3,所以人们把它简称为MP3。MP3是利用MPEGAUDIOLAYER3的技术,将音乐以110甚至112的压缩率,压缩成容量较小的FILE。能够在音质丢失很小的情况下把文件压缩到更小的程度。而且还非常好的保持了原来的音质。本课题以基于单片机的MP3数字音频系统的软件设计与实现过程为主要内容,阐述了其相关技术和具体实现流程,其中重点分析了FAT32文件系统在单片机上的移植。整个系统利用STC公司的单片机12C5A60S2作为系统的中央处理器,采用VLSI公司的VS1003解码芯片作为MP3解码芯片,SD卡作为系统的存储器,LPH7366显示屏作为系统的显示屏。经过实验测试证明,采用单片机实现的MP3播放系统切实可行,且具有很高的稳定性、实用性和扩展性。关键词12C5A60S2MP3FAT32VS1003SD卡目录1前言111设计指标1111设计要求12文献综述121软件介绍1211PROTUES仿真功能介绍1212KEILVISIONIDE仿真功能介绍222STC12C5A602S523VS1003MP3/WMA音频解码器523LPH7366LCD模块624SD存储卡73系统硬件设计831系统总体硬件设计832各模块硬件设计9321显示模块硬件设计9322音频解码模块设计9323SD卡模块设计1033系统原理图114系统设计1241模块介绍12411主程序模块12412显示程序12413SD卡程序14414音频解码程序15415ZNFAT文件系统程序1642程序流程图17421主程序流程图175测试分析与计算1851SD卡兼容性测试1852MP3兼容性测试196系统的安装与调试207创新与特点208总结20致谢22参考文献22ABSTRACT24附录1主程序附录2实物图毕业设计成绩评定表11前言MP3全称是动态影像专家压缩标准音频层面3(MOVINGPICTUREEXPERTSGROUPAUDIOLAYERIII)。是当今较流行的一种数字音频编码和有损压缩格式,它设计用来大幅度地降低音频数据量,而对于大多数用户来说重放的音质与最初的不压缩音频相比没有明显的下降。MP3是利用MPEGAUDIOLAYER3的技术,将音乐以110甚至112的压缩率,压缩成容量较小的文件,换句话说,能够在音质丢失很小的情况下把文件压缩到更小的程度,而且还非常好的保持了原来的音质。网络上可以找到大量的MP3资源,不少手机,VCDPLAYER、DVDPLAYER、PDA都可以播放MP3文件。现在市场上普遍流行的MP3播放器主要以硬核处理器为核心,利用数字信号处理器DSP来完成处理传输和解码MP3文件的任务。相对于用软核处理器,硬核处理器具有速度快,价格便宜和开发难度低优点。在如今MP3播放器竞争如此激烈的市场,价格和开发时间成为了影响产品竞争力的重要因素。本课题以单片机为控制单元,以最低的成本满足MP3文件播放,控制和显示的功能。以SD卡作为存储器,最大支持2GB的SD卡,能存储大约500首MP3,能满足大部分用户的要求。供电方面采用5V直流电源供电,相当的便捷。本课题的实现,为低端的MP3播放器系统设计提供参考,对于MP3播放器的设计有着积极的意义。11设计指标111设计要求(1)能播放指定目录的MP3歌曲;(2)能上一曲下一曲;(3)能显示英文歌曲名;(4)能显示SD卡的信息;(5)能在开发板上进行串口的调试功能。2文献综述21软件介绍211PROTUES仿真功能介绍PROTUES是目前最好的模拟单片机外围器件的工具,它可以仿真51系列AVR、PIC等常用的MCU及其外围电路如LCD、RAM、ROM、键盘、电机、LED、AD/DA,部分SPI器件,部分I2C器件。2当然,软件仿真精度是理想化的,而且不可能所有的器件都找得到相应的仿真模型,并未考虑到实际存在的干扰,可是用其对程序进行仿真可靠性还是很高的,并能减少调试时对单机的烧写,保证其复用次数。PROTEUS与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。212KEILVISIONIDE仿真功能介绍KEILVISIONIDE是一个标准的WINDOWS应用程序,集成了C51编译器、A51汇编器、L51连接器、实时操作系统、项目管理器及调试器等,可以完成编辑、编译、链接、调试及仿真等整个开发流程,可以用IDE编译C或汇编源文件。VISION采用DSCOPE作调试器,该调试器支持MON51及系统模拟两种方式,高度功能强大。DSCOPE51是一个源级调试器和模拟器,它可以调试由C51编译器A51汇编器、PL/M51编译器及ASM51汇编器产生的程序。DSCOPE51可以通过MON51接目标板,使用KEILC51MON51型仿真器进行硬件实时仿真;DSCOPE51也可以进行软件模拟仿真,不需要购买其它的附件,并且其功能也很强大,可模拟CPU及其外围器件,如内部串口、外部I/O及定时器等,能对嵌入式软件功能进行有效测试。在软件模拟仿真过程涉及硬件响应时,KEIL提供了两种办法解决。一种解决的方法是,利用KIEL提供的调试函数实现。调试函数可以模拟外部设备产生的给CPU的模拟和脉冲输入信号,还可以产生外部中断,周期性更新模拟输入,将串行数据送入片内串行口等,解决了外部信号的输入问题。另一种解决的方法是,利用KEIL提供的接口AGSIADVANCEDGENERICSIMULATORINTERFACE,用VC编写动态链接库DLL,仿真单片机外围设备,从而解决外部信号的输入问题及界面问题。KEIL提供的SDK是相当于KEILVISION仿真环境的一个插件,以DLL的形式提供在纯软件仿真模式下,仿真A/D芯片、仿真LCD显示板及键盘等输入、输出功能,以窗口的形式体现外围设备和单片机之间的交互状态。3方案比较以及硬件介绍3311解码模块方案比较方案一使用STC12C2052AD单片机读取WAV格式音乐,利用PWM功能,把收到的数据合成声波,传输给外部音响播放。以下是原理图图1单片机PWM解码电路方案二使用专门的数字音频解码芯片VS1003对MP3文件进行硬件解码。VS1003可以解码多种音频文件格式,而且支持较高比特率的音乐,音质好。经比较可知,方案一只能进行软件解码,播放格式局限,而方案二支持硬件解码,音质好,集成度高,编程较为简单等优点,所以选择VS1003作为解码芯片。312主控模块方案比较方案一使用STC12C2052AD单片机,此单片机只一个时钟周期,速度快,而且有两路的PWM,满足解码功能,原理图如下图所示4图2STC12C2052AD单片机方案二使用STC12C5A602S单片机,此单片机存储空间大,运行速度快,I/O口有四种工作模式,引脚图如下图3STC12C5A602S单片机综合比较,STC12C5A602S引脚丰富,带负载能力强,而且价格便宜是作为数字解码芯片的最佳选择。313存储单元方案比较方案一使用U盘作为储存单元。需要使用到PB375A芯片。此芯片是一颗集成了USBHOST、FAT文件系统及读写U盘固件的芯片,外围器件很少,该芯片支持FAT16和FAT32两种文件系统。5方案二使用SD卡作为存储单元。SD价格便宜,而且速度较快,单片机读取SD信息不需外加主控芯片。综合比较,方案二有着低成本,利于编程等一些列的优点,是用于作为存储单元的最佳选择。32硬件介绍321STC12C5A602SSTC12C5A602S是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的第一代8051单片机,指令代码完全兼容传统8051,但速度快812倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S),针对电机控制,强抗干扰场合。主要性能参数增强型8051CPU,1T,单时钟/机器周期,指令代码完全兼容传统单片机工作电压5V33V工作频率范围035MHZ,相当于普通8051的0420MHZ用户应用程序空间64K片上集成1280字节RAM通用I/O口36个,复位后准双向口/弱上拉(普通8051传统I/O口)可设置成四种模式准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏每个I/O口驱动能力均可达到20MA,但整个芯片最大不要超过55MA有EEPROM功能看门狗内部集成MAX810专用复位电路共4个16位定时器外部中断I/O口6路PWM(2路)/PCA8路高速10位A/D转换通用全双工异步串行口(UART)322VS1003MP3/WMA音频解码器VS1003是一个单片MP3/WMA/MIDI音频解码器和ADPCM编码器。它包含一个高性能,自主产权的低功耗DSP处理器核VS_DSP4,工作数据存储器,为用户应用提6供5KB的指令RAM和05KB的数据RAM。串行的控制和数据接口,4个常规用途的I/O口,一个UART,也有一个高品质可变采样率的ADC和立体声DAC,还有一个耳机放大器和地线缓冲器。VS1003通过一个串行接口来接收输入的比特流,它可以作为一个系统的从机。输入的比特流被解码,然后通过一个数字音量控制器到达一个18位过采样多位DAC。通过串行总线控制解码器。除了基本的解码,在用户RAM中它还可以做其他特殊应用,例如DSP音效处理。VS1003特性能解码MPEG1和MPEG2音频层III(CBRVBRABR);WMA40/41/7/8/95384KBPS所有流文件;WAVPCMIMAADPCM产生MIDI/SPMIDI文件。对话筒输入或线路输入的音频信号进行IMAADPCM编码支持MP3和WAV流高低音控制单时钟操作1213MHZ内部PLL锁相环时钟倍频器低功耗内含高性能片上立体声数模转换器,两声道间无相位差内含能驱动30欧负载的耳机驱动器模拟,数字,I/O单独供电为用户代码和数据准备的55KB片上RAM串行的控制,数据接口可被用作微处理器的从机特殊应用的SPIFLASH引导供调试用途的UART接口新功能可以通过软件和4GPIO添加323LPH7366LCD模块LPH7366是NOKIA公司生产的可用于其5110、6150、6100等系列移动电话的液晶显示模块,国内厂家也生产有类似的兼容产品。该产品除应用于移动电话外,也可广泛应用于各类便携式设备的显示系统。与其他类型的产品相比,该模块具有以下特点84X84的点阵LCD,可以显示4行汉字。7采用串行接口与主处理器通信,接口信号线大幅度减少,包括电源和地在内的信号线仅有9条。支持多种串行通信协议,传输速率高达4MBPS,个全速写入显示数据,无等待时间。LCD控制器/驱动器芯片以绑定到LCD晶片上,模块的体积很小。采用低电压供电,正常显示时的工作电流在200UA以下,且具有掉电模式。324SD存储卡SD存储卡(SECUREDIGITALMEMORYCARD)是特别为符合新出现的音频和视频消费电子设备的安全性、容量、性能和环境等要湂而设计的一种存储卡。SD存储卡包含符合SDMI标准安全性的版权保护机制,速度更快而且存储容量更大。SD存储卡的安全系统使用双方认证和“新的密码算法”技术,防止卡的内容被非法使用。它还提供了一种无安全性的访问方法访问用户自己的内容。SD存储卡的通信基于一个高级的9引脚接口(时钟、命令、4条数据线和3条电源线),可以在最高25MHZ频率和低电压范围内工作。SD卡系统特性用于便携式和固定应用。电压范围SD存储卡基本通讯(CMD0、CMD15、CMD55、ACMD41)2036V。其他命令和存储器访问2736V。用于只读卡或读写卡。时钟频率025MHZ。读写速率高达10MB/S(用4条并行数据线)。在有10张卡时仍能达到最高数据速率。纠正存储区的错误。在读操作的过程中拔出卡不会破坏卡的内容。向前兼容多媒体卡。版权保护机制符合SDMI标准的最高安全性。卡有密码保护功能(可选)。用机械开关实现的写保护特性。内嵌的写保护特性(游久和暂时)。8检测卡(插入拔出)。应用的专用命令。令人满意的擦除机制。通信信道的协议幞性SD存储卡的厚度可以是为21MM(普通)和14MM(薄SD存储卡)32574LS245单元245为三态输出的八组总线收发器,用来驱动LED或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。74LS245还具有双向三态功能,既可以输出,也可以输入数据。当8051单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器。当片选端/CE低电平有效时,DIR“0”,信号由B向A传输(接收)。DIR“1”,信号由A向B传输;(发送)当CE为高电平时,A、B均为高阻态。326AMS1117单元AMS1117系列稳压器有可调版与多种固定电压版,设计用于提供1A输出电流且工作压差可低至1V。在最大输出电流时,AMS1117器件的压差保证最大不超过13V,并随负载电流的减小而逐渐降低。AMS1117的片上微调把基准电压调整到15的误差以内,而且电流限制也得到了调整,以尽量减少因稳压器和电源电路超载而造成的压力。高效线性稳压器后置稳压器,用于交换式电源5V至33V线性稳压器电池充电器有源SCSI终端笔记本电源管理电池供电设备。4系统硬件设计41系统总体硬件设计整个系统以STC12C5A60S2为控制核心,通过SPI协议与显示模块,音频解码模块,SD卡读写模块进行数据交换,其框架图如图1所示。9STC12C5A60S2显示模块LPH7366音频解码模块VS1003SD卡读写模块SPI协议SPI协议SPI协议图4系统总体框架图42各模块硬件设计421显示模块硬件设计系统的显示采用了LPH7366显示模块。该模块采用4线SPI串行通信协议,节省了单片机的I/O引脚资源。其原理图如图2所示。图5显示模块原理图422音频解码模块设计10系统的音频解码模块是用的是VLSI公司的VS1003芯片。VS1003芯片集成了的低功耗DSP处理器核,串行的控制和数据接口和,4个常规用途的I/O口,一个UART,也有一个高品质可变采样率的ADC和立体声DAC,还有一个耳机放大器和地线缓冲器。其原理图如图3所示。图6音频处理模块原理图423SD卡模块设计SD卡(SECUREDIGITALMEMORYCARD)中文翻译为安全数码卡,是一种基于半导体快闪记忆器的新一代记忆设备,它被广泛地于便携式装置上使用,例如数码相机、个人数码助理PDA和多媒体播放器等。SD卡在24MM32MM21MM的体积内结合了SANDISK快闪记忆卡控制与MLC(MULTILEVELCELL)技术和TOSHIBA(东芝)016U及013U的NAND技术,通过9针的接口界面与专门的驱动器相连接,不需要额外的电源来保持其上记忆的信息。而且它是一体化固体介质,没有任何移动部分,所以不用担心机械运动的损坏。SD接口除了保留MMC的7针外,还在两边加多了2针,作为数据线。采用了NAND型FLASHMEMORY,基本上和SMARTMEDIA的一样,平均数据传输率能达到2MB/S。其原理图如图4所示。11图7SD卡模块原理图43系统原理图图8系统原理图12图9系统PCB图5系统设计51模块介绍本计MP3系统的软件设计分为以下几个模块511主程序模块在主程序模块中,需要完成对串口,VS1003芯片,LPH7366LCD液晶模块和SD卡模块进行初始化。然后读取SD卡的各种信息,包括分区的开始磁头,开始柱面与扇区,分区类型,分区的大小等信息,进而初始化FAT32文件系统。初始化完成后,播放界面。系统将自动搜寻指定目录下的全部MP3歌曲并按顺序播放,直至播放完SD内存储的所有音乐。512显示程序显示程序用于系统UI实事更新。本系统使用的液晶模块采用SPI协议与单片机进行数据交换。其时序图如图10,图11,图12,图13所示。13图10显示模块SPI传送一个字节图11显示模块SPI传送多个字节图12显示模块SPI复位功能(SCE)14图13显示模块SPI复位功能(RES)513SD卡程序SD卡程序用于MP3文件的读取。SD卡与单片机采用SPI协议进行数据交换。其时序图如图10,图11,图12,图13所示。图14SD卡SPI初始化15图15SD卡SPI复位图16SD卡SPI写数据图17SD卡SPI读数据514音频解码程序音频解码程序用于将MP3数据送入VS1003解码芯片进行解码。VS1003解码芯片通过SPI协议与单片机交换数据。VS1003的寄存器用下列顺序读出,如图14所示。首先将XCS片选拉低以选择芯片,再通过SI线发送8位的读操作码(READOPCODE0X03)和8位的地址。在地址被VS1003芯片读入后,SI上的数据将被忽略。相应地址的16位数据将从SO线移出。当数据全被移出后XCS需拉高。16图18VS1003SPI读数据VS1003的寄存器须按以下的顺序写入,见图18。首先将XCS片选拉低以选择芯片,再通过SI线发送8位的读操作码(WRITEOPCODE0X02)和8位的地址。随即发送16位的数据字。当最后一位被移入且最后的时钟已发送,必须将XCS拉高以完成写操作。图19VS1003SPI写数据515ZNFAT文件系统程序FAT32是WINDOWS系统硬盘分区格式的一种,如今广泛应用于各种存储卡。相对于FAT16,这种格式采用32位的文件分配表,使其对磁盘的管理能力大大增强,突破了FAT16对每一个分区的容量只有2GB的限制。而且,FAT32具有一个最大的优点17在一个不超过8GB的分区中,FAT32分区格式的每个簇容量都固定为4KB,与FAT16相比,可以大大地减少磁盘的浪费,提高磁盘利用率。在存储卡中,一个文件存储的地址不是连续的,所以单片机要从存储卡中把一个文件完整的读取出来,需要内嵌一个FAT32的程序。本系统使用的是ZNFAT文件系统,是一款国内开源的单片机FAT32文件系统。此文件系统只需要900字节的RAM资源,其中512字节的RAM用于数据缓冲。ZNFAT文件系统实现了以下基本功能文件系统初始化,打开文件,读取数据,文件重命名,复制文件,创建文件,添加数据,创建目录,关闭文件,获取剩余容量,获取总容量。在本设计中,主要是用了ZNFAT的系统初始化,文件搜索,打开文件和读取文件这三个功能。52程序流程图521主程序流程图18主程序开始模块初始化ZNFAT初始化用户操作界面功能选择音乐播放系统设置界面音乐播放是否返回系统设置Y是否返回Y功能选择系统信息界面音量设置音量设置系统信息N是否返回是否返回图20主程序流程图6测试分析与计算61SD卡兼容性测试由于试验条件有限,只能使用现有的不同容量的SD卡进行测试。测试方法为将相同MP3放入SD卡进行播放。测试结果如表1所示。19表1SD卡兼容测试容量品牌能否播放256MKINGMAX能1GSANDISK能2GKINGSTON能4GKINGSTON不能8GKINGSTON不能通过表1的数据可以看出,此系统对各种品牌的SD卡兼容性很好。对于容量在2G以上的SDHC卡,本系统均不支持。62MP3兼容性测试选取一首MP3,使用音频处理软件GOLDWAVE将选定的MP3转换成不同的位速并放进SD卡进行播放测试。测试结果如表2所示。表2MP3兼容性测试位速能否播放播放效果24KBPS能流畅36KBPS能流畅44KBPS能流畅52KBPS能流畅64KBPS能流畅80KBPS能流畅96KBPS能流畅128KBPS能缓慢256KBPS不能N/A320KBPS不能N/A由表2可以看出,本系统能流畅播放96KBPS以下的MP3。原因是单片机的速度相比ARM还是有一定差距的。所以对于高位速MP3的播放效果比较差。207系统的安装与调试系统的安装与调试时本项目开发过程中最为复杂的一部分,要涉及的领域非常的广泛,包括串行LCD液晶显示器的结构、工作原理等相关知识、FAT32文件系统的相关知识、SD卡的工作原理、VS1003芯片的工作原理、单片机知识,基本电路原理。在一次次的调试当中不断改进,是对我的一次全方位的考验。本MP3播放系统采用了5V直流电源供电,满足MP3播放的基本功能。解码器方面选择了VS1003数字解码芯片,因为其操作简单,音效好,集成度高,而且价格便宜。在安装方面,主要时间放在了原理图以及PCB版的绘制方面,由于之前比较缺乏制板的经验,所以在这里用了较多的时间。而其他的模块都是现成的,所以安装方面都没遇到很大的问题。主要工作是绘制电路原理图以及PCB板的绘制,另外就是元器件的焊接。系统的调试,是这个设计的难点。ZNFAT的代码比较长,加上以前没有接触过文件系统,而ZMFAT是一个庞大的系统,代码相当多,所以熟悉整个ZNFAT文件系统占了整个设计相当长的时间。还有系统的人机界面,虽然简单,但是也花费了不少精力去完成。另外,为了使得系统显示功能更丰富,系统采用LPH7366LCD模块取代一般的并行LCD模块。除了节省单片机I/O引脚,LPH7366LCD模块还是点阵式的LCD,能做出更好的人机界面。液晶显示对程序编写的要求更复杂,在测试时,不同界面的切换过程中,LCD显示的内容总发生错乱。经过反复研究分析,发现是切换是没有对LCD进行清屏,而导致这种情况的出现,在优化程序后,问题得到了解决。8创新与特点1采用了STC12C5A602S单片机作为控制核心,相比市场上的MP3播放器,具有功耗低,价格便宜的优点,非常适合作为低端的MP3的控制单元。2采用SD卡作为存储器,可以任意更换存储卡,在MP3不使用的时候,可以把SD卡拔出作其他用途,而需要使用时只需插卡即可,相当方便。3扩展性强,通过增加USB或者TF等相关器件,可实现U盘、TF卡的播放,并可以直接连接电脑。9总结21本文介绍了基于单片机的MP3播放器的开发背景和应用前景,以及详细的介绍了系统的设计,包括方案及元器件的选择,系统开发的流程,硬件各部分单元电路的设计,软件设计与调试,以及测试结果的分析。本设计本着从大处着眼,从小处入手的原则,采用STC12C5A602S单片机作为控制核心,SD卡、LPH7366LCD液晶显示模块以及VS1003解码芯片实现了MP3播放的功能。系统充分发挥了单片机系统体积小,集成度高,功能强大的优势,以较简单的电路,通过对软件程序的编写优化,满足设计的要求。具有较高的智能化水平。经测试,本设计完全实现了题目的要求,性能稳定,对于96KBPS以下的MP3均能流畅播放。在使用中可以发现,本系统具备了结构简单,功耗低,成本低,操作简单,可扩展性强等特点,具有较高的应用价值,和很好的市场前景。但是本设计还存在值得改进的地方,考虑到用户大多的MP3都是中文文件名,系统应增加一个中文字库,支持中文文件名以及歌词的显示22致谢时间过得很快,当站在终点前回首昨天忙碌的自己时,发现全身心投入去做一件事时,是那么的充实和快乐。从毕业设计的选题开始,我就准备好认认真真对待我的毕业设计。从选择方案到焊接电路,从理论编写到动手实践,从白天到黑夜,从忘我到逐渐感觉到累的存在,从错误到正确其实,人生也是这样,从点点滴滴的汗水到辉煌的成就,也是经历汗水和泪水的洗礼。现在,毕业设计和论文都完成了,一路走来,是老师们和同学们的支持帮助,才让我走过每一个坎,在此,我要写下这感谢,作为对他们支持与帮助的回报。我要感谢,非常感谢我的导师邓小玲老师。他为人随和热情,治学严谨细心。老师就给予我们充分的指导,让学生对于毕业设计充满信心和希望。我要感谢同班的明同学。在整个毕业设计过程中,给了我很多的帮助。而我要感谢,感谢一路上有你们的支持和帮助,感谢母校华南农业大学,感谢工程学院,大学四年,风华正茂,而我们在这里学得一技之长,正是羽毛丰满要飞翔的时候。我感谢一路以来学校和学院的培养,感谢老师和同学的支持和帮助,感谢这里的一切,在将要走出母校时,告诉自己要以实际行动实现“明日华南农业大学以我为荣”的豪言壮志。23参考文献王为青,邱文勋200751单片机应用开发案例精选北京人民邮电出版社103109李学海,刘治山宋庆国200680C51上电复位和复位延时的分析单片机与嵌入式系统应用,1214李朝青2003单片机原理及接口技术(第3版)北京北京航空航天大学出版社112129131140194199陈爱文2008基于AT89C51单片机的多功能出租车计价器机电工程技术,113767106杨世品,陈林2007基于PROTEUS的单片机出租车计价器的设计微计算机息,232106108张培仁,孙占辉,张欣等2003基于C语言编程MCS51单片机原理与应用北京清华大学出版社罗政球2006单片机系统软件抗干扰方法电子制作,36364赵亮,候国锐2003单片机C语言编程与实例北京人民邮电出版社134155谭浩强2005C程序设计(第三版)北京清华大学出版社155202康华光,陈大钦1999电子技术基础(模拟部分)北京高等教育出版社6787康华光,邹寿彬2000电子技术基础(数字部分)北京高等教育出版社428452MORITAT,SATONOBUJANAPPROACHTOTHEINTELLIGENTVEHICLEIN1993IEEEINTELLGENTVEHICLESSYMPOSIUM,19934243DICKLLLANNSED,ETCTHESEEINGPASSENGERCAR“VAMORSP”PROE1994IEEESYMPOSIAONINTELLIGENTVEHICLESIEEEPRESSPISEATAWAY,1994,10568一7324THEDESIGNOFMP3PLAYERBASEONMCUHEWENLUECOLLEGEOFENGINEERING,SOUTHCHINAAGRICULTURALUNIVERSITY,GUANGZHOU516042,CHINA)ABSTRACTWITHCOMPUTERTECHNOLOGY,MICROELECTRONICTECHNOLOGYANDDIGITALSIGNALPROCESSINGTECHNOLOGY,THERAPIDDEVELOPMENTOFAVARIETYOFCONSUMERELECTRONICPRODUCTSTOWARDINTEGRATIONANDMINIATURIZATIONESPECIALLYWITHTHEPOPULARITYOFINTERNETMULTIMEDIATECHNOLOGY,DIGITALAUDIOANDVIDEOTECHNOLOGY,RAPIDDEVELOPMENT,TOMP3,REPRESENTEDAWIDERANGEOFCONSUMERELECTRONICPRODUCTSUSEDINOURLIVES,DIGITALAUDIOTECHNOLOGYHASMADEGREATDEVELOPMENTMP3ISSHORTMPEGAUDIOLAYER3,MPEGCOMPRESSIONFORMATISTHEMOVINGPICTUREEXPERTSGROUPMOTIONPICTUREEXPERTSGROUPVIDEOANDAUDIOONTHEDEVELOPMENTOFASETOFCRITERIA,INCLUDINGADOPTIONOFINTERNATIONALSTANDARDSMP3ISMPEGAUDIOCOMPRESSIONINTHETHIRDLAYERPATTERN,THESOUNDSIGNALCOMPRESSIONFORMATCD,SAMPLERATEFREQUENCYIS441MHZ,16BITS,THEAMOUNTOFDATATO14MBPS,WHILETHECORRESPONDINGAMOUNTOFDATAISONLY112KBPSMP3OR128KBPS,ISTHERAWDATAIN1/12THESUBJECTOFSCMBASEDMP3DIGITALAUDIOSYSTEMSOFTWAREDESIGNANDIMPLEMENTATIONOFTHEMAINCONTENT,DESCRIBESITSCONCRETEREALIZATIONOFRELATEDTECHNOLOGIESANDPROCESSES,WHICHANALYZEDTHEFAT32FILESYSTEMONTHETRANSPLANTINSCMTHEWHOLESYSTEMUSINGSTCSMICROCONTROLLER12C5A60S2ASTHESYSTEMCPU,USINGVLSISVS1003MP3DECODERCHIPASTHEDECODERCHIP,SDMEMORYCARDASASYSTEM,LPH7366DISPLAYSCREENASASYSTEMAFTEREXPERIMENTALTESTING,THEUSEOFMCUMP3PLAYBACKSYSTEMHASAHIGHSTABILITY,PRACTICALITYANDSCALABILITYKEYWORDS12C5A60S2MP3FAT32VS1003SDCARD25附录1主程序INCLUDE“REG51H“INCLUDE“SDH“/SD卡引脚定义和SD卡使用的涵数库INCLUDE“ZNFATH“/FAT32使用的结构体和使用的涵数库INCLUDE“UARTH“/单片机的所有有关串口的涵数INCLUDE“VS1003H“/MP3解码芯片的所有涵数INCLUDE“NOKIA_5110H“/NOKIA_5110函数库SBITKEY0P32SBITKEY1P33/程序说明此程序用于实现枚举播放。通过嵌入的FAT32实现对MP3文件的枚举及读取,读取的数据直接送到VS1003音频解码器,从而实现对根目录下的所有MP3文件的依次播放。在实验前请先确保SD卡为FAT32文件系统,并向SD卡的根目录中拷入了至少一个MP3文件此程序对低于128KBPS的MP3文件支持的很好,播放非常流畅,对于较高采样率的MP3文件,如192KBPS、320KBPS,则较为吃力,51单片机的速度毕竟有限。核心在于此程序中均采用IO模拟SPI的方法,因此SPI的速度达不到太高。/VOIDINITIE|0X85/允许总中断中断,使能INT0,INT1外部中断TCON|0X01/触发方式为脉冲负边沿触发26SFRP0M00X94/STC12C5A60S2单片机的IO模式设置寄存器,通过它可以打开IO推挽功能SFRP0M10X93/STRUCTFAT32_INIT_ARGINIT_ARG_SD/初始化参数结构体实体SD卡下的BPB相关的数据/此结构体中包括设备号_BPB所在扇区号_磁盘的总容量_根目录的开始簇/每个扇区的字节数_FAT表所占扇区数_每簇的扇区数/第一个FAT表所在扇区_第一个目录所在扇区/STRUCTFAT32_INIT_ARGPARG/定义参数结构体指针SD卡下的BPB相关的数据/此结构体中包括设备号_BPB所在扇区号_磁盘的总容量_根目录的开始簇/每个扇区的字节数_FAT表所占扇区数_每簇的扇区数/第一个FAT表所在扇区_第一个目录所在扇区/STRUCTFILEINFOSTRUCTFILEINFO/文件信息结构体实体读出文件的相关信息27/此结构体中包括文件名,文件的开始簇,文件的当前簇,文件的当前扇区,/文件在当前扇区中的位置,文件的当前偏移量,文件的文件/目录项所在的扇区/,文件的文件/目录项所在扇区中的位置,文件属性,文件的创建时间,文件的创建日期/文件的修改时间,文件的修改日期,文件的访问日期/UNSIGNEDCHARFILE_BUF200/文件数据缓冲区,读取到的文件数据放在其中/UNSIGNEDCHARDEV_NO0/设备号,这是FAT32的外部变量,用来标记存储设备的类型CHARITEM0/声明一个1字节变量,用来指定播放根下的第几个文件,0是第一个文件/VOIDMAINP0M10X00/P16高阻输入P0M00XF0/如果使用51单片机来调试SD卡模块/一定要在与DI相连的IO上加上拉电阻,/10K就好,如果使用的是STC12C5A60S2,/则可以直接打开IO的推挽,目的就是为28/了增加IO驱动能力LCD_INIT/初始化液晶LCD_CLEAR/清屏UART_INIT/此涵数在UARTC中,51单片机的串口初始化程序INITUART_SEND_STR“串口通信测试N“/此涵数在UARTC中,51单片机的串口发送字符串VS_RESET/此涵数在VS1003C中,VS1003软复位及初始化(设置时钟频率及音量)VS_SIN_TEST200UART_SEND_STR“VS1003已初始化N“/此涵数在UARTC中,51单片机的串口发送字符串SD_RESET/此涵数在SDC中,复位SD卡,用到CMD0,使用SD卡切换到SPI模式SD_INIT/此涵数在SDC中,初始化SD卡,使用CMD1UART_SEND_STR“SD已就绪N“/此涵数在UARTC中,51单片机的串口发送字符串PARG/BPB参数结构体指针取地址BPB参数结构体实体DEV_NOSDCARD/设备号,这是FAT32的外部变量,用来标记存储设备的类型这里使用的是SD卡/DEFINESDCARD0/SD卡/DEFINEUDISK1/U盘/DEFINECFCARD2/CF卡/DEFINEOTHER3/其它UART_SEND_STR“当前存储设备SD卡N“/此涵数在UARTC中,51单片机的串口发送字符串29FAT32_INIT/此涵数在ZNFATC中,FAT32文件系统初始化/此涵数功能是先读出SD卡的0扇区数据,然后把判断0扇区是MBR还
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论