0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于Arduino的音樂(lè)創(chuàng)作系統(tǒng)設(shè)計(jì)

jf_zGNBEhbi ? 來(lái)源:趣無(wú)盡 ? 2023-11-30 09:10 ? 次閱讀

這是一款簡(jiǎn)易的音樂(lè)創(chuàng)作系統(tǒng)。使用 Arduino 驅(qū)動(dòng)無(wú)源蜂鳴器和一排 LED 讓音樂(lè)起舞。它巧妙的使用了紅外遙控器作為琴鍵,通過(guò)編輯「樂(lè)譜」程序,來(lái)記錄和創(chuàng)作自己的音樂(lè)。

項(xiàng)目中還自帶了 Shape of you、Merry Christmas、Star wars、Game of Thrones 等經(jīng)典流行音樂(lè)和電影、游戲原聲!

材料清單

ae3df180-8f18-11ee-939d-92fbcf53809c.jpg

Arduino UNO R3 x 1USB 連接線 x 1跳線 x 21紅色LED x 4綠色LED x 4黃色LED x 2無(wú)源蜂鳴器 x 1紅外接收器和遙控器 x 1220Ω 限流電阻器 x 4面包板 x 1

接線

連接 LED 燈和無(wú)源蜂鳴器

ae49e652-8f18-11ee-939d-92fbcf53809c.jpg

ae642aa8-8f18-11ee-939d-92fbcf53809c.jpg

1、將 LED 燈和蜂鳴器安裝在面包板的同一行。

ae76d950-8f18-11ee-939d-92fbcf53809c.jpg

2、在 LED 燈左側(cè)的將 220Ω 限流電阻插入到面包板的 GND 中。

連接兩側(cè)的 LED 燈

ae88fedc-8f18-11ee-939d-92fbcf53809c.jpg

1、將兩側(cè)的 LED 燈連接在一起,同時(shí)安裝 5 個(gè)電阻。

ae9a2d4c-8f18-11ee-939d-92fbcf53809c.jpg

2、為了方便區(qū)分,使用與 LED 燈同色的跳線相連。

連接到 Arduino

aeab2200-8f18-11ee-939d-92fbcf53809c.jpg

1、使用五根跳線將 LED 燈的陽(yáng)極連接到引腳

2、3、4、5、6。2、將無(wú)源蜂鳴器的 GND 引腳連接到面包板的 GND 上。

3、將無(wú)源蜂鳴器的正極引腳連接到 Arduino 的引腳 8 上。

aec4ac70-8f18-11ee-939d-92fbcf53809c.jpg

4、將 IR 接收器插入面包板,并將信號(hào)引腳連接到面包板的引腳 9,將其 VCC 引腳連接到 5V 引腳,最后將 GND 引腳連接到面包板的 GND 上。

編程

庫(kù)的介紹

項(xiàng)目中會(huì)使用兩個(gè)額外的庫(kù):IRremote(用于處理紅外遠(yuǎn)程信號(hào)) 和 toneAC(生成音調(diào))。這些庫(kù)都需要安裝在 Arduino IDE 中。

aedececa-8f18-11ee-939d-92fbcf53809c.png

常量和變量

該代碼定義了一些常量和變量:

IR_RECEIVER_PIN:連接 IR 接收器的引腳。

LED_PINS:連接到 LED 燈的引腳陣列。

BUZZER_PIN:引腳連接到蜂鳴器。

IRrecv IRrecv(IR_RECEIVER_PIN):用于接收和解碼 IR 信號(hào)的對(duì)象。

decode_resultsresults:用于存儲(chǔ)解碼的 IR 信號(hào)的變量。

tones:與音調(diào)相對(duì)應(yīng)的一組頻率。

currentToneIndex:跟蹤當(dāng)前播放的音調(diào)。

lastCommandTime:記錄最后一個(gè) IR 命令的時(shí)間,避免快速重復(fù)的命令。

debounceDelay:防止由于噪聲或重復(fù)信號(hào)而快速觸發(fā)的延遲。

設(shè)置功能

aef8f692-8f18-11ee-939d-92fbcf53809c.jpg

設(shè)置功能初始化串行通信,設(shè)置 IR 接收器,將 LED 燈引腳配置為輸出,并執(zhí)行初始 LED 燈閃爍以便獲得視覺(jué)反饋。

循環(huán)功能

af06f60c-8f18-11ee-939d-92fbcf53809c.png

環(huán)路功能持續(xù)檢查輸入的 IR 信號(hào)。如果接收到一個(gè)信號(hào),會(huì)經(jīng)過(guò)足夠長(zhǎng)的去抖動(dòng)的時(shí)間,然后打印信號(hào)的十六進(jìn)制值,播放相應(yīng)的樂(lè)音,并更新最后的命令時(shí)間。此外,它還觸發(fā)了按順序和反向閃爍 LED 燈的功能。

