| 
 
 
在我们的项目中添加声音或音乐总是会使其看起来更酷一些,听上去更有吸引力。特别是如果您使用的是Arduino开发板,并且有很多空余的引脚,只需要添加一个SD卡模块和一个普通的扬声器即可轻松添加音效。在本文中,我将向您展示使用您的Arduino开发板来播放音乐以及添加音效是多么容易。感谢Arduino社区开发了一些库,可以使用快速而简便的方式实现。。我们也在这里使用了LM386芯片进行放大和噪声消除。 
 
需要的硬件: 
1.  Arduino UNO开发板 
2.  SD卡读卡器模块 
3.  SD卡 
4.  LM386音频放大器芯片 
5.  10uf电解电容 
6.  100uf电解电容 
7.   1K和10K电阻 
8.  按键 
9.  面包板 
10.  连接导线 
 
准备WAV音频文件: 
为了使用Arduino开发板从SD卡播放声音,我们需要.wav格式的音频文件,因为Arduino开发板可以播放wav特定格式的音频文件。要制作一个arduino mp3播放器,使用arduino开发板有很多可用的mp3扩展板。或者为了在arduino中播放mp3文件,有些网站可以用来将您计算机上的任何音频文件转换成特定的WAV文件。 
 
所以要将任何音频文件转换为wav格式,请按照以下步骤操作: 
 
步骤2:Arduino可以播放下列格式的wav文件。稍后您可以尝试各种设置,但以下这些设置经过验证是质量最好的。 
| 
位分辨率 | 
8位 |  | 
采样率 | 
16000 Hz |  | 
音频频道 | 
单 |  | 
PCM格式 | 
PCM无符号8位 |  
 
步骤3:在网站上点击“choose file”,选择要转换的文件。然后进入上述设置。一旦完成,它应该看起来类似下面的图像: 
 
 
 
 
 
步骤4:现在,点击“Convert File”,您的音频文件将转换为.Wav文件格式。转换完成后也会自动下载。 
 
步骤5:最后格式化您的SD卡,并保存.wav音频文件。在添加此文件之前,请确保格式化。还要记住您的音频文件的名称。同样地,您可以选择任何四个音频,并使用名称1、2、3和4(名称不应更改)保存这些文件。我转换了四首歌,并将它们保存为1.wav、2.wav、3.wav和4.wav,如下所示。 
 
 
电路原理和硬件: 
该Arduino音频文件播放器的电路原理图很简单。完整的电路图如下图所示。 
 
 
我们知道我们的音频文件保存到SD卡中,因此我们将一个SD卡读卡模块连接到Arduino接口。 Arduino和SD卡使用SPI通信协议进行通信。因此,模块连接到Arduino的SPI引脚接口,如上图所示。在下表中进一步列出。 
| 
Arduino | 
SD卡模块 |  | 
+5V | 
VCC |  | 
GND | 
GND |  | 
12引脚 | 
MISO(主进从出) |  | 
11引脚 | 
MOSI(主出从进) |  | 
13引脚 | 
SCK(同步时钟) |  | 
4引脚 | 
CS(芯片选择) |  
 
现在,Arduino将可以从SD卡读取音乐文件,并将其在9引脚上播放。但是由Arduino的9脚上产生的音频信号不会发出声音。因此,我们使用LM386低电压音频放大器IC进行放大。 
上图所示的放大器设计为增益为200,Vdd(引脚6)由Arduino的5V引脚供电。如果要增加/减少音量,您可以增加/减少提供给此引脚的电压。它可以最大承受15V。点击此链接了解更多关于LM386的200增益放大配置。 
我们还有两个按钮连接到Arduino的引脚2和3。这些开关分别用于播放歌曲的下一曲目,和播放/暂停音乐。我已经测试过这些按钮了,您可以随时播放歌曲。 
 
您可以将此电路完全组装在面包板上,如下图所示 
 
 
编程Arduino: 
一旦我们准备好了硬件和SD卡,我们就差一步来播放这些歌曲了。将SD卡插入SD卡模块中,然后按照以下步骤操作。 
步骤1:如前所述,我们将在该项目中使用库。库文件的链接如下。点击它,选择“Clone or download”,然后选择下载保存ZIP。 
 
步骤2:通过选择Sketch-> Include Library - > Add .ZIP Library(如下所示),然后选择我们刚刚下载的ZIP文件,将此Zip文件添加到Arduino IDE中。 
 
 
步骤3:本文末尾给出了arduino音乐播放器项目的完整程序,只需将其复制并粘贴到Arduino程序中即可。现在,点击上传并准备播放你的音频文件。 
 
程序很容易看懂,它们有注释行。但是,我在下面也解释了TMRpcm库的重要函数。 
 
播放音频文件: 
您可以使用以下代码播放SD卡模块内存储的Wav格式的任何音频。 
复制代码
music.play( “3.wav”);// object name.play(“FileName.wav”); 
您可以在要播放音频的地方使用该代码行。 
 
暂停音频文件: 
要暂停音频文件,您可以简单地调用下面的代码行。 
复制代码
music.pause();//objectname.pause(); 
 
快进/快退音频: 
没有直接的方式来快进或快退音频文件,但您可以使用下面的代码行在特定时间播放歌曲。这可以结合使用一些其他代码实现快进/快退音频。 
复制代码
music.play( “2.wav”,33); //从第33秒播放歌曲//objectname.play("Filename.wav",time in second); 
 
设置音频的质量: 
库给我们两个品质的音乐,一个是作为普通模式,另一个是2X采样。 
复制代码
music.quality(0); //正常模式music.quality(1); // 2X采样模式 
 
设置音频音量: 
是的,您可以通过软件来控制音频的音量。您可以使用下面的代码行简单地设置音量。较高的音量往往影响音频的质量,因此尽可能使用硬件控制。 
复制代码
music.setVolume(5); //播放歌曲在音量5//objectname.setVolume(Volume level); 
 
Arduino音乐播放器: 
在编程Arduino之后,只需按下连接到2引脚的按钮,您的Arduino将为您播放第一首歌曲(保存为1.wav)。现在,您可以再次按下按钮将您的曲目更改为要播放的下一首歌曲2.wav。同样,您可以导航到所有四首歌曲。 
您还可以通过按连接到3引脚的按钮来播放/暂停歌曲。按一下可暂停歌曲,然后再次按下可从停止的位置播放歌曲。 
 
希望你能喜欢这个项目。现在释放您的创造力,在您的项目中使用它们。你可以做一个说话时钟、语音助手、说话机器人、语音警报安全系统等等。如果你有任何问题,可以通过论坛与我联系。 
 | 
没有评论:
发表评论