MP3播放器的课程设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

新型U盘MP3播放器的设计作者:高金龙杨昆姚明月摘要:本文设计了一款将存储器与播放器分离的新型U盘MP3播放器,系统采用STC12C5A单片机与ch375组成USB的host模式用于U盘的读取,采用VS1003MP3解码芯片用于MP3歌曲的解码。实验证明,将存储器与播放器分离后工作良好,使用方便。关键字:存储器播放器分离、ch375、vs1003、MP3解码。1.引言随着电子技术的快速发展,电子类产品尤其是消费类电子产品跟新换代的速度越来越快。MP3就是对人们生活很重要的一款消费类电子产品。近年来,MP3产品朝着小巧、轻便、大存储、高音质方向快速发展。与此同时新的问题也日渐显示出来,存储器与播放器的一体化虽然使MP3变得小巧,但若想存更多的歌曲只能选择购买新的产品了,造成很大的浪费。同时,一体化也使MP3在车载MP3方向的应用受到限制。于是,存储器与播放器分离将成为MP3发展的新方向。我们的设计采用STC12C5A单片机与ch375组成USB的host模式用于U盘的读取,采用VS1003MP3解码芯片用于MP3歌曲的解码。从而将存储器与播放器分离并且良好的工作。2.硬件介绍2.1单片机最小系统。EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10VCC40GND20U1Y2C1C7C14R4VCCVCC123456789J4D0D1D2D3D4D5D6D7375-CS375-A0375-RD375-WRINT0P1.0P1.1P1.5P1.6P1.712345678J212345678J312345678J1INT1T1T0RXDTXD375-RD375-WRT1T0INT1INT0TXDRXD图1单片机最小系统本文采用宏晶科技生产的12C5A56S2单片机。因为它拥有增强性51内核,速度比一般51单片机快8~10倍。56K的片内flash程序存储器和1280字节的片内RAM存储器使其能够运行更大的程序,处理更多的变量。2.2CH375U盘读写系统RST12WR3RD4TXD5RXD6NC7A08V39D318D217D116D015INT1VD+10VD-11GND12XI13XO14D419D520D621D722GND23ACT24RST25RST#26CS27VCC28U2375-INT375-WR375-RDVCCC12R2375-A0C31234JUSBVCCY1C4C5D0D1D2D3D4D5D6D7D2R3VCC375-CSVCC图2CH375外围电路CH375是一个由南京沁恒公司生产的USB总线的通用接口芯片,支持USB-HOST主机方式和USB-DEVICE/SLAVE设备方式。在本地端,CH375具有8位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU/MPU等控制器的系统总线上。在USB主机方式下,CH375还提供了串行通讯方式,通过串行输入、串行输出和中断输出与单片机/DSP/MCU/MPU等相连接。CH375的USB设备方式与CH372芯片完全兼容,CH375包含了CH372的全部功能。CH375的USB主机方式支持常用的USB全速设备,外部单片机可以通过CH375按照相应的USB协议与USB设备通讯。CH375还内置了处理Mass-Storage海量存储设备的专用通讯协议的固件,外部单片机可以直接以扇区为基本单位读写常用的USB存储设备(包括USB硬盘/USB闪存盘/U盘)。图3CH375读写流程2.3特点●低速和全速USB-HOST主机接口,兼容USBV2.0,外围元器件只需要晶体和电容。●低速和全速USB设备接口,完全兼容CH372芯片,支持动态切换主机与设备方式。●主机端点输入和输出缓冲区各64字节,支持12Mbps全速USB设备和1.5Mbps低速设备。●支持USB设备的控制传输、批量传输、中断传输。●自动检测USB设备的连接和断开,提供设备连接和断开的事件通知。●内置控制传输的协议处理器,简化常用的控制传输。●内置固件处理海量存储设备的专用通讯协议,支持Bulk-Only传输协议和SCSI、UFI、RBC或等效命令集的USB存储设备(包括USB硬盘/USB闪存盘/U盘/USB读卡器)。●通过U盘文件级子程序库实现单片机读写USB存储设备中的文件。●并行接口包含8位数据总线,4线控制:读选通、写选通、片选输入、中断输出。●串行接口包含串行输入、串行输出、中断输出,支持通讯波特率动态调整。●支持5V电源电压和3.3V电源电压,支持低功耗模式。●采用SOP-28无铅封装,兼容RoHS,提供SOP28到DIP28的转换板,引脚基本兼容CH374芯片。2.4VS1003MP3解码系统MICP1MICN2CRESET3DGND04CVDD05IOVDD06CVDD17DREQ8GPIO29GPIO310NC11NC12XDCS13I0VDD114VC015DGNG116XTAL017XTAL118IOVDD219DGND220DGND321DGND422XCS23CVDD224NC25RX26TX27SCLK28SI29SO30SCVV331TEXT32GPIO033GPIO134NC35NC36AGND037AVDD038RIGHT39AGND140AGND241GBUF42AVDD143RCAP44AVDD245LEFT46AGND347LINEIN48J?C?C?C?C?CAPR?电阻5.5R?RES2R?RES2R?RES2R?RES2D?LEDY?CRYSTALC?CAPR?电阻5.5C?CAPC?CAPC?CAPC?CAPR?电阻5.5R?电阻5.5R?电阻5.5C?CAPC?CAPC?CAPJ?PHONEJACKJ?PHONEJACKC?CAPC?CAPC?CAPR?电阻5.512345678910J?CON10XDCSDREQXRESXCSXCLKMOSIMISQVCC3.3V3.3V3.3V3.3V3.3V3.3V3.3V3.3V2.5V2.5V2.5V2.5V3.3V3.3VMISOMOSISCLKDREPXDCSXT1XT2XCSXRESXT1XT2LINEINLINEINRCAPLEFTRIGHTLEFTRIGHT图4VS1003MP3解码系统VS1003是由芬兰VLSI公司出品的一款单芯片的MP3/WMA/MIDI音频解码和ADPCM编码芯片,其拥有一个高性能低功耗的DSP处理器核VS_DSP,5K的指令RAM,0.5K的数据RAM,串行的控制和数据输入接口,4个通用IO口,一个UART口;同时片内带有一个可变采样率的ADC、一个立体声DAC以及音频耳机放大器。支持的音频的编解码格式为:解码:MP3(mpeg1和mpeg2,层3),MP3+V,WMA,WAV,MIDI,SP-MIDI;编码:IMAADPCM(单声道),麦克风和线入(Lineinput)两种输入方式。VS1003共有16个16位的寄存器,地址分别为0x0–0xF;除了模式寄存器(MODE,0x0)和状态寄存器(STATUS,0x1)在复位后的初始值分别为0x800和0x3C外,其余的寄存器在VS1003初始化后的值均为0。3.软件介绍本文在软件编程方面将该系统分为两大的部分,即CH375U盘部分和VS1003解码部分。下面将分别对它们进行介绍。3.1CH375U盘在CH375部分本文需要用到读写扇区函数及FAT文件系统的相关函数。CH375对U盘的读写可以是字节级的读取,也可以是扇区级的读取,为了提高U盘的读取速度以使MP3播放流畅,本文采用扇区级读取。函数流程图如下:系统初始化开始查询中断U盘是否插入U盘复位/加载查询FAT文件系统打开指定文件NYNY返回播放主函数结束3.2ZNFAT文件系统文件系统是用于识别打开并读取MP3文件,本系统采用的是被广泛使用的ZNFAT文件系统,该系统通过两个结构体变量将文件系统与U盘读写函数挂接以供单片机调用。通过ZNFAT系统可以获得存储器的大小、类型和扇区数,还可以得到文件的名称、大小、创建时间和偏移量等信息。当然也可以通过该文件系统在U盘中查找、创建、删除文件。该设计主要功能是将U盘中的MP3文件按扇区读出并送vs1003解码。ZNFAT中包括了诸如打开文件、查找文件、读取文件内容等各种待调用的子函数。如获取文件剩余容量子函数:#ifdefznFAT_GET_REMAIN_CAPUINT32znFAT_Get_Remain_Cap(void){znFAT_ReadSector(1+pArg-BPB_Sector_No,znFAT_Buffer);if(((structFSInfo*)znFAT_Buffer)-Free_Cluster[0]==0xff&&((structFSInfo*)znFAT_Buffer)-Free_Cluster[1]==0xff&&((structFSInfo*)znFAT_Buffer)-Free_Cluster[2]==0xff&&((structFSInfo*)znFAT_Buffer)-Free_Cluster[3]==0xff)returnpArg-Total_Size;elsereturnLE2BE(((structFSInfo*)znFAT_Buffer)-Free_Cluster,4)*pArg-SectorsPerClust*pArg-BytesPerSector;}#endif3.3VSl003VSl003通过一个工作于从模式的SPI串行总线与主机进行数据和控制信息的交流,控制信号和数据信号的传送分别采用xCS和xDCS作为同步信号数据信号xDCS为低时通过串行接口传送音频数据,当控制信号xCS为低时通过串行接口传送控制命令,控制命令总是为16位,通过读/写不同的寄存器来实现对VSl003的控制。作为从机工作模式,VSl003通过一个信号线DREQ指示是否允许主机传送数据,当DREQ为高时,VSl003至少可以接受32kB的数据或者控制命令,其驱动函数流程图如下:开始硬复位,xReset=0;延时,xDCS、xCS、xReset置1等待DREQ为富软件复位:SPI_MODE=0x0804等待DREQ为高(软件复位结束);设置VS1003的时钟:SCI_CLOCKF=0x9800,3倍频设置VS1003的采样率:SPI_AUDATA=0xBB81,采样率48k,立体声设置重音:SPI_BASS=0x0055设置音量:SCI_VOL=0x2020向vs1003发送4个字节无效数据用以启动SPI发送返回播放主函数结束3.412232F液晶12232F是一种图形点阵液晶显示器,它主要由行驱动器/列驱动器及128×32全点阵液晶显示器组成。可完成16×2个(16×8点阵)ASCII码显示,也可以显示8×2个(16×16点阵)汉字。与外部CPU接口可采用并行方式控制。通过液晶显示可以显示歌名、歌词、文件系统信息等。由于该作品所采用的STC89C5A单片机可用的I/O口并不丰富,同时提高抗干扰性,所以采用串行方式操作该液晶。液晶操作函数见附录。4.实验结果由于实验条件有限,实验室不能提供双层PCB板的制作,所以本设计采用单层PCB印刷技术,这直接导致电路板面积增大以及飞线连接。本设计软件设计的传输均为SPI连接,抗干扰性强,所以不会造成干扰。图X正视图图X后视图图XU盘中的文件上电以后,FAT文件系统后自动寻找MP3文件,并按顺序播放,并在液晶屏上显示文件名。5.结语本设计最大限度的利用了硬件资源,在51单片机这种并不充裕的硬件资源中实现了MP3歌曲的有序流

1 / 15
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功