1、- i -本科毕业论文(20 届)基于 ARM 的多功能音频播放器设计所在学院专业班级 电子信息工程学生姓名指导教师完成日期- ii -基于 ARM 的多功能音频播放器设计目 录前言 .3第 1 章 绪论 .4第 1.1 节 开发背景 .4第 1.2 节 研究的目的和意义 .4第 1.3 节 本文所做的工作 .4第 2 章 方案分析 .5第 2.1 节 控制器与显示器 .52.1.1. 控制器选择 .52.1.2. 显示模块 .5第 2.2 节 存储器与音频芯片 .52.2.1. 存储器模块 .52.2.2. 音频解码模块 .6第 3 章 硬件设计 .7第 3.1 节 STM32 概述 .73
2、.1.1. STM32F103VCT6 概述 .73.1.2. STM32F103VCT6 外部电路 .8第 3.2 节 音频解码芯片 .93.2.1. 芯片封装 .93.2.2. 引脚定义 .103.2.3. 芯片特性 .123.2.4. 供电系统 .133.2.5. 读写操作时序 .13第 3.3 节 TFT 彩屏 .13第 3.4 节 SD 卡 .14第 4 章 软件设计 .16第 4.1 节 开发工具介绍 .164.1.1. Keil MDK 概述 .164.1.2. Keil MDK 介绍 .16第 4.2 节 程序框图 .17第 4.3 节 文件系统 .174.3.1. 概述 .1
3、74.3.2. FATFS 简介 .18第 4.4 节 重要函数分析 .184.4.1. MP3 功能的实现原理 .184.4.2. 读写命令函数 .19- iii -4.4.3. TFT-LCD 显示控制主函数 .20第 5 章 系统功能测试与分析 .22第 5.1 节 音乐播放功能测试 .225.1.1. MP3 歌曲播放测试 .225.1.2. MP3 下一首歌曲翻动测试 .225.1.3. 音量调节测试 .235.1.4. 播放多种音频格式 .23第 5.2 节 测试结果分析 .23结论 .24参考文献 .25致谢 .26附录 .27附录 1:实物照片说明 .28附录 2:部分源程序
4、.28第 1 页摘要嵌入式系统设计分为硬件设计和软件设计,前者是使用 32 位高性能 Cortex-M3 芯片作为主控制器,将音频信号解码芯片、外部电路、薄膜晶体管液晶显示器、安全数码卡、文件管理系统以及按键等模块,按照设计完成的多功能音频播放器原理图架构,实现一个完整的 MP3 播放器。后者使用 Keil MDK 软件提供一个完善的 C 程序环境,MDK 提供了大量的中间库。 用 C 语言编写播放器实现程序,在代码编译成功之后,下载代码到STM32 开发板上,程序先执行字库监测,然后对 VS1003B 进行 RAM 测试和正弦测试。当检测到 SD 卡根目录的 MUSIC 文件夹有效音频文件,
5、将正常解码和播放音乐。本播放器能够实现的功能丰富,如音乐播放、下一曲按键、音量调节、曲名显示等多种功能。音频文件存放在 SD 卡中,通过文件系统进行明确硬盘或分区管理。系统有按键控制方式,其中包括 STM 板模式选择键、电源开关、复位键、向下翻动键、音量调节双键,设计中使用了两个 LED 灯,其中 LED0 用于指示程序运行状态, LED1 用于指示 VS1003B 正在初始化。最终完成后实物系统能够完好的实现设计要求,播放的音乐质量优秀。关键词:解码芯片; Cortex-M3 单片机; SD 卡;音频播放器;文件系统 第 2 页AbstractEmbedded performance Cor
6、tex-M3 chip as main controller,audio signal decoding chip, the external circuit, a thin film transistor liquid crystal display, secure digital card, file management system and key module, according to the design completed multi-function audio player schematic architecture,the realization of a comple
7、te MP3 player. The latter is the use of Keil MDK software to provide a complete C programming environment, MDK provides a large number of intermediate base. Using C language to achieve the program player, after the code successfully compiled, download the code to the STM32 development board, the fir
8、st implementation of font monitoring program, then RAM test and sine test on VS1003B.When the MUSIC detects that the effective audio file folder SD card root directory, can the normal play music. The player can realize the function of the rich, such as a variety of functional music player, the next
9、song, volume control, the key display. Audio files stored on the SD card, clearly the hard disk and partition management through the file system. System has a key control mode, including the STM plate mode selection keys, the power switch, the reset button, scroll down key to adjust the volume, the
10、double bond. Two LED lamp design, the LED0 is used to indicate the program running state, LED1 is used to indicate the VS1003B is initializing. Finally after the completion of real system can well meet the design requirements, The music of outstanding quality.Keywords: decoder chip;Cortex-M3 microco
11、ntroller;SD card ;Audio player MP3 ;The file system第 3 页前言ARM 的取得的辉煌成就离不开优质的核心处理器配合优秀的开发工具和工具链,此成就是 ARM 开发者们辛勤劳动的结果。也正因此,ARM 的工具链工程师和 CPU 工程师强强联手,不懈耕耘呕心沥血为 ARM7TDMI 设计出了优化、精练和实用的内部结构,终于创造了 ARM7TDMI 的风姿无限的辉煌。全新的 Cortex-M3 处理器在化茧成蝶之后,身上处处闪烁着 ARM 体系结构艳丽惊人的新突破。它是基于研究前沿最好最优的 32 位ARMV7 架构,能够支持高度成功的 Thumb-
12、2 指令集,而且还带来了很多其他芯片望尘莫及的新特点。在它架构优秀,功能强大的同时,编程模型也更加简练,因而带来了越做越完美的良性循环。 随着电子科学技术的极速发展,电子类产品新旧更迭的愈来愈快。MP3 是在人们生活中占据重要地位一款消费类电子产品,其在多年前就打败了磁光碟储存媒体、激光唱机,在随身听市场独占鳌头。然而多年以来,音频播放器非但没有被淘汰的迹象,反而因为工业设计愈加丰富的新元素、愈加强大的功能,愈加时尚的造型,让音频播放器持久地焕发着勃勃生机和活力,取得市场上愈加辉煌的战绩。前十年,MP3 曾经风行一时,几乎人手一个。如果能自己做一个 MP3,想来对于很多 朋友来说,是一件十分值
13、得自豪的事情。基于此背景,本次设计要求设计并制作一个音频播放器,支持播放 WAV 、MP3 等常见音频格式,并具有乐曲名称显示、音量调制、下一首歌曲翻动、复位等多个功能。要求支持文件管理系统,能播放存在 SD 卡内的音频文件。本次设计选择的 VeryAI-STM32 开发板自带了一颗非常强劲的 MP3 解码芯片VS1003B,支持常见格式如 MP3/OGG/WMA/WAV/FLAC/AAC/MIDI 等。利用该芯片,可以实现许多种音频文件的播放。第 4 页第 1 章 绪论第 1.1 节 开发背景随着电子科技的向前推进,人们的精神享受需求愈加提高。在音乐影视享受方面,电视影院已经难以满足人们的视
14、听需求,能够随身携带的电子设备成了人们的首选,因此便携式电子设备获得了巨大的发展空间,工程师们对嵌入式媒体播放器的研究愈加广泛了,国内外已经发明了像音频播放器、平板电脑、智能手机等多种多样的便携式嵌入式媒体播放器。早前的电子产品只能播放单一或有限的几种文件格式,可扩展性相对较差;然而随着现在电子应用的持续增加,工程师们提出了更多种类的先进的压缩算法,使得媒体格式呈现多样化,在这种情况下,必然对嵌入式媒体播放器做出能够兼容更多种文件格式的要求。因此,通过对多种优秀的个人机播放器架构的借鉴与研究,本设计从软件方面着手,设计了一种具有良好可扩展性架构的嵌入式媒体播放器,能够通过操作界面使用音频播放器
15、。第 1.2 节 研究的目的和意义本文的目的是设计一个基于 ARM 芯片 Cortex-M3 的多功能音频播放器的设计,使用具有开发模块化、接口化、开放化的 ARM 开发板。单片机的应用经历了几十年的辉煌,如今正在逐步被高性能 32 位 ARM 微控制器所顶替,市场上大部分 8 位单片机开发板的局限性在于它们不具备开放性,不够模块化,因而限制了它的移植性导致其应用的局限性。工程师们提出来越来越多的优秀压缩算法,使得媒体应用日趋多样化,单片机运算速度低,支持格式也比较固定,功能单一,已经不能满足人们现在的视听需求了。因而,更高计算速率,更多功能的嵌入式媒体播放器的开发和研究必然会取代单片机成为人
16、们电子消费的新宠。第 1.3 节 本文所做的工作设计制作一个音频播放器的软件系统,并对播放器的代码进行编译和调试,保证代码正确无误;配置主机开发环境,对代码进行交叉编译;编译 BootLoader,嵌入式系统内核和文件系统;译播放器的驱动模块,满足根文件系统;行调试和测试,进行总结系统人机对话的功能;细描述了系统的硬件调试、各模块功能测试和系统性能测试,并给出测试结果。第 5 页第 2 章 方案分析第 2.1 节 控制器与显示器2.1.1. 控制器选择采用 STM32F103VCT6 作为主控制器。STM32F103VCT6 是 TI 公司推出的一款以Cortex-M3 为内核的 32 位高性
17、能单片机。拥有多达 68 个 IO 口。本设计对主控制器的速度有很高要求,速度对歌曲的播放效果有较大的影响,STM32F103VCT6 主频速度最大可以达到 72MHZ,这个值是单片机遥不可及的。此外,由于本系统需要至少 50 个以上 IO 口,而 51 单片机最多仅有 40 个,因而无法满足系统的要求。而且 STM32F103 的性能十分强大,成本较为低廉且具有体积小、功耗低等特点。它可以支持 ARM(32 位)/Thumb( 16 位)双指令集,可以很好的兼容 8位/16 位元器件。由于 ARM 使用多个寄存器同时工作,它执行指令的速度非常快,系统可以再在寄存器中完成大部分数据操作。每次的
18、指令长度是固定的,寻址方式也很灵活快速,因此它的执行效率较高。2.1.2. 显示模块TFT-LCD 是薄膜晶体管型液晶显示屏,正是人们口中的“真彩” (TFT) 。TFT 的每一个像素对应设置一个半导体开关,使得每个像素都可以通过点脉冲控制,节点都是独立的,能够连续控制,这种设计能够大大提高显示屏的反应速度,显示的色阶可以精确控制,因而 TFT 的色质更真。TFT 液晶显示屏的有很多优点,如屏幕亮度好、高对比度、颜色十分鲜艳,金无足赤人无完人,TFT 也存在着比较耗电和成本过高的缺点。TFT 液晶技术促进了手机彩屏的进步。现在的新手机大多都支持 65536 色显示,更有甚者支持 16 万色显示
19、,此时 TFT 的高对比度,色彩丰富的优势显得尤为重要了。第 2.2 节 存储器与音频芯片2.2.1. 存储器模块安全数码卡(SD)是基于半导体快闪记忆器的一种新的记忆设备,它被广泛地用于便携式的装置上,如个 PDA、数码照相机、多媒体播放器等。在 1999 年,日本松下主导了设计概念,由美国 SanDisk 公司和东芝公司参与合作,进行实质研发而完成一种基于半导体闪存工艺的存储卡。SD 卡是具有安全性好、容量大、性能强等许多特点的多功能存储卡,读写速度是 MMC 卡的 4 倍,能够达到 2M/秒。它是一种非易失性外部存储器,能够满足许多应用的设计要求, 其一般工作电压一般是 3.3V,并且对
20、电流有一定的要求。第 6 页SD 卡内存范围非常宽,小到几兆字节大到几十 GB,它为众多的应用提供了充足的外部存储空间。2.2.2. 音频解码模块VS1003B 是荷兰 VLSI 公司设计的一款高性能音频解码芯片。该芯片可以解码的音频格式有 MP3/WMA /WAV/MIDI 等,同时还能够完成 IMAADPCM 格式的编码,是一款性价比很高,值得工程师们收藏的芯片。VS1003B 各个单元组成: 高性能 DSP 处理器核VS_DSP 一枚, 0.5K 的数据 RAM 和 16K 的指令 RAM;通过 SPI 控制, 一个串口和 2个可用的通用 I/O 口,一个可变采样率立体声 ADC(支持咪
21、头/ 咪头 + 线路/2 线路) 、一个高性能立体声 DAC,一个音频耳机放大器。第 7 页第 3 章 硬件设计第 3.1 节 STM32 概述3.1.1. STM32F103VCT6 概述STM32F103VCT6 是 TI 公司制作的最新一代 Cortex-M3 内核 32 位微处理器,拥有令人赞叹的快速响应速度,为实现 MCU 的需要提供了廉价的平台、引脚数缩减、系统功耗降低以及卓越的计算能力和快速的中断响应速率。融合了 16 位及 32 位指令集功能的Thumb-2 技术,使得编程代码密度和性能处于一种最佳平衡状态。它主要特性如下:A、Cortex-M3 处理器内核,最高时钟频率可达 72MHz;B、256K Flash 、48K RAM;C、32 路直接内存访问控制器(DMA) ;D、8 个电机控制 PWM 发生单元;E、1 个看门狗定时器和 RTC 实时时钟、7 个定时器;F、2 个 SPI 总线模块、 2 个 I2C 总线模块、16、10 位通道 AD 转换单元;G、3 个 UART 通用串行模块、1 个 CAN 总线模块、10/100M 以太网控制器;H、100-LQFP 封装,多达 80 个可配置的 IO 口,管脚图如图 1-1。图 1-1 STM32F103VCT6 引脚图
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。