0 引言
随着电子技术的发展,MP3播放器是目前市场上流行的消费类数码产品之一,具有大容童、高音质、小巧便携等特点.而倍受广大消费者的青睐。本文采用ETC公司的微控制器STC89C58RD+,结合解码芯片VS1003、USB接口芯片CH375、LCD等外围设备设计并实现了MP3播放器。主要功能有:播放VS1003支持的所有音频文件,包括MP3,WMA,WAV文件,且音质非常好,具有按键控制播放上一首/下一首、音量增减等,可通过LCD显示歌曲名字和播放状态信息等功能。
1 硬件系统设计
系统工作原理框图如图1所示。系统启动后,单片机通过USB接口芯片CH375,从U盘中获取MP3格式文件的数据,并存入片内RAM进行缓冲,然后单片机定时将数据从缓冲区送到MP3音频解码芯片VS1003,实现解码并输出音频信号到耳机或者有源音响输出。用户可以通过键盘实现“启动”、“上一曲”、“下一曲”、“音量控制”及“停止”等功能,并将播放状态信息通过LCD显示。系统框图如图1所示。
1.1 单片机读取MP3数据模块
数据读取模块包括单片机控制器,USB串行数据转换成8位并行数据CH375芯片和MP3格式数据存储U盘3部分。
1.1.1 单片机控制器
采用宏晶公司的STC89C58RD+单片机,该单片机最高可工作于33 MHz时钟,具有32 KB的FLASH,1 KB的内部RAM,引脚与指令系统均与51单片机兼容。本设计中,单片机工作在30 MHz的系统时钟下,能满足系统对数据带宽的要求。
1.1.2 USB接口芯片CH375
CH375是一个USB总线通用接口电路,支持HOST主机方式和SLAVE设备方式。CH375内部集成了PLL倍频器、主从USB接口SIE、数据缓冲区、被动并行接口、异步串型接口、命令解释器、控制传输的协议处理器、通用的固件程序等。在本地端,CH375具有8位数据总线和读、写、片选控制线及中断输出,可以方便地挂接到单片机、DSP等控制器的系统总线上,并内置海量存储固件。CH375的USB主机方式支持各种常用的USB全速设备,外部单片机、DSP、MCU可以通过CH375按照相应的USB协议与USB设备通信,支持常用的12 Mb/s全速USB设备。
1.1.3 工作原理
利用单片机实现将U盘中的音频数据经CH375的USB转串行接口传送至单片机内部RAM缓冲,以等待解码。其中CH375是一款USB总线的通用接口芯片,可以方便地挂接到单片机的控制总线上,同时CH375的USB主机方式支持常用的USB全速设备,外部单片机可以通过CH375按照相应的USB通信协议与USB设备通信。
由于CH375内置了USB通信协议,省去了对USB通信协议的了解,单片机可以直接调用API库读写U盘中的文件数据,硬件上只需在51单片机系统中增加一个CH375芯片,综合成本较低。CH375支持全速的USB-HOST主机接口,外围元器件只需要少量晶体和电容,便可支持5 V电源电压和3.3 V电源电压,CH375芯片还支持低功耗模式,正常工作时,需要外部为它提供12 MHz的时钟信号。电路原理如图2所示。