基于STM32单片机的MP3播放器设计毕业论文.doc
《基于STM32单片机的MP3播放器设计毕业论文.doc》由会员分享,可在线阅读,更多相关《基于STM32单片机的MP3播放器设计毕业论文.doc(33页珍藏版)》请在三一办公上搜索。
1、惠州学院HUIZHOU UNIVERSITY 毕 业 论 文(设 计) 中文题目: 基于STM32单片机的MP3播放器设计 英文题目:Design of MP3 player based on STM32 micro-controller 姓 名_ 陈腾奎 _学 号_ 110701203 _专业班级_ 11电气2班 _指导教师_ 陈治明 _提交日期 2015年5月25日_教务处制摘要随着数字编解码技术及压缩技术的发展,语音文件也向着高压缩比、高保真的方向发展,从MP1、MP2到目前的MP3格式。因此高压缩比、高保真MP3播放器设计及研究有很好的发展前景。本论文介绍了基于STM32微处理器的MP
2、3播放器的设计方法,实现了从SD卡中读取音乐文件数据,再将读取的数据流进行软件解码,最后通过音频信号输出驱动耳机实现音乐播放功能。并在液晶屏上显示音乐的实时播放状态,通过TFT触摸屏上的人机交换界面,实现了音乐的播放,停止,声音增大,减小等功能模式。基本上实现了一个带有触摸功能的MP3播放器。关 键 词 MP3播放器 STM32F103ZET SD卡 触摸屏 FATFS文件系统ABSTRACTWith the development of digital codec technology and compression technology ,Voice files are also in t
3、he direction of high compression ratio, high-fidelity development, from MP1, MP2 to MP3 format now. Therefore, high compression ratio, high-fidelity MP3 player design and research have good prospects for development.This paper describes the design of microprocessor-based STM32 MP3 player, Realize fr
4、om reading music files from SD card and then read the data stream decoding software,Finally, the audio signal output to drive headphones realize music playback ,and displays real-time playback status of the song on the LCD screen, through a graphical user interaction diagram circles TFT touch screen
5、, to achieve the songs play, stop, sound increase, decrease function mode. Basically realize MP3 player with a touch-enabled. Key Words MP3 player STM32F103ZET SD Card Touch screen FATFS file system目录1 绪论11.1 本课题的提出及意义11.2 研究现状12 硬件设计22.1整体方案22.2系统架构图22.3硬件模块32.3.1处理器32.3.3 SD卡模块42.3.3 LCD显示模块52.3.4
6、触摸屏模块63 软件设计83.1 软件开发架构83.2 软程序设计流程图93.3 软件代码结构103.3 驱动程序143.3.1 液晶屏驱动程序143.3.3 文件系统驱动程序153.3.3 触摸屏卡驱动程序163.3.4 MP3驱动程序174 系统调试204.1 开发环境204.1.1 软件开发环境204.1.2 硬件开发环境214.2 设计调试224.2.1 UI界面设计224.2.2 SD卡模块测试224.2.3 触摸屏校验234.2.4 显示屏测试234.3 成品展示25致 谢26参考文献27附录281 绪论1.1 本课题的提出及意义MP3音频播放器的最合理工作速度为30Mips,而一
7、个典型的视频媒体播放器的理想速度则为175Mips,所以提高MP3的工作速度,以及改善MP3的音质是最关键的,也是亟待解决的问题。MP3是一种典型的嵌入式设备,而现在市场上比较常见的是闪存式MP3。由于闪存式MP3的容量限制,使它存储歌曲数目较少,在功能上也很难实现多样化1。而硬盘式MP3的多功能及大容量,也必将受到不少消费者的喜爱。MP3播放器一般分成3个部分:CPU、MP3硬件解码器存储器。其中可以将前两部分集成在一起,即带MP3硬件解码器的CPU;或将后两部分集成在一起,即集成硬件解码、DA转换及音频输入。存储器可以是Flash存储器或硬盘2。通过用MP3编码技术,可以得到大约12:1压
8、缩的有损音乐信号。1.2 研究现状MP3全称是MPEG Layer 3,狭义的讲就是以MPEG Layer 3标准压缩编码的一种音频文件格式。自韩国世韩(Seahan)公司1998年推出世界上第一台MP3随身听以来, MP3播放器以其小巧的外形,不错的近乎于CD的音质,前卫的功能,越来越受到消费者的青睐,也就成为业界甚至大众媒体关注的一个热门话题3。在市场消费刺激下,各大公司纷纷推出了自己的mp3播放器产品,IC供应商提供了众多的MP3解码芯片及其解决方案。除了Micronas方案(MAS3507+DAC3550),还有台湾创品方案(T33510,T33520)、美国SigmaTel方案(ST
9、MP3400)和TI的DA-250解决方案。这使mp3播放器的研制与生产变得更加容易,成本也大大降低,市场更加广阔 4。2 硬件设计2.1整体方案综述本设计由STM32最小系统,SD卡的读取模块,TFT控制模块,外扩FLASH模块,触摸屏模块,串口通信模块组成。将解决SD卡的读取以及使用FATFS文件系统来对SD卡操作,TFT液晶屏的控制及触摸屏原理、还有人机界面UI的实现等问题5。系统架构如图2-1所示。基本设计流程是使用STM32系列微控制器,采用FATFS文件系统方式读取SD卡中音乐文件数据,将所读取的数据流传输给CPU软件解码(helix解码库)解码编程PCM音频,通过I2S送到ADC
10、芯片 PCM1770音频输出驱动耳机实现音乐播放功能。液晶屏显示歌曲的实时播放状态,功能按扭 和控制歌曲的播放、停止、声音增大、减小等。同时,TFT触摸屏则用于功能按扭 和人机交换界面的输入。2.2系统架构图图 2-1 系统架构图2.3硬件模块2.3.1处理器一、芯片介绍。CortexM3是ARM公司最新推出的基于ARMv7体系架构的处理器核,具有高性能、低成本、低功耗的特点,专门为嵌入式应用领域设计。ARMv7 架构采用了Thumb2技术,它是在ARM的Thumb代码压缩技术的基础上发展起来的,并且保持了对现存ARM解决方案完整的代码兼容性。 Thumb2技术比纯ARM代码少使用31%的内存
11、,减小了系统开销,同时能够提供比Thumb技术高出38%的性能7。在中断处理方面,CortexM3集成了嵌套向量中断控制器NVIC(Nested Vectored Interrupt Controller)。NVIC是CortexM3处理器的一个紧耦合部分,可以配置1240个带有256个优先级、8级抢占优先权的物理中断,为处理器提供出色的异常处理能力。同时,抢占(Pre emption)、尾链(Tail chaining)、迟到技术(Late arriving)的使用,大大缩短了异常事件的响应时间。CortexM3异常处理过程中由硬件自动保存和恢复处理器状态,进一步缩短了中断响应时间,降低了软
12、件设计的复杂性。DP)或串行JTAG调试端口(SWJDP,允许JTAG或SW协议)使用。二、引脚图。图2-2 STM32F103ZET6 微控制器引脚分布图2.3.3 SD卡模块一、SD卡介绍。STM32微处理器 CPU ( STM32F103ZET6 )具有一个 SDIO 接口。SD/SDIO/MMC 主机接口可以支持 MMC 卡系统规范 4.2 版中的 3 个不同的数据总线模式:1 位(默认)、4 位和 8 位。在 8 位模式下,该接口可以使数据传输速率达到 48MHz,该接口兼容 SD 存储卡规范 2.0 版12。二、SD卡原理图。图2-3 SD卡接口电路.图2-4 SD卡上电识别流程图
13、2.3.3 LCD显示模块一、LCD控制器。LCD,即液晶显示器,因为其功耗低、体积小,承载的信息量大,因而被广泛用于信息输出、与用户进行交互,目前仍是各种电子显示设备的主流。因为 STM32 内部没有集成专用的液晶屏和触摸屏的控制接口,所以在显示面板中应自带含有这些驱动芯片的驱动电路(液晶屏和触摸屏的驱动电路是独立的),STM32 芯片通过驱动芯片来控制液晶屏和触摸屏。二、 FSMC框图结构。FSMC(flexible static memory controller),译为静态存储控制器。可用于STM32 芯片控制 NOR FLASH、PSRAM、和 NAND FLASH 存储芯片。我们是
14、使用FSMC的NORPSRAM 模式控制 LCD。其结构如图2-5所示。.图2-5 FSMC框图结构框图2.3.4触摸屏模块一、触摸屏感应原理。触摸屏常与液晶屏配套使用,组合成为一个可交互的输入输出系统。除了熟悉的电阻、电容屏外,触摸屏的种类还有超声波屏、红外屏。触摸屏的基本原理为分压,它由一层或两层阻性材料组成,在检测坐标时,在阻性材料的一端接参考电压 Vref,另一端接地,形成一个沿坐标方向的均匀电场。当触摸屏受到挤压时,阻性材料与下层电极接触,阻性材料被分为两部分,因而在触摸点的电压,反映了触摸点与阻性材料的 Vref 端的距离,而且为线性关系,而该触点的电压可由 ADC 测得。更改电场
15、方向,以同样的方法,可测得另一方向的坐标。二、TSC2046触摸屏控制器。TSC2046 是专用在四线电阻屏的触摸屏控制器,MCU 可通过 SPI 接口向它写入控制字,由它测得 X、Y 方向的触点电压返回给 MCU。如图2-6所示图2-6 TSC2046 与电阻屏的连接图2.3.5 PCM音频模块PCM1770器件是CMOS,单片,集成电路包括立体声数字 - 模拟转换器,耳机电路。数据转换器采用TI的增强型多级架构,它采用噪声整形和多值振幅量化,实现出色的动力性能和改进的耐时钟抖动。该PCM1770器件接受多个行业标准音频数据格式,16至24位数据,左对齐,I2S等,提供轻松连接到音频DSP和
16、解码器。采样率高达50 kHz的支持。全套用户可编程功能是通过一个3线串行控制端口,支持寄存器写入功能访问。原理接线图如图2-7所示图2-7 PCM1770连接图3 软件设计3.1 软件开发架构本设计由STM32最小系统,SD卡的读取模块,TFT控制模块,触摸屏模块,串口通信模块组成。将要解决SD卡的读取及使用FATFS系统对SD卡的操作、TFT液晶的控制及触摸屏原理、还有图形用户界面GUI的实现等问题10。架构如图3-1软件开发架构图图3-1软件开发架构图3.2 软件程序设计流程图开始系统初始化显示屏初始化触摸屏初始化SD卡初始化PCM1770初始化MP3播放程序触摸屏按下?播放模式设置读取
17、触摸屏数据,执行相应功能操作图3-2 程序设计流程图本系统的程序设计流程图如图3-2所示,工作流程是:STM32从SD卡中读取音乐文件数据,将所读取的数据流传输给CPU软件解码(helix解码库)解码编程PCM音频,通过I2S送到ADC芯片 PCM1770音频输出驱动耳机实现音乐播放功能。液晶屏显示歌曲的实时播放状态,功能按扭和控制歌曲的播放、停止、声音增大、减小等。同时,TFT触摸屏则用于功能按扭和人机交换界面的输入。音乐播放链路:图3-3 音乐播放链路3.3 软件代码结构为了使代码结构清晰,方便以后的维护,代码结构设计如下:在根目录I2S-MP3下,划分为七个文件夹,分别为STARTUP、
18、CMSIS、FWLB、USER、DOC、ff9和mp3。下面分别就七个文件夹的作用和结构进行说明,其代码目录树状结构如图3-4 所示。图3-4 整体工程代码结构对其进行分析:目录名称 目录说明 STARTUP 启动文件CMSIS M3系列通用的文件FWLB ST 片上资源外设的驱动文件USER 用户写的驱动文件DOC 工程说明文档 ff9 FATFS文件系统文件mp3 音乐播放相关文件详细代码结构一、STARTUP 目录如图3-5所示图3-5启动文件startup_stm32f10x_hd.s 为启动文件启动文件是任何处理器在上点复位之后最先运行的一段汇编程序。在我们编写的 c 语言代码运行之
19、前,需要由汇编为 c 语言的运行建立一个合适的环境,接下来才能运行我们的程序9。二、CMSIS 目录如图3-6所示图3-6 M3系列通用的文件文件名称 文件说明 core_cm3.c M3 核通用的源文件core_cm3.h M3系列通用的文件stm32f10x.h 对内存的操作封装文件system_stm32f10x.c 实现系统时钟操作文件三、FWLB 目录如图3-7所示图3-7 ST 片上资源外设的驱动文件 FWLB:用来存放 STM32 库里面的芯片上的所有驱动即ST 片上资源外设的驱动文件四、USER目录如图3-8所示图3-8用户写的驱动文件文件名称 文件说明 bsp_iis.c i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 STM32 单片机 MP3 播放 设计 毕业论文
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-4148373.html