STC89C58RD+单片机在MP3播放器设计中的应用

  作者:黄玉豪 时间:2013-05-20来源:电子产品世界

  VS1011E芯片与单片机的接口电路

  VS1011E芯片与STC89C58RD+单片机的接口电路如图5所示。系统启动后,由单片机控制,通过CH375USB接口芯片将存储于U盘中文件的MP3数据格式流信息送入到VS1011E芯片中,再通过VS1011E芯片解码及其内含高质量的立体声DAC和耳机驱动电路,实现MP3文件的播放。VS1011E的所有控制命令和数据均通过SPI总线接口实现,而STC89C58RD+单片机没有SPI接口,因此,为了达到实现SPI通信功能,采用该单片机的3个I/O口模拟SPI时序。

  液晶显示模块

  系统采用Nokia5110液晶显示播放状态,该液晶为84×48点阵的LCD,可显示四行汉字,并支持串行通信协议,如图6所示为其串行通信模式下的控制时序。其传输速率高达4Mb/s,可全速写入显示数据,方便与单片机进行通信。该液晶外部只有九条信号线,节约了I/O口。  

 

  系统软件设计

  图7为MP3播放器的软件流程。采用C51语言对本系统单片机的软件设计进行编写,源程序共分单片机驱动CH375程序、单片机控制VS1011E实现音频解码程序及按键与显示驱动程序三个部分。为了简化程序设计,采用从官方网站下载CH375的API函数库“CH375HF4.LIB”文件对CH375模块部分程序进行编写。由于单片机的硬件资源比较有限,在硬件调试过程中,当出现传送频率较高的MP3文件时可能会造成声音失真,因此为了保证MP3文件播放流畅,在系统开发过程中应优化程序。

  系统启动后,先进行初始化,然后等待U盘插入,再通过CH375芯片将U盘中的MP3文件传送至单片机内部RAM缓冲。单片机是通过SPI总线方式读出音频信息的,并将MP3的码流信息送入到VS1011E芯片中,通过VS1011E芯片及其内含的高质量立体声DAC和耳机驱动电路,实现MP3文件的播放功能。在按键的控制下,通过Nokia5110中菜单选项的选择,实现对MP3文件选择及音量控制等功能;播放时,显示在Nokia5110上的信息包括MP3文件名称、播放进度和音量等。经过运行测试,该系统可正常流畅地播放出320kb/s的高音质MP3文件,而且其功耗比较低,使用500mA锂电池可连续正常播放十小时。

  参考文献:
  [1] 王道乾,刘定智,等.基于ARM处理器的MP3播放器分析与实现[J].计算机工程与设计,2007,(07)
  [2] 徐英欣.基于ARM的多通道专业MP3播放器设计[J].微计算机信息,2008,(14)
  [3] 宋艳红,孙涌.基于FS7821的磁带式mp3播放器设计[J].电脑知识与技术,2008,(S2)
  [4] 王海涛,蒋德云,等.一种基于单片机STC89C58RD+的称重显示控制器[J].机电工程,2008,(06)
  [5] 谭保华.基于CH375的低成本嵌入式系统USB Host构建[J].黄石理工学院学报,2010,(04)
  [6] 郭稳涛,何怡刚.基于CPLD和VS1011E解码器的电梯语音系统设计[J].国外电子元器件,2008,(01)

1 2 3

关键词: MP3 单片机 STC89C58RD 201306

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版