簡(jiǎn)介
使用Arduino Uno制作自己的音樂(lè)播放器是一個(gè)令人興奮的小項(xiàng)目。這個(gè)項(xiàng)目不一定需要是一個(gè)強(qiáng)大的音樂(lè)播放器,而是要檢查Arduino Uno或任何其他Arduino板在支持庫(kù)文件的幫助下播放音頻文件的能力,這要?dú)w功于Arduino社區(qū)的出色工作。/span》
一旦你有一個(gè)使用Arduino Uno,microSD卡模塊(適配器),microSD卡和揚(yáng)聲器或耳機(jī)的電路,你可以在你的項(xiàng)目中實(shí)現(xiàn)幾個(gè)聲音效果,在正常情況下不可能。
As前面提到過(guò),基于Arduino的音樂(lè)播放器項(xiàng)目的主要組件是Arduino板和SD卡模塊/適配器。存儲(chǔ)在microSD卡中的音頻文件(稍后有關(guān)于音頻文件的更多信息)由Arduino在SD卡模塊的幫助下讀取并通過(guò)揚(yáng)聲器播放。
因此,它是了解如何將SD卡模塊與Arduino連接以及如何從/向microSD卡讀取/寫(xiě)入數(shù)據(jù)非常重要。
我已經(jīng)實(shí)現(xiàn)了如何將SD卡模塊與Arduino Uno連接的教程。首先檢查該項(xiàng)目,如果可能,請(qǐng)?jiān)诶^續(xù)此項(xiàng)目之前嘗試實(shí)施該項(xiàng)目。
Arduino SD卡模塊接口
電路圖
下圖顯示了項(xiàng)目的電路圖。請(qǐng)注意,電路圖僅顯示Arduino Uno和SD卡適配器之間的連接以及連接到Arduino的三個(gè)按鈕,它們控制播放功能,如播放/暫停,上一曲目和下一曲目。
此外,揚(yáng)聲器連接到Arduino,但未在電路圖中顯示。 Arduino和揚(yáng)聲器(或耳機(jī))之間的連接是揚(yáng)聲器/耳機(jī)的正極連接連接到Arduino的引腳9,負(fù)極引腳連接到GND。
所需組件
Arduino UNO(或任何Arduino Board)
SD卡適配器/模塊
microSD卡
小型揚(yáng)聲器
3 x按鈕
面包板
連接線(xiàn)
使用Arduino的音樂(lè)播放器的電路設(shè)計(jì)
如前所述,演講者是連接到引腳9和GND(電路圖中未顯示)。另外,我們需要連接SD卡模塊和3個(gè)按鈕。
由于Arduino UNO和SD卡模塊之間的接口是通過(guò)SPI通信,連接的連接如下。
SD卡模塊的CS引腳連接到引腳4.片選(CS)引腳可以連接到任何數(shù)字I/O引腳,但SPI的其余部分SD卡模塊的引腳必須連接到Arduino的相應(yīng)SPI引腳。
SD卡的SCK或SPI時(shí)鐘引腳連接到Arduino的引腳13。 SD卡模塊的MOSI和MISO引腳分別連接到Arduino UNO的引腳11和12。
電源引腳即VCC和GND連接到+ 5V和GND Arduino。
此外,我還使用了3個(gè)按鈕來(lái)控制音樂(lè)播放。播放/暫停按鈕連接到引腳5,下一曲目按鈕連接到引腳6,上一曲目按鈕連接到Arduino的引腳7。所有這些按鈕都在程序中配置了內(nèi)部上拉。
準(zhǔn)備音頻文件和PCM庫(kù)
WAV文件
在繼續(xù)進(jìn)行之前,您需要注意幾件事。第一個(gè)是將音頻/音樂(lè)文件轉(zhuǎn)換為WAV格式,即它們應(yīng)該是.wav文件。這是因?yàn)椋医酉聛?lái)會(huì)提到的支持庫(kù)只支持WAVE文件格式的PCM音頻(.wav)。
所以,你的第一步是轉(zhuǎn)換你的mp3文件到.wav文件。為此,您可以使用任何音頻轉(zhuǎn)換器軟件,VLC Media Player中的轉(zhuǎn)換選項(xiàng)或任何在線(xiàn)工具。我將使用名為ONLINE-CONVERT.com的在線(xiàn)工具。它支持多種文件,如存檔,音頻,文檔等。
轉(zhuǎn)到網(wǎng)站的音頻轉(zhuǎn)換器選項(xiàng)并選擇“轉(zhuǎn)換為WAV”選項(xiàng)或簡(jiǎn)單使用此URL:在線(xiàn)音樂(lè)轉(zhuǎn)換器。
上傳mp3文件并在可選設(shè)置中設(shè)置以下內(nèi)容:
更改位分辨率:8位
更改采樣率:16000 Hz
更改音頻通道:?jiǎn)温暤?/p>
PCM格式:PCM無(wú)符號(hào)8位
完成上述更改后,點(diǎn)擊開(kāi)始轉(zhuǎn)換,轉(zhuǎn)換后的文件將自動(dòng)下載。
PCM庫(kù)
第二個(gè)重要的是添加一個(gè)由TMRh20開(kāi)發(fā)的名為T(mén)MRpcm的特殊庫(kù)。您可以直接從官方GitHub頁(yè)面下載它,也可以直接在Arduino IDE中添加它。
在Arduino IDE中,轉(zhuǎn)到Tools Manage Libraries 。..并搜索“TMRpcm” “然后點(diǎn)擊安裝。
注意:此項(xiàng)目還需要SPI和SD庫(kù)。這些是內(nèi)置庫(kù)。
代碼
基于Arduino的工作音樂(lè)播放器
如上所述進(jìn)行硬件連接后,準(zhǔn)備好音頻文件,設(shè)置Arduino IDE(安裝庫(kù)),您就可以實(shí)現(xiàn)了使用Arduino自帶音樂(lè)播放器。
首先,使用SD存儲(chǔ)卡格式化等任何格式化軟件將microSD卡格式化為FAT,并將所有WAV音頻文件復(fù)制到卡上。將卡插入SD卡模塊上的插槽并進(jìn)行所有必要的連接(如果尚未進(jìn)行)。
將Arduino UNO連接到計(jì)算機(jī)和Arduino IDE,使用上面給出的代碼。在代碼中,進(jìn)行必要的更改,即在void song()函數(shù)中,將文件名替換為SD卡中的歌曲名稱(chēng)。
我已將所有音頻文件命名如song1.wav,song2.wav等,并在函數(shù)中使用相同的名稱(chēng)。在進(jìn)行必要的更改后,上傳代碼。
默認(rèn)情況下,一旦Arduino重置,第一首歌曲(即我的song1.wav)將自動(dòng)播放。您可以使用播放/暫停按鈕來(lái)播放,暫停或暫停當(dāng)前曲目。使用“下一步”按鈕播放下一首曲目,使用“上一首”按鈕播放上一曲目。
結(jié)論
這里實(shí)現(xiàn)了一個(gè)名為音樂(lè)播放器的簡(jiǎn)單DIY項(xiàng)目,使用Arduino,你可以使用Arduino UNO播放音頻文件。
這個(gè)項(xiàng)目支持WAV音頻文件和還可以控制音頻的播放。
您可以使用LM386 IC等附加放大器來(lái)提高輸出功率。
使用此項(xiàng)目,您可以在Arduino項(xiàng)目中實(shí)現(xiàn)音頻效果。
-
播放器
+關(guān)注
關(guān)注
5文章
411瀏覽量
37932 -
microSD
+關(guān)注
關(guān)注
1文章
50瀏覽量
16115 -
Arduino
+關(guān)注
關(guān)注
189文章
6492瀏覽量
190161
發(fā)布評(píng)論請(qǐng)先 登錄
MAXQ1741用于磁卡讀卡器的DeepCover安全微控制器技術(shù)手冊(cè)

MAXQ1743 DeepCover安全磁卡讀卡器IC技術(shù)手冊(cè)

MFRC522非接觸式讀卡器IC中文手冊(cè)
【開(kāi)源分享】用ESP32復(fù)刻一個(gè)iPod :便攜式音樂(lè)播放器Tangara

Made with KiCad:Tangara 便攜式音樂(lè)播放器
液顯ID讀卡器C#小程序開(kāi)發(fā)

畢業(yè)設(shè)計(jì)競(jìng)賽選題推薦 | 嵌入式Linux應(yīng)用之音樂(lè)播放器項(xiàng)目實(shí)戰(zhàn)(含文檔及源碼)

海貝R1便攜音樂(lè)播放器開(kāi)箱

TRF7970A NFC讀卡器天線(xiàn)多路復(fù)用

變速播放器1和2的區(qū)別
為什么好的播放器還要配解碼器
數(shù)字播放器和解碼器

評(píng)論