基于stm32单片机的mp3播放器_毕业设计(编辑修改稿)内容摘要:

AP)来实现的。 DAP 端口可以作为串行线调试端口( SWDP)或串行 JTAG 调试端口( SWJDP,允许 JTAG 或 SW协议)使用。 其中 SWDP 只需要时钟和数据2 个引脚,实现低成本跟踪调试,避免使用多引脚进行 JTAG 调试,并全面支持 RealView编译器和 RealView 调试产品。 此外 CortexM3 还具备高度集成化的特点,大大减小了芯片面积,内部集成了许多紧耦合系统外设,合理利用了芯片空间,使系统满足下一代产品的控制需求。 其引脚分布如 图 22 所示 : 图 22 STM32F103VCT6 微控制器引脚分布图 音频解码芯片 VS1003 是一个单片 MP3/WMA/MIDI 音频解码器和 ADPCM 编码器。 它包含一个高性能,自主产权的低功耗 DSP 处理器核 VS_DSP4,工作数据存储器,为用户应用提供 5KB 的指令 RAM 和 的数据 RAM。 串行的控制和数据接口, 4 个常规用途的 I/O 口,张 蓝凯 基于 STM32 的 MP3 播放器设计 6 一 个 UART,也有一个高品质可变采样率的 ADC 和立体声 DAC,还有一个耳机放大器和地线缓冲器, 芯片原理图如图 23所示。 其具体特性如下: ( 1) 能解码 MPEG 1 和 MPEG2 音频层 III( CBR+VBR+ABR); WMA ; WAV(PCM+IMAADPCM)。 产生 MIDI/SPMIDI 文件。 ( 2) 对话筒输入或线路输入的音频信号进行 IMAADPCM 编码。 支持 MP3 和WAV 流。 ( 3) 高低音控制 , 低功耗 , 单时钟操作 12~ 13MHz, 内 部 PLL 锁相环时钟倍频器。 ( 4) 内含高性能片上立体声数模转换器,两声道间无相位差。 内含能驱动 30 欧负载的耳机驱动器 , 模拟,数字, I/O 单独供电。 ( 5) 为用户代码和数据准备的 片上 RAM, 串行的控制,数据接口 , 可被用作微处理器的从机。 ( 6) 特殊应用的 SPI Flash 引导 , 供调试用途的 UART 接口 , 新功能可以通过软件和 4 GPIO 添加。 图 23 VS1003芯片 原理图 TFT 电阻式触摸屏 TFT 电阻式触摸屏由 TFT 显示屏、驱动 IC( ILI9320 控制 TFT)、 触摸屏 、触摸 屏控制器 (ads7843 控制触摸屏电压的转换 )等组成。 本设计采用的 TFT 显示屏是 寸 TFT[240*320]26 万色彩屏模块 ,支持 SD 卡,支持 DATAFLASH,支持 16 位 /8位模式,模块可以 180 度任意旋转使用。 贺州学院本科生毕业论文(设计) 7 ILI9320 是一款包括一个 720 通道的源极驱动器,一个 320通道门驱动器, 172,800 字节数据 RAM,能驱动 240RGBx320TFT 液晶显示器的驱动芯片。 电阻式触摸屏工作原理如下: 电阻式触摸屏利用压力感应进行控制,它的主要部分是一块与显示器表面配合的电阻薄膜屏,这是一种多层的复合薄膜,它以一 层玻璃或硬塑料平板作为基层,表面图有一层透明氧化金属导电层,上面盖有另外一层氧化金属导电层,在他们之间有许多细小的(小于 1/1000 英寸)透明隔离点把两层导电层隔开绝缘。 当手指触摸屏幕时,两层导电层在触摸点位置就有了接触,控制器侦测到这一接触并计算出( X, Y)的位置,再根据模拟鼠标的方式运作。 图 24 电阻式触摸屏的原理图 触摸屏控制芯片为 ADS7843, ADS7843 是一个内置 12 位模数转换、低导通电阻模拟开关的串行接口芯片。 供电电压 ~5 V,参考电压 VREF 为 1 V~+VCC,转换电压的输入范围为 0~ VREF,最高转换速率为 125 kHz,其引脚功能如 表 25 所示。 ADS7843典型应用电路 如图 图 26所示。 表 25 ADS7843的引脚功能表 张 蓝凯 基于 STM32 的 MP3 播放器设计 8 图 26 ADS7843典型应用电路 SD 卡 SD 卡( Secure Digital Memory Card)是一种为满足安全性、容量、性能和使用环境等各方面的需求而设计的一种新型存储器件, SD卡允许在两种模式下工作,即 SD模式和 SPI 模式,本系统采用 SPI 模式。 本小节仅简要介绍在 SPI 模式下, STM32 处理器如何读写 SD卡。 SD 卡如果采用 FAT16 文件格式,按照其不同的特点和作用大致可分为 5 部分: MBR区、 DBR 区、 FAT 区、 FDT 区和 DATA 区。 由于 SD卡一般不做引导盘,一般也不分区,因此通常无 MBR区,直接从 DBR 区开始。 下面对后面四 个区分别作简介 : ( 1) DBR 区 内容为系统引导记录,它包括一个引导程序和一个被称为 BPB( Bios Parameter Block)的本分区参数记录表。 引导程序的主要任务是当 MBR 将系统控制权交给它时,判断本分区根目录是否有操作系统引导文件,如果有则将其读入内存,并把控制权交给该文件。 BPB 参数块记录着本分区的起始扇区、结束扇区、文件存储格式、根目录大小、 FAT 个数,分配单元大小等重要参数。 ( 2) FAT 区 该区内容为文件分配表, FAT16 文件系统进行空间分配的最基本单位是簇。 文件分配表反映了 SD卡所有簇的使用情况,通过查文件分配表可以得知任一簇的使用情况。 对于 FAT16 来说, FAT 表每项占用两个字节。 FAT表的第一项通常为 FFF8H。 对于其它贺州学院本科生毕业论文(设计) 9 项,若其值为 0000H 表示可用; FFF7H 表示为坏簇; FFF8HFFFFH 之间表示该簇为某文件或目录的最后一个簇, FFF0HFFF6H 之间为保留值;其它值则指示下一个簇的簇号。 ( 3) FDT区 该区的内容为文件目录表, FAT 文件系统的一个重要思想是把目录(文件夹)当 作一个特殊的文件来处理, FAT32 甚至将根目录当作文件处理。 FAT分区中所有目录文件,实际上可以看作是一个存放其它文件(文件夹)入口参数的数据表。 因此,目录占用空间的大小并不等同于其下所有数据的大小,但也不等于 0,通常是占很小的空间。 其具体的存储原理是:不管目录文件所占空间为多少簇,一簇为多少扇区、多少字节;系统都会以 32个字节为单位,进行目录文件所占簇的分配。 ( 4) DATA 区 该数据区存放文件的内容, SD 卡所占用的空间绝大部分为此部分。 如果文件长度大于一个簇的大小,需要多个簇存放该文件,这些放通过 FAT 链表串连起来。 SD 卡内部结构及引脚如 图 27 所示 图 27 SD卡内部结构及引脚 SD 卡主要引脚和功能为: CLK:时钟信号,每个时钟周期传输一个命令或数据位,频率可在 0~ 25MHz 之间变化, SD 卡的总线管理器可以不受任何限制的自由产生 0~ 25MHz 的频率。 CMD:双向命令和回复线,命令是一次主机到从卡操作的开始,命令可以是从主机到单卡寻址,也可以是到所有卡;回复是对之前命令的回答,回复可以来自单卡或所有卡; DAT0~ 3:数据线,数据可以从卡传向主机也可以从主机传向卡。 张 蓝凯 基于 STM32 的 MP3 播放器设计 10 SD 卡以命令形式来控制 SD 卡的读写等操作。 可根据命令对多块或单块进行读写操作。 在 SPI 模式下其命令由 6 个字节构成,其中高位在前。 SD 卡共支持三种传输模式: SPI 模式(独立序列输入和序列输出), 1 位 SD 模式(独立指令和数据通道,独有的传输格式), 4 位 SD 模式(使用额外的针脚以及某些 重新设置的针脚。 支持四位宽的并行传输)低速卡通常支持 0~400 千比特 /秒数据传输率,采用 SPI 和 1位 SD传输模式。 高速卡支持 0 ~ 100 兆比特 /秒数据传输率,采用4 位 SD 传输模式;支持 0– 25 兆比特 /秒 ,采用 SPI和 1位 SD 模式。 3 系统软 件 设计 系统软件开发平台 STM32 系列微控制器采用 ARM 公司最新的 CortexM3 内核。 CortexM3 是 ARM 公司推出的最新的针对微控制器应用的内核,提供业界领先的高性能和低成本的解决方案,将成为 MCU 应用的热点和主流。 但是目前能够支持 CortexM3 架构的开发工具很少,包括 SDT、 等开发工具都不支持。 MDK是目前性价比最高的支持 CortexM3 处理器的开发工具。 故本次设计的软件平台是建立在软件 MDK 之上的。 贺州学院本科生毕业论文(设计) 11 程序设计流程图 图 31 程序设计流程图 本系统的 程序设计流程图如图 31所示, 工作过程大致为: STM32 通过从 SD 卡中读取 MP3 文件,将所读取的数据流发送到 VSl003 解码 器 中 解码 播放; TFT 触摸屏则用于显示歌曲的实时播放状态、歌词的显示 、 功能按。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。