播放音調(diào)功能

af1643e6-8f18-11ee-939d-92fbcf53809c.png

playTone 功能將特定的 IR 遠(yuǎn)程十六進(jìn)制值映射到相應(yīng)的音樂(lè)音調(diào)。當(dāng)找到一個(gè)有效值時(shí),它會(huì)通過(guò)蜂鳴器播放相關(guān)的音調(diào)。短暫暫停后,會(huì)移動(dòng)到下一個(gè)音調(diào)。如果你想播放歌曲,你可以在 Arduino 相關(guān)網(wǎng)站上檢索,你會(huì)找到一些不錯(cuò)的音樂(lè),例如生日快樂(lè)歌和超級(jí)瑪麗主題曲。

閃爍 LED 燈的功能

af2861e8-8f18-11ee-939d-92fbcf53809c.png

LED 燈有三種閃爍的功能:

1、fashLEDs:按模式閃爍 LED 燈,表示指示代碼的開(kāi)始。

2、flashLEDsSequence:按順序閃爍 LED 燈。

3、flashLEDsReverse:按相反方向閃爍 LED 燈。

af40c95e-8f18-11ee-939d-92fbcf53809c.jpg

播放歌曲

af4bc46c-8f18-11ee-939d-92fbcf53809c.jpg

現(xiàn)在就可以開(kāi)始播放歌曲啦,你已經(jīng)掌握了音符,可以隨意嘗試代碼中的聲音和音調(diào)。你也可以將自己喜歡的歌曲添加到代碼中。








審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 紅外遙控器
    +關(guān)注

    關(guān)注

    3

    文章

    133

    瀏覽量

    21613
  • 蜂鳴器
    +關(guān)注

    關(guān)注

    12

    文章

    888

    瀏覽量

    45781
  • 紅外接收器
    +關(guān)注

    關(guān)注

    2

    文章

    42

    瀏覽量

    19055
  • Arduino
    +關(guān)注

    關(guān)注

    187

    文章

    6455

    瀏覽量

    186346

原文標(biāo)題:基于 Arduino 的音樂(lè)創(chuàng)作系統(tǒng)

