以忧盘为存储介质的mp3播放器设计方案_第1页
以忧盘为存储介质的mp3播放器设计方案_第2页
以忧盘为存储介质的mp3播放器设计方案_第3页
以忧盘为存储介质的mp3播放器设计方案_第4页
以忧盘为存储介质的mp3播放器设计方案_第5页
全文预览已结束

下载本文档

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

文档简介

1、以忧盘为存储介质的mp3播放器设计以忧盘为存储介质的mp3播放器设计类别:存储器引言随着mp3播放器作为消费类产品的普及,MP3勺设计与生产也越来越多。在当前的MP骑放器中,一般有以下几种设计方案:MCU内置硬解码模块。典型的芯片有Atmel公司的AT89C51SND|亨芯片。外置独立的MP刎解码芯片。此种方案的好处是可以使用众多的MCU可根据需要任意选择。硬解码芯片典型的有VS1011BSTA01符芯片。使用功能强大的MCU4行软解码,如使用DSP或是高性能的ARM此种方案较为灵活,通过软件升级即可实现产品的升级。MP3s放器的存储介质一般采用Flash存储芯片。随着USBK术和闪存技术的发

2、展,优盘已经成为一种大众化的电子产品被广泛使用,但优盘一般只是作为PC的移动存储器。本文研究的一种方案是在上述MP殿计方案的基础上,外扩优盘读写电路,使存储介质使用普通的优盘。这样可以解决普遍使用的优盘只能作为PC外设存储数据用的问题,使U盘的使用范围扩展到MP3上。更大的意义还在于,本文提出了一种在以嵌入式系统、MCU核心的消费类电子产品或工业产品中,将优盘作为数据存储器使用的设计方案,为在微计算机测控系统、仪器仪表、无纸化数据记录仪、数码相机等产品中添加优盘外设功能提供有益的参考。1硬件设计S3c44B0&Samsun叭司开发生产的为嵌入式设备提供的一个低成本、高性能的ARM7TM

3、DK处理器,其最高运行频率可达66MHzSL811HS1Cypress公司的一款遵从USB1.1协议的嵌入式Host/SlaveUSB芯片;可以支持低速和高速模式,能自动侦测低速模式1.5Mbps设备和高速模式12Mbps全速设备。由于具有8位数据总线的支持,使该芯片可以较为简单地与微控制器相连,SL811HSE片与S3c44B0X勺接口较为简单。本系统中ARM读/写优盘原理框图如图1所示。SL811HS勺控制命令和数据均通过D0D7传输,A0为数据或地址选择线。当A0置为低电平时,D0D7上传输的是SL811HSt内寄存器的地址;反之当A0置为高电平时传输的则为数据。nWRnRDnCSnRS

4、T吩别为写控制线、读控制线、片选线和复位线,S3c44B0XS过这几根控制线完成对SL811HS片内缓冲区的读写、片选和复位等操作。INT是SL811HS勺中断请求信号线。当SL811HS佥测到优盘插入、拔出时,通过将INT线拉高通知S3C44B0XS3C44B0)XT以通过查询SL811HSt内状态寄存器来得知是优盘插入或是拔出。对状态寄存器进行写操作可以清除中断,但需要注意的是ARM勺结构特性。ARM内部通常是LittleEndian方式存储和使用4字节对齐方式1,并且当采用16位数据总线时,地址线ADDR01无效的2。在本系统中,SL811HS®片A0端是与ADDR相连接的。V

5、S1011B1一款单芯片的MP3ff码芯片,在国际MP3lk余爱好者中影响较大,集成解码、A/D转换、音频放大等功能。VS1011B与S3c44B0滋口为SPI接口,其连接电路原理框图如图2所示。VS1011B勺控制与数据传输是通过SPI接口完成的,DREQxDCSxCSnRST价别为数据请求端口、数字片选信号线、片选线、复位线。在VS1001B勺新模式下,SDI(SerialDataInterface)数据和SCI(SerialCommandInterface)数据传输可以共享ARM勺一个SPI接口;而在兼容模式下,SDI数据传输要用DCLKSDAT冲行接口,SCI数据传输用SPI接口。为了

6、简化电路,此处选用了新模式。2软件设计2.1优盘读写软件的实现USB组织定义了海量存储设备类(massstorageclass)的规范。这个类规范包括4个独立的子类规范:USBMassStorageClassControl/Bulk/Interrupt(CBI)Transport、USBMassStorageClassBulkOnlyTransport、USBMassStorageClassATACommandBlock、USBMassStorageClassUFICommandSpecification。其中优盘属于海量存储设备,遵循bulkonly传输协议,子类采用UFI命令集。本设计软件

7、的总体结构如图3所示。其中两条点画线之间的部分为读/写优盘的软件结构。2.1.1 USB物理层协议的实现分页该部分实现S3c44B0X寸SL811HSE片的直接底层数据的读写,包括对SL811HS勺初始化及读/写一个字节的函数。限于篇幅,此处只列出对SL811HS®片的初始化程序:/*函数名称:SL811_Init函数功能:初始化SL811HS®片输入参数:无返回值:无*/voidSL811_Init(void)/初始化U盘为未插入状态bFlags.bits.SLAVE_ONLINE=FALSE;bFlags.bits.SLAVE_FOUND=FALSE;bFlags.bi

8、ts.SLAVE_REMOVED=FALSE;bFlags.bits.SLAVE_ENUMERATED=FALSE;bFlags.bits.SLAVE_IS_ATTACHED=FALSE;/允许硬件产生SOF(StartofFrame)SL811Write(CtrlReg,0x04);DelayMs(100);SL811Write(CtrlReg,0x01);/设置SOF,1ms中断SL811Write(cDATASet,0xe0);/设置为主机工作模式SL811Write(cSOFcnt,0xae);SL811Write(EP0Status,0x50);/地址设为0SL811Write(EP

9、0Counter,0);/允许数据发送SL811Write(EP0Control,0x01);SL811Write(IntEna,0x20);/清中断SL811Write(IntStatus,INT_CLEAR);2.1.2 USB设备协议层的实现该部分实现对优盘扇区的直接读写,其中两个很重要的函数为Bulkin和Bulkout。此处只列出Bulkin函数的实现:/*函数名称:epBulkRcv函数功能:实现bulkonly协议中的Bulkin函数输入参数:pBuffer为数据的地址,len为数据的长度返回化TRU助成功,FALS助失败*/unsignedcharepBulkRcv(unsig

10、nedchar*pBuffer,unsignedintlen)usbstack.usbaddr=0x1;usbstack.endpoint=usbstack.epbulkin;usbstack.pid=PID_IN;/设置包长度为64usbstack.wPayload=64;usbstack.wLen=len;usbstack.buffer=pBuffer;if(usbstack.wLen)if(!usbXfer()returnFALSE;returnTRUE;2.1.3 FAT16/FAT32文件格式的实现该部分程序是根据FAT16/FAT32文件系统的结构,实现对文件的读、写、创建、删除等

11、操作。优盘上的数据按照其不同的特点和作用大致可分为5部分:MBFK(主引导记录区)、DBRK(系统引导记录区)、FAT区(文件分配表区)、FDT区(文件目录表区)和DATAK(数据区)。在实现对文件的读/写时,首先根据MBRE和DBRK的大小,找到FAT表的位置,然后根据FAT表找出相应文件的数据位置,即可对此文件进行相应的处理。其具体实现涉及FAT文件系统的结构,此处不再详述。分页2.2VS1011B勺控制与音乐文件数据输入本方案mp3ft放器的实现原理就是控制器从优盘读取MP3文件数据,当VS1011B的数据缓冲区需要数据时,将数据送入VS1011B!行解码。VS1011B采用串行接口,有

12、两种接口模式:NativeModes(新模式)和Compatibility;Mode(兼容模式)。当地址为0x0的MODEJ存器的SM_SDINEW为1时为新模式;反之为兼容模式。上电时默认为新模式。在播放音乐之前,首先需要对VS1011B进行初始化,然后输入音乐文件即可播放歌曲。其控制步骤如下:3拉低nRST1等待DRE0I脚信号变高。写寄存器MOD的参数,包括正确设置SM_SDINE驯SM_SDISHARED位。 若时钟数率非24.576MHz,应设置SCI_CLOCKF 若使用倍频时钟,试图通过改变SCI_CLOCK直接操作,应将适当的采样速率写入SCI_AUDATAf存器,等待至少11

13、000个时钟后才可以操作高速的SPI通信。 设置音量寄存器SCI_VOL。 若希望加强低音,可设置寄存器SCI_BASS。 从优盘读取一首MP3a曲文件,并开始传送音乐数据。应注意数据传送的规则,DREQt号是用来表示VS1011由勺MP3t据缓冲区是否需要数据。当VS1011B的数据缓冲区可再接收32字节数据时,DRE0I脚电平变高。当软件查询到此引脚电平变高时,就再送入32个字节的MP3t乐数据。 本首歌曲完成播放,读取下一首MP3歌曲,并转到步骤。结语本文介绍了使用优盘存储MP3歌曲文件的一种MP3®放器的设计,具中软件设计的难度较大。此外VS1011B除支持MP潞式音乐文件外,还支持WAVS式等,改变一下软件即可播放WAVC件格式的音乐。如果MP3g放器设计带有液晶屏,则可以通过把相应的歌曲歌词存储在优

温馨提示

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

评论

0/150

提交评论