基于BU9435的嵌入式MP3播放模块设计
扫描二维码
随时随地手机看文章
MP3不仅体积小、重量轻、存储容量大及耗电小.而且MP3对存储介质的访问无需任何机械运动.所以MP3还具有极强的抗振能力,无任何机械噪声优点。随着闪存容量的不断增加和价格的不断降低,MP3在车载和便携音响领域.越来越受到人们的欢迎,尤其是在便携音响领域,MP3已经占据着绝对的主流地位。
SD卡是一种通用性极强的存储介质,广泛应用于数码相机、手机和便携式媒体播放器等设备中:U盘是最为常见的移动存储设备,它在易用性、安全性及方便性方面大大优于其他移动存储产品。罗姆(ROHM)公司开发出将USB存储/SD卡主机(H0ST)功能、MP3音频解码功能、系统控制功能于一体的LSI—BU9435。BU9435同时支持U盘和SD卡作为存储介质,特别适用于小型组合音响、汽车音响和便携媒体播放设备。以BU9435为核心,设计一种MP3播放模块.该模块可方便地嵌入到各种音响设备中,为音响设备提供丰富的媒介来源。
2 BU9435简介
BU9435内部不仅集成系统控制器和MP3音频解码器,而且还内置USB存储/SD卡主机功能,能够自动查找U盘和SD卡内的MP3文件,并通过解码器播放出与CD媲美的高音质音乐。以前有带USB主机接口的MP3解码方案需要外接程序存储器或采用CPU、USB控制器和MP3解码器,现在仅需BU9435便可实现。
BU9435的主要特性:USB全速HOST接口,SD存储卡接口;带有可显示文件/文件夹编号、播放时间、艺术家名、标题等ID3Tag分析功能的MP3解码器;内置有安装命令软件的系统控制器;FATl6/FAT32文件系统;独立工作/从属工作模式转换功能;I2C总线接口;4×3矩阵键盘扫描控制功能;7通道LED控制功能;抽样率自动转换功能;多种均衡模式。图1给出BU9435的内部组成框图。
BU9435的主要引脚功能:引脚1(RESETX):复位端,低电平有效;引脚2(SEL_SLAVE):工作模式选择,高电平选择独立工作模式,低电平为从属模式;引脚3(SEL_MP3):文件格式选择,高电平仅支持MP3格式的文件,低电平支持MPl、MP2和MP3格式的文件;引脚4(SEL_DOUT):音频输出选择,高电平为模拟音频输出,低电平为数字音频输出;引脚5(SEL_VOL):音量控制选择,高电平使能音量控制功能,低电平禁止音量控制;引脚6(SEL_APLAY):自动播放选择端,高电平禁止自动播放,低电平选择自动播放;引脚10~13:工作在独立模式时,10~13引脚为矩阵键盘行输入端KEY_ROWn;工作在从属模式时,10引脚为曲目切换输出端,当MP3曲目切换时输出低电平,11引脚为BU9435忙标志输出.12~13引脚为I2C总线的SCL和SDA:引脚14~16:工作在独立模式时,14~16引脚为矩阵键盘列输出端KEY_COLn;工作在从属模式时,14引脚和15引脚为I2C总线低位地址选择端A0和Al,16引脚为从属模式选择端,高电平选择模式2,低电平选择模式3;引脚19~23:SD卡接口;引脚33(USB_DM)和引脚34(USB_DP):USB接口;引脚40(XIN_PLL)和引脚4l(XOUT_PLL):时钟产生电路,外接16.934 4 MHz晶体振荡器;引脚44(RDACO)和引脚46(LDAC0):模拟音频右声道和左声道输出;引脚48(AMUTE):静音状态输出端,低电平表示处于静音状态;引脚49~55:工作在独立模式时,49~55引脚为工作状态LED指示输出:工作在从属模式时,53~55引脚为数字音频输出端。
3 BU9435外围电路设计
由BU9435构成的MP3解码电路原理图如图2所示。为使BU9435按所希望的方式工作,需对其引脚进行相应配置。大部分输入引脚内部都具有上拉功能,主要配置为:2引脚接地,使BU9435工作在从属工作模式,这样系统控制器可通过I2C总线对BU9435进行控制及获取BU9435的工作状态:3引脚接地,系统支持MPl、MP2、MP3格式的文件;4引脚悬空,内部上拉为高电平,器件输出为模拟音频信号;系统中通常还有其他音源.一般都有独立的通道选择与音量控制器件,所以BU9435 5引脚接地,禁止器件音量控制:6引脚悬空,禁止器件自动播放,由主控制器控制BU9435;BU9435的I2C器件地址最高位固定为1,最低2位由引脚14和引脚15决定,其他位为0,将引脚14和引脚15接地,BU9435的I2C器件地址为0x80H。
立体声模拟音频信号由引脚44和引脚46输出,经RE滤波后送到音量控制器件控制通道和音量。BU9435的控制和获取BU9435的状态全部由I2C总线引脚SCL和SDA完成。
[!--empirenews.page--]
4 软件设计
控制BU9435是先发送控制命令,然后读取BU9435的状态寄存器组或相应的信息。根据命令的不同,控制命令的长度为2~8个字节。播放的相关信息,如BU9435内部状态、文件夹信息、播放时间信息及ID3Tag信息,都是通过I2C总线读出。需要注意的是,在对BU9435读取时,BU9435返回的第一个字节并不是状态寄存器组或相应信息的有效内容,而是反映后续内容是否有效的一个虚元字节(Dummy byte)。如果该字节为0x00H。则表明后续内容为有效的状态寄存器组或相应的信息数据;如果该字节为0xFFH,则表明BU9435忙,后续数据无效,这时主控制器应该发送I2C结束命令并重新读取。图3为BU9435的读取流程图。
BU9435工作在不同状态时,接收的命令也不同。当某个命令不能被当前状态接收时,该命令将被忽略。BU9435的状态与主要命令之间的关系如表l所示。BU9435系统控制软件流程如图4所示。
5 结语
基于BU9435的MP3播放模块,不仅同时支持U盘和SD卡作为存储介质,为音响系统提供丰富的媒介来源,而且外围和接口电路简单,只要系统提供I2C总线接口,就能方便地将该模块嵌入到系统中,有很强的通用性。该MP3播放模块,无论对新音响系统的设计还是旧音响系统的升级,都能提供有益的借鉴和参考。