文章出處:【微信號(hào):趣無(wú)盡,微信公眾號(hào):趣無(wú)盡】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    音樂(lè)大模型掀起AI音樂(lè)創(chuàng)作熱潮,AI讓“一語(yǔ)成歌”成為可能

    電子發(fā)燒友網(wǎng)報(bào)道(文/李彎彎)隨著大模型技術(shù)的發(fā)展,AI音樂(lè)生成悄然而生。音樂(lè)生成是一個(gè)結(jié)合了人工智能技術(shù)和音樂(lè)創(chuàng)作的領(lǐng)域,它涵蓋了從基本的音頻信號(hào)模擬到復(fù)雜的AI音樂(lè)生成工具等多個(gè)方
    的頭像 發(fā)表于 05-30 01:01 ?3869次閱讀

    蘋(píng)果對(duì)其音樂(lè)創(chuàng)作app推送更新為iPhone、iPad和Mac設(shè)備提供新功能

    1月19日午間消息,蘋(píng)果公司宣布對(duì)其音樂(lè)創(chuàng)作app推送更新,為iPhone、iPad和Mac設(shè)備上的音樂(lè)創(chuàng)作者提供新功能。此次更新的軟件包括數(shù)碼音樂(lè)創(chuàng)作app GarageBand以及音樂(lè)
    發(fā)表于 01-19 17:13 ?727次閱讀

    AliveinVR開(kāi)發(fā)新功能:可以互相合作創(chuàng)作音樂(lè)

    Live的MIDI控制器,是一個(gè)專(zhuān)業(yè)級(jí)的音樂(lè)創(chuàng)作軟件。所有,它的功能非常強(qiáng)大,允許用戶(hù)在虛擬現(xiàn)實(shí)環(huán)境中剪輯、播放和混音。
    發(fā)表于 05-07 10:56 ?1502次閱讀

    VR技術(shù)在各領(lǐng)域應(yīng)用大盤(pán)點(diǎn)

    《Electronauts》近日上線Steam,《Electronauts》是由著名VR游戲工作室Survios開(kāi)發(fā),該游戲是一款音樂(lè)創(chuàng)作工具,用戶(hù)可以在VR中創(chuàng)作自己的音樂(lè)
    發(fā)表于 08-13 17:06 ?7008次閱讀

    音樂(lè)內(nèi)容產(chǎn)出無(wú)法滿(mǎn)足龐大的需求 AI創(chuàng)作來(lái)幫忙

    但其實(shí)音樂(lè)人工智能已經(jīng)不新鮮了,比如在國(guó)外,登錄Jukedeck的網(wǎng)站,只需輸入音樂(lè)類(lèi)型、心情、速度快慢、演奏樂(lè)器以及長(zhǎng)度等基本信息,就可以輕易創(chuàng)作出一首優(yōu)美的歌曲。Amper Music也提供類(lèi)似的
    發(fā)表于 12-06 10:55 ?1133次閱讀

    人工智能或?qū)⒔o音樂(lè)產(chǎn)業(yè)帶來(lái)更大的改變

    人工智能已幫助上百萬(wàn)位音樂(lè)創(chuàng)作者制作了上千萬(wàn)份音樂(lè)母帶,并將給音樂(lè)產(chǎn)業(yè)帶來(lái)更大的改變。
    的頭像 發(fā)表于 01-01 08:51 ?2289次閱讀

    人工智能是怎樣影響著音樂(lè)行業(yè)的

    人工智能已幫助上百萬(wàn)位音樂(lè)創(chuàng)作者制作了上千萬(wàn)份音樂(lè)母帶,并將給音樂(lè)產(chǎn)業(yè)帶來(lái)更大的改變。
    發(fā)表于 07-11 14:38 ?1566次閱讀

    區(qū)塊鏈技術(shù)可以解決音樂(lè)產(chǎn)業(yè)的哪些問(wèn)題

    音樂(lè)行業(yè)缺乏發(fā)展與過(guò)去幾十年的衰落有關(guān)。然而,過(guò)去幾年該行業(yè)出現(xiàn)了一些增長(zhǎng)。例如,2015年的音樂(lè)門(mén)票銷(xiāo)售額約為72億美元,預(yù)計(jì)到2021年將增至91億美元。新技術(shù)將幫助這個(gè)行業(yè)發(fā)展和改變,以幫助消除它所帶來(lái)的一些不良形象。音樂(lè)
    發(fā)表于 10-22 10:59 ?614次閱讀

    人工智能和音樂(lè)的融合 是AI技術(shù)在音樂(lè)創(chuàng)作領(lǐng)域的新突破

    人工智能和音樂(lè)的融合,是AI技術(shù)在音樂(lè)創(chuàng)作領(lǐng)域的新突破,這不再是音樂(lè)專(zhuān)業(yè)人士的固有權(quán)力,讓對(duì)音樂(lè)感興趣的人也能通過(guò)音樂(lè)AI
    發(fā)表于 12-16 11:00 ?5205次閱讀

    Arduino音樂(lè)

    電子發(fā)燒友網(wǎng)站提供《Arduino音樂(lè).zip》資料免費(fèi)下載
    發(fā)表于 10-19 10:50 ?0次下載
    <b class='flag-5'>Arduino</b><b class='flag-5'>音樂(lè)</b>

    如何用Arduino制作音樂(lè)

    電子發(fā)燒友網(wǎng)站提供《如何用Arduino制作音樂(lè).zip》資料免費(fèi)下載
    發(fā)表于 10-26 15:28 ?0次下載
    如何用<b class='flag-5'>Arduino</b>制作<b class='flag-5'>音樂(lè)</b>

    使用Arduino和處理的音樂(lè)

    電子發(fā)燒友網(wǎng)站提供《使用Arduino和處理的音樂(lè)燈.zip》資料免費(fèi)下載
    發(fā)表于 11-10 09:46 ?0次下載
    使用<b class='flag-5'>Arduino</b>和處理的<b class='flag-5'>音樂(lè)</b>燈

    Arduino搭建音樂(lè)仙女燈

    電子發(fā)燒友網(wǎng)站提供《Arduino搭建音樂(lè)仙女燈.zip》資料免費(fèi)下載
    發(fā)表于 11-18 11:54 ?0次下載
    <b class='flag-5'>Arduino</b>搭建<b class='flag-5'>音樂(lè)</b>仙女燈

    使用Arduino制作基于音樂(lè)的項(xiàng)目

    電子發(fā)燒友網(wǎng)站提供《使用Arduino制作基于音樂(lè)的項(xiàng)目.zip》資料免費(fèi)下載
    發(fā)表于 01-05 10:54 ?0次下載
    使用<b class='flag-5'>Arduino</b>制作基于<b class='flag-5'>音樂(lè)</b>的項(xiàng)目

    谷歌推新AI音樂(lè)工具,發(fā)布第六代TPU芯片

    谷歌近日宣布與YouTube合作,推出全新音樂(lè)工具M(jìn)usic AI Sandbox。這款A(yù)I音樂(lè)創(chuàng)作工具將與傳統(tǒng)AI音樂(lè)應(yīng)用如Suno等展開(kāi)競(jìng)爭(zhēng),為用戶(hù)提供更多元化的音樂(lè)創(chuàng)作體驗(yàn)。
    的頭像 發(fā)表于 05-16 09:44 ?329次閱讀