OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 15602|回复: 13

ALIENTEK STM32开发板 MP3播放器(VS1053)资料

[复制链接]

98

主题

408

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1280
金钱
1280
注册时间
2010-12-14
在线时间
0 小时
发表于 2012-1-7 01:20:31 | 显示全部楼层 |阅读模式
ALIENTEK STM32开发板 MP3播放器实验
1 MP3 简介

    MP3 是MPEG Audio Layer3 的简称,其实MP3 就是一种音频压缩技术。通过这个技术,MP3 可以将音乐以1:10 甚至1:12 的压缩率压缩,从而大大降低了音乐文件的体积。不过MP3是一种有损压缩,但其压缩过后还是可以保持很好的音质。正是因为MP3 体积小、音质高的特点,使得MP3 格式的音乐在网络上大为传播。MP3 通过丢弃脉冲编码调制(PCM)音频数据中对人类听觉不重要的数据,从而达到了小得多的文件大小。一首60M 左右的WAV 无损音乐,压缩为MP3 后,一般只有3~4M 左右,由此可见MP3 大大节省了我们的存储空间。因为MP3 大行其道,各式各样的MP3 播放器也是层出不穷,这里我们介绍一款音频解码芯片,本章我们将利用这个解码芯片来播放MP3 等音乐。本章我们将通过ALIENTEK 的音频解码模块来做MP3 的播放。该模块的外观图如1 所示:





    图1 中,左边的是正面图,右边的是背面图。图中的主控芯片用的是VLSI 的VS1003。VS1003 是由荷兰VLSI 公司出品的一款单芯片MP3/WMA/MIDI/WAV 音频解码和ADPCM 编码芯片,它拥有一个高性能的DSP 处理器核VS_DSP,5K 的指令RAM,0.5K 的数据RAM,通过SPI控制,具有4 个通用IO 口和一个串口,芯片内部还带了一个可变采样率的ADC、一个18 位的立体声DAC 及音频耳机放大器。
VS1003 的特性如下:
●能解码 MPEG 1 和MPEG2 音频层 III(CBR+VBR+ABR);WMA 4.0/4.1/7/8/9
5-384kbps 所有流文件;WAV(PCM+IMAAD-PCM);产生MIDI/SP-MIDI 文件。
●对话筒输入或线路输入的音频信号进行IMAADPCM编码
●支持 MP3 和WAV 流
●高低音控制
●单时钟操作12..13MHz
●内部PLL锁相环时钟倍频器
●低功耗
●内含高性能片上立体声数模转换器,两声道间无相位差
●内含能驱动30 欧负载的耳机驱动器
●模拟,数字,I/O 单独供电
●为用户代码和数据准备的5.5KB片上RAM
●串行的控制,数据接口
●可被用作微处理器的从机
●特殊应用的SPI Flash引导
●供调试用途的UART接口
●新功能可以通过软件和4 GPIO 添加

VS1003 通过SPI 接口来接受输入的音频数据流,它可以是一个系统的从机,也可以作为独立的主机。这里我们只把它当成从机使用。我们通过SPI 口向VS1003 不停的输入音频
数据,它就会自动帮我解码了,然后从输出通道输出音乐,这时我们接上耳机就能听到所播放的歌曲了。ALIENTEK 音频解码模块是一个通用的解码模块,除了支持VS1003 以外,还可以支持VS1053。VS1053 的性能比VS1003 更加强劲,不过价格也相对较高。这里我们不做介绍,接来我们看看该模块的原理图,如图2 所示:



VS1003 通过7 根线同主控芯片连接,他们是:VS_RST、VS_DREQ、VS_MISO、VS_MOSI、VS_SCK、VS_XDCS、VS_XCS。
其中VS_RST 是VS1003 的复位信号线,低电平有效。VS_DREQ 是一个数据 请求信号,用来通知主机,VS1003 可以接收数据与否。VS_MISO、VS_MOSI 和VS_SCK 则是VS1003 的SPI接口他们在VS_XCS 和VS_XDCS 下面来执行不同的操作。VS1003 的SPI 支持两种模式:1,VS1002 有效模式(即新模式)。2,VS1001 兼容模式。
这里我们仅介绍VS1002 有效模式(此模式也是VS1003 的默认模式)。
详细介绍请下载文档

    关于VS1003 的介绍,我们就介绍到这里,更详细的介绍请看VS1003 的数据手册。接下来我们说说如何控制通过最简单的步骤,来控制VS1003 播放一首歌曲。
1) 复位 VS1003
这里包括了硬复位和软复位,是为了让VS1003 的状态回到原始状态,准备解码下一首歌曲。这里建议大家在每首歌曲播放之前都执行一次硬件复位和软件复位,以便更好的播放
音乐。
2) 配置 VS1003 的相关寄存器
这里我们配置的寄存器包括VS1003 的模式寄存器(MODE)、时钟寄存器(CLOCKF)、音调寄存器(BASS)、音量寄存器(VOL)等。
3) 发送音频数据
当经过以上两步配置以后,我们剩下来要做的事情,就是往VS1003 里面扔音频数据了,只要是VS1003 支持的音频格式,直接往里面丢就可以了,VS1003 会自动识别,并进行播放。不过发送数据要在DREQ 信号的控制下有序的进行,不能乱发。这个规则很简单:只要DREQ变高,就向VS1003 发送32 个字节。然后继续等待DREQ 变高,直到音频数据发送完。经过以上三步,我们就可以播放音乐了。这一部分就先介绍到这里。

2 硬件设计
本章实验功能简介:开机检测SD 卡和字库是否存在,如果检测无问题,则开始循环播放SD 卡根目录的歌曲,在TFTLCD 上显示歌曲名字、播放时间、歌曲总时间、歌曲总数
目、当前歌曲的编号等信息。KEY0 用于选择下一曲,KEY1 用于选择上一曲,而KEY_UP用于暂停/播放。本实验用DS1 来象征性的指示程序的运行(实际是指示一个簇的结束)。
本实验用到的资源如下:
1)STM32F103RBT6。
2)DS1。
3)TFTLCD 液晶模块。
4)SD 卡。
5)KEY0、KEY1、KEY_UP。
6)ALIENTEK MP3 解码模块
 除了 6,其他的几个部分,在之前的实例中都已经介绍过了,在此就不多说了,这里们重点看看ALIENTEK MP3 解码模块和ALIENTEK MiniSTM32 开发板的连接。其连接关系如表6 所示:


详细文档和代码见附件:



VS1053_cn.pdf

1.18 MB, 下载次数: 3507

ALIENTEK MP3播放器_AN1102.pdf

994.21 KB, 下载次数: 2367

ALIENTEK MINISTM32 扩展实验10 MP3播放器实验.zip

229.67 KB, 下载次数: 2186

MP3模块_SCH.pdf

97.55 KB, 下载次数: 2260

VS1003_cn.pdf

835.63 KB, 下载次数: 3551

希望openedv能给大家提供一个友好的技术交流平台!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

19

主题

302

帖子

2

精华

高级会员

Rank: 4

积分
727
金钱
727
注册时间
2011-11-22
在线时间
10 小时
发表于 2012-1-8 00:04:07 | 显示全部楼层
回复 支持 反对

使用道具 举报

42

主题

568

帖子

0

精华

高级会员

Rank: 4

积分
784
金钱
784
注册时间
2010-12-19
在线时间
5 小时
发表于 2012-3-15 16:05:43 | 显示全部楼层
VS1003和VS1053兼容吗?需要改动什么东西?

一个上蹿下跳的猴子~~~
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-3-15 17:09:02 | 显示全部楼层
兼容,VS1003的代码直接就可以在1053上面跑的.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

42

主题

568

帖子

0

精华

高级会员

Rank: 4

积分
784
金钱
784
注册时间
2010-12-19
在线时间
5 小时
发表于 2012-3-16 08:56:24 | 显示全部楼层
回复【4楼】正点原子:
---------------------------------
硬件外围电路和软件编程什么都不改,就是将VS1053的芯片用VS1003芯片代替,照样能用是吧。
一个上蹿下跳的猴子~~~
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-3-16 12:12:39 | 显示全部楼层
VS1053是1.8V的
1003是3.3V的.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

12

主题

216

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
金钱
313
注册时间
2011-4-7
在线时间
3 小时
发表于 2012-3-16 14:08:12 | 显示全部楼层
玩过了!!
回复 支持 反对

使用道具 举报

42

主题

568

帖子

0

精华

高级会员

Rank: 4

积分
784
金钱
784
注册时间
2010-12-19
在线时间
5 小时
发表于 2012-3-16 17:00:23 | 显示全部楼层
回复【6楼】正点原子:
---------------------------------
就是将供电电压VCC,由3.3V改为1.8V就OK了,是吧。
一个上蹿下跳的猴子~~~
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2012-3-16 21:58:19 | 显示全部楼层
嗯.
回复 支持 反对

使用道具 举报

2

主题

16

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2012-5-15
在线时间
0 小时
发表于 2012-8-7 09:56:46 | 显示全部楼层
顶贴  VS1003代理 QQ2314116323
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
21
金钱
21
注册时间
2013-4-26
在线时间
0 小时
发表于 2013-4-26 09:32:13 | 显示全部楼层
原子哥,能发个完整的电路图给我吗 新手 109935440@qq.com
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-4-26 10:32:03 | 显示全部楼层
回复【11楼】XFZC:
---------------------------------
楼主的资料就有.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2014-6-9
在线时间
0 小时
发表于 2014-6-9 16:01:52 | 显示全部楼层
谢谢楼主分享的资料
回复 支持 反对

使用道具 举报

1

主题

4

帖子

0

精华

新手入门

积分
28
金钱
28
注册时间
2015-10-23
在线时间
0 小时
发表于 2015-10-28 10:35:17 | 显示全部楼层
该mp3模块支持stm32f407系列吗?如果不支持的话,stm32f407有对应的mp3模块支持吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-19 06:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表