发 帖  
原厂入驻New

[经验] 【项目分享】教你用Arduino、Micro SD制作一个简单的音乐播放器

2019-9-27 17:20:29  4787 Arduino diy microSD
分享
3
在本项目中,我们来看一下如何用Arduino,micro SD卡读卡器来制作一个简单的音乐播放器。完成后,你可以用它来播放储存在SD卡中特定格式的音乐文件。

介绍

虽然这是一个精炼的小项目,不需要将其打造成功能强大的音乐播放器,但在Arduino其它支持库的帮助下,你可以结合其它扩展板来实现其它音乐播放上的功能。

一旦你做出来成品电路后,你还可以作出一些小改动为你的项目加入一些特别的音效。

SD卡模块如何与Arduino结合

我们刚才提到过,这个Arduino音乐播放器的重要组成成分是SD卡模块。音频文件会存储在SD卡中,而Arduino则负责读取并传输到扬声器里。
1.png
实物电路图

以下图片为该项目的实物电路图。注意该电路图只展示了Arduino Uno与SD卡模块间的连线,并加入了与Arduino相连的3个按钮,这几个按钮来控制其播放功能,比如播放/暂停,上一曲和下一曲等。

除此之外,还需要将一个扬声器与Arduino相连,电路图中就不做展示了。扬声器或耳机的正极与Arduino的9号引脚相连,负极接地即可。
2.png
所需元件

Arduino Uno(或任何Arduino开发板) x 1
SD卡模块 x 1
microsd卡 x 1
扬声器/耳机 x 1
按键 x 3
面包板 x 1
导向若干

Arduino音乐播放器的电路设计

之前有提到过,扬声器应与9号引脚与地相连。除此之外,我们还需要将SD卡模块和3个按键与Arduino相连。

既然Arduino UNO与SD卡模块之间是通过SPI通讯的,所以我们需要照以下方式来进行连接。

SD卡模块的CS引脚与引脚4相连。CS引脚可以与数字I/O引脚相连,但SD卡模块其它的SPI引脚就必须与Arduino上对应的SPI引脚相连。

SD卡模块上的SCK或SPI时钟引脚与Arduino的13号引脚相连。SD卡模块MOSI和MISO引脚应分别与Arduino UNO的11号和12号引脚相连。

电源引脚VCC与GND应和Arduino的+5V和GND相连。

除此之外还需要三个按键进行播放控制。播放/暂停按钮与引脚5相连,下一首按键与引脚6相连,上一首按键与引脚7相连。这些按键在程序类都以配置内部上拉。

音频文件与PCM库的准备

WAV文件
在进一步处理之前,我们还有几件事需要做好。第一件事就是将你的音频/音乐文件转换了WAV格式,也就是后缀名应为.wav。这是因为我们接下来要说的支持库只支持WAV格式的PCM音频。

所以,第一步就是进行格式转换,你可以使用任意音频转换软件或者在线转换。如果想要效果更好的话,可以对格式进行以下设置。

比特位:8位
采样率:16000Hz
声道:单声道
PCM格式:8位PCM unsigned

PCM库
第二件要事就是添加一个特殊的库,这是TMRh20开发的TMRpcm。你可以直接从官方github页面或从Arduino IDE里下架。

在Arduino IDE中,点击库管理器,在其中搜索“TMRpcm”,然后点击安装就可以了。

3.png
注意:本项目也需要SPI和SD库,但是这些已经属于内置库了。

Arduino音乐播放器的实现

硬件连接后,准备好音频文件,设置好Arduino IDE。你就可以用Arduino实现自己的音乐播放器了。

首先,将microSD卡格式化为FAT,然后将音频文件拷入进去。接下来将SD卡插入SD卡模块的卡槽里,整理好各项连线。

4.jpg

将Arduino UNO与电脑相连,然后再Arduino IDE中,使用附件的代码。在代码中需要自己做一些改动,在void song() 里面,需要将文件名改为你存入SD卡中那些歌曲的文件名。改动后上传代码即可。

默认情况下,Arduino一经重置便会自动播放第一首歌曲。你可以使用播放/暂停按钮来测试按键是否正常运转。

结论
1.一个简单的DIY Arduino音乐播放器项目,让你用Arduino UNO来播放音频文件。
2.该项目支持WAV文件,并可以控制音频的播放。
3.你可以用额外的放大器来增大输出功率,比如LM386等。
4.你还可以改进项目,比如加入更多音效,提升音质等。

Arduino音乐播放器.ino (1.67 KB, 下载次数: 68)


相关经验

王栋春 2019-9-27 20:39:06
了解一下   
回复

举报

听雨_b9f 2019-9-28 06:58:01
不错,谢谢分享
回复

举报

alonggege 2019-9-29 08:05:50
不错,很好的经验分享,辛苦麻烦了,欠缺这方面的资料,非常感谢。
回复

举报

迅得电子 2019-9-30 10:08:24
收藏一下,挺有趣的项目
回复

举报

沈56 2019-11-6 09:52:28
很好的分享,感谢楼主分享
回复

举报

jf_09475186 2019-11-18 18:11:23
收藏了,挺有意思的,动手试试
回复

举报

jf_09475186 2019-11-18 18:12:34
挺有意思的,准备动手试试看
回复

举报

CZJPID 2019-11-22 08:49:54
可以,有创意,感谢分享
回复

举报

lgz032 2019-11-26 15:18:50
很有创意的项目。。。。。。。。。。
回复

举报

评论

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
发经验
关闭

站长推荐 上一条 /7 下一条

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