OLED显示MP3播放器设计.doc_第1页
OLED显示MP3播放器设计.doc_第2页
OLED显示MP3播放器设计.doc_第3页
OLED显示MP3播放器设计.doc_第4页
OLED显示MP3播放器设计.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

采用OLED显示的MP3音乐播放器设计周言 王耀 王灼 (Yan zhou, Yao wang,Zhuo wang) 北华航天工业学院 电子信息工程系(河北廊坊065000)摘要:本文采用STM32F103RBT6微控制器做为核心处理单元,以VS1053实现了音频解码功能,以OLED液晶屏实现了人机界面,结合TF卡、ASM1117电源芯片等外围器件完成了一种功能完整、功耗低、人机交互友好的MP3音乐芯片设计。系统可播放VS1053原生支持的MP3、WMA、WAV文件,并通过软件加载PATCH的方式增加了对无损音频FLAC格式的支持。关键字:OLED,音乐播放器,STM32,音频解码1引言MP3是一种可以大幅度降低音频数据量的音频压缩技术,随着这项技术的发展而诞生的数码设备MP3音乐播放器曾是数字革命的先锋,它的出现对传统唱片业的影响是空前的。即使在消费者被智能手机等其他数码产品分流的今天,MP3音乐播放器因其音质、续航等诸多方面的优势仍然受到许多音乐爱好者的追捧。本文基于STM32系列MCU、VS1053音频编解码器和OLED显示屏,设计了一款可以播放MP3、WMA、WAV以及无损压缩FLAC等格式音乐文件的MP3音乐播放器,该播放器可通过OLED显示屏显示长文件名、播放时间等信息,并具有音量调节和曲目选择功能。2系统方案设计本音乐播放器主要由主控部分、存储模块、音频解码模块、显示模块和电源模块等几个核心部分构成。主控电路以STM32F103RBT6嵌入式MCU为核心,配合8M无源晶振、32.768K晶振等外围器件以及电源电路、复位电路等构成最小系统,主要完成数据读写、处理与各个模块的调度等功能,是整个系统的核心部分。系统的另一个核心部分是音频解码模块,由VS1053音频编解码芯片为核心构成,主要负责将MCU传输过来的音频数据流解码并通过音频输出通道播放。系统的结构图如下:3系统的硬件设计3.1控制核心电路 系统的主芯片STM32F103RBT6是一款采用ARM CORTEX M3内核的高性能、低成本32位核心处理器。该款CPU在STM32F103系列中属于中端产品,但内嵌的128K程序存储器和20K的RAM已足以满足音乐播放器系统的需求,如果程序优化得当,还将有足够余量。另外该芯片内嵌2个SPI接口与2个IIC接口,可以方便地与系统中各个模块进行通信。芯片还内嵌了符合USB2.0规范的USB接口,为系统日后添加有关USB传输的相应功能提供了余量。系统采用8M晶振,芯片利用内部锁相环倍频到72M主频,晶振电路如图2所示。图中并联的两个22P电容,这两个电容是晶体的匹配电容,只有在外部所接电容为匹配电容的情况下, 振荡频率才能保证在标称频率附近的误差范围内。一般取2230pF。图2晶振部分电路图由ASM1117-3.3搭成的稳压电路负责为CPU提供稳定的3.3V工作电压。STM32F103系列CPU可工作在23.6V的电压范围内。另外,CPU每个供电引脚处并接了一个100nF左右的小电容,这是去耦电容,可以滤除供电线中的高次谐波保证供电稳定。3.2显示模块设计 系统采用128*64分辨率的OLED显示屏作为显示模块。该显示屏由SSD1306作为驱动芯片,可以通过8080并口和SPI或IIC串口与单片机进行通讯。本设计中采用了模块的SPI串口模。OLED,即有机发光二极管(Organic Light-Emitting Diode),又称为有机电激光显示(Organic Electroluminesence Display,OELD)。OLED 具备自发光,不需背光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及制程较简单等优异特性。本模块主要特点有:1) 尺寸小,仅有0.96寸,有利于系统小型化。2) 分辨率高,为128*64的分辨率,可以显示足够多的信息。3) 接口方式灵活,可以根据主控芯片资源灵活调配,采用IIC模式仅需占用2个IO口。4) 采用3.3V供电,与CPU供电电源相同。3.3音频解码模块系统采用VS1053芯片作为音频解码的核心,该芯片还内置了一个高性能立体声DAC和音频耳机放大器,极大简化了电路设计。在系统中,STM32作为主机,VS1053作为从机,通过7根线与CPU通讯。分别是:VS_MISO、VS_MOSI、VS_SCK、VS_XCS、VS_XDCS、VS_DREQ 和VS_RST。其中VS_RST是VS1053的复位信号线,低电平有效。VS_DREQ是一个数据请求信号,用来通知主机,VS1053可以接收数据与否。VS_MISO、VS_MOSI和VS_SCK则是VS1053的SPI接口。他们在VS_XCS和VS_XDCS下面来执行不同的操作。VS1053采用两个电源分别为模拟、数字两部分供电。模拟部分供电电压为3.3V,由低压差稳压芯片ASM1117-3.3提供,数字部分供电电压1.8V,由ASM1117-1.8提供。本设计中,将音频解码部分做成了独立模块,减少了其他模块对音频数据流的干扰,并便于系统的硬件升级。音频解码部分PCB版图如图3。 图3 PCB版图设计3.4其他外围电路设计存储部分。存储部分采用TF封装的SD卡,用来存放音频文件。采用SPI模式与CPU通讯,CS/MISO/MOSI/CLK脚分别接10100K上拉电阻。该部分接口电路如图4。图4,存储部分接口电路人机接口。系统共通过四颗按键,接到CPU的IO口上,分别实现音量的加、减,曲目的选择功能。另外还有一颗复位按键,用于系统的复位,可实现上电自动复位和手动复位功能。4系统的软件设计4.1内存管理音乐播放器的程序涉及到大量的数据读写,必须引入内存管理才能提高软件运行效率,增强系统稳定性。内存管理,是指软件运行时对计算机内存资源的分配和使用的技术。其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回收内存资源。内存管理的实现方法有很多种,他们其实最终都是要实现2个函数:malloc和free;malloc函数用于内存申请,free函数用于内存释放。本系统中,我们采用了一种比较简单的内存管理方式:分块式内存管理。该方式的原理如图5。图5内存管理原理4.2 FATFS文件系统的移植FATFS是一个完全免费开源的FAT文件系统模块,专门为小型的嵌入式系统而设计。它完全用标准C语言编写,所以具有良好的硬件平台独立性。其源码中我们一般只需要修改2个文件,即 fconf.h和diskio.c。需要着重指出的是,FATFS源码中的cc936.c文件提供了对中文长文件名的支持,因为其中含有Unicode与GBK编码的双向转换表,故文件较大,若直接编译,程序容量将超过STM32RBT6的FLASH存储器128K的限制,我们需要将其中的转换表数组提取出来转换成UNIGBK.BIN文件,放置在内存卡或外置FLASH芯片中,需要时再予以读取。4.3 VS1053控制VS1053的软件操作过程如下:1)复位VS1053这里包括了硬复位和软复位,是为了让VS1053的状态回到原始状态,准备解码下一首歌曲。2)配置VS1053的相关寄存器需要配置的寄存器包括VS1053的模式寄存器(MODE)、时钟寄存器(CLOCKF)、音调寄存器(BASS)、音量寄存器(VOL)等。3)发送音频数据当经过以上两步配置以后,CPU将SD卡中存储的音频数据读取出来,发送到VS1053中,VS1053会自动识别,并进行播放。发送数据的时序规则是:DREQ变高时,向VS1053发送32个字节。然后继续等待DREQ变高,直到音频数据发送完。VS1053支持MP3/OGG/WMA/WAV/MIDI等格式的播放,若要播放FLAC、ACC等无损音乐格式,需要加载软件PATCH。 4.4 OLED显示OLED通过SPI串行口与单片机进行通讯,因STM32F103RBT6只有两个SPI串行口,且SD卡、VS1053都需要SPI通讯,同时又对传速速率有较高要求,这里将两个内置SPI分配给SD和VS1053。液晶屏对传速速率没有过高要求,所以采用IO口模拟SPI的模式。软件设计分为SPI时序和SPI协议两部分。SPI时序如图6:图6 SPI时序图5总结本文讨论了一种基于STM32F103RBT6的音乐播放器设计,定义了OLED液晶显示屏、SD卡和VS1053的接口设计,讨论了FATFS的移植、内存管理和VS1053的控制流程,并指出了软硬件设计中需要特别注意的一些细节问题,对相应器件的调试和其他类似系统设计有一定的参考意义。参考文献1李宁. 基于 MDK 的 STM32 处理器开发应用M. 北京航空航天大学出版社, 2008.2刘军. 例说 STM32M. 北京航空航天大学出版社, 2011.3程

温馨提示

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

最新文档

评论

0/150

提交评论