資料介紹
描述
訪問(wèn)我的 Github:https ://github.com/jas21RICE/ENGI301/tree/master/project_01
背景:
該項(xiàng)目的目標(biāo)是使用小型 PocketBeagle 板創(chuàng)建一種易于制作且易于使用的樂(lè)器。作為一名音樂(lè)家,我一直喜歡在我周?chē)氖挛镏袑ふ乙魳?lè),并盡我所能創(chuàng)作音樂(lè),但現(xiàn)在我已經(jīng)成功地制作了可以制作音樂(lè)的東西!
研究與規(guī)劃
在我開(kāi)始開(kāi)發(fā)這個(gè)項(xiàng)目之前,我首先必須弄清楚我想在合成器上看到什么樣的功能。我從其他幾個(gè)Hackster.io項(xiàng)目中汲取了一些靈感來(lái)實(shí)現(xiàn)我要實(shí)現(xiàn)的功能:
? https://www.hackster.io/team-sunshine/keychain-synth-376159
? https://www.hackster.io/95016/keyboard-melodies-9ac4ab
? https://www.hackster.io/the-ohmonics/the-ohminator-analog-synthesizer-142dc7
? https://www.hackster.io/etiennedesportes/pocket-synthesizer-785b50
在我仔細(xì)閱讀其他項(xiàng)目以獲得靈感后,我想出了一個(gè)我希望在設(shè)備上看到的功能列表:
1. 現(xiàn)場(chǎng)音效,就像任何鍵盤(pán)或鋼琴一樣
2.多倍頻程支持
3.集成節(jié)拍器
4.錄音/循環(huán)播放功能
定義了我的基本功能后,我開(kāi)始規(guī)劃實(shí)現(xiàn)每個(gè)功能所需的基本 UI 硬件。我決定我需要三個(gè)揚(yáng)聲器,一個(gè)用于播放,一個(gè)用于現(xiàn)場(chǎng)聲音,一個(gè)用于節(jié)拍器。我需要 12 個(gè)用于合成器按鍵的按鈕,以及一個(gè)用于在需要新錄音時(shí)清除錄制音樂(lè)的按鈕。此外,我需要四個(gè)可變電阻器,三個(gè)用于音量控制,一個(gè)用于節(jié)拍器的速度控制。我還想要兩個(gè) 4 位十六進(jìn)制顯示器以及一個(gè)用于節(jié)拍器的 LED。確定了可能的零件清單后,我創(chuàng)建了該設(shè)備的外觀模型:
有了我最初的 UI 設(shè)計(jì)布局,我就開(kāi)始為我的每個(gè)控件規(guī)劃固定和電源。初始系統(tǒng)和電源框圖如下所示:
然而,在開(kāi)始開(kāi)發(fā)過(guò)程后不久,我發(fā)現(xiàn)我可能無(wú)法實(shí)現(xiàn)我最初想要的所有功能。我努力完成我能給定的時(shí)間范圍內(nèi)的所有事情,但最終刪除了一些功能。我最終制作的設(shè)備的新系統(tǒng)和電源框圖如下所示:
有了這個(gè)新布局,我們就可以著手制作設(shè)備了!
開(kāi)發(fā)過(guò)程:
現(xiàn)場(chǎng)音響
我從實(shí)施 12 鍵鍵盤(pán)開(kāi)始,因?yàn)檫@是該項(xiàng)目的核心部分。我從朋友 ( https://www.hackster.io/nickericlester/ir-breakbeam-candy-dispenser-with-zelda-music-c76e65 )那里借來(lái)了代碼,使用我得到的揚(yáng)聲器制作了一個(gè)筆記庫(kù)并進(jìn)行交互用揚(yáng)聲器演奏音符。一旦我成功地在 PocketBeagle 上為迷你揚(yáng)聲器設(shè)置了 PWM 引腳并成功地讓它們播放指定的音符,我就開(kāi)始連接我的 12 音符鍵盤(pán):
鍵盤(pán)由 PocketBeagle 上的單個(gè) 3.3V_OUT 引腳供電,每個(gè)按鈕都連接到跳線,該跳線連接到 PocketBeagle 上的不同 GPIO 引腳。在我的代碼中,我將每個(gè) GPIO 引腳設(shè)置為輸入并為每個(gè)音符標(biāo)記引腳。請(qǐng)注意,上圖中的某些按鈕并聯(lián)連接,以便在某些情況下共享電阻。通過(guò)一些實(shí)驗(yàn),我發(fā)現(xiàn) GPIO 引腳默認(rèn)配置為拉低,并確保編寫(xiě)我的代碼,以便在 GPIO 讀取 1(即按下按鈕)時(shí)播放音符。通過(guò)鍵盤(pán)設(shè)置,我繼續(xù)使用節(jié)拍器
節(jié)拍器
相對(duì)于 12 鍵鍵盤(pán),節(jié)拍器設(shè)置很簡(jiǎn)單。我通過(guò)滑動(dòng)開(kāi)關(guān)和電位計(jì)將其中一個(gè)揚(yáng)聲器連接到 PocketBeagle 上的 PWM 引腳,然后接地。滑動(dòng)開(kāi)關(guān)允許關(guān)閉節(jié)拍器,電位器通過(guò)改變揚(yáng)聲器接收的電壓來(lái)調(diào)節(jié)音量。
節(jié)拍器的下一步是可調(diào)速度。我將速度旋鈕連接到 PocketBeagle 模擬引腳(1.8V 輸出、參考、輸入),并將模擬讀數(shù)轉(zhuǎn)換為速度。袖珍比格犬使用該速度來(lái)確定節(jié)拍器發(fā)出聲音的時(shí)間。為了讓節(jié)拍器在用戶播放音樂(lè)時(shí)運(yùn)行,我設(shè)置了第二個(gè)線程來(lái)運(yùn)行節(jié)拍器與主要任務(wù)以及播放方法。
錄音/回放
該項(xiàng)目最困難的部分是弄清楚如何記錄用戶彈奏的音符并循環(huán)播放它們。硬件很簡(jiǎn)單,3.3V 電源通過(guò)一個(gè) 10kOhm 電阻器連接到一個(gè)滑動(dòng)開(kāi)關(guān)到一個(gè) GPIO 引腳,一個(gè)揚(yáng)聲器連接到一個(gè) PWM 引腳以及一個(gè)用于音量控制的電位器。
然而,該軟件更加困難。
- 制作doohickey來(lái)調(diào)整樂(lè)器
- 很棒的樂(lè)器開(kāi)源分享
- Beagleboard的PocketBeagle解釋?zhuān)簞?dòng)手回顧
- Pocketbeagle LED音樂(lè)展示臺(tái)
- DIY Arduino樂(lè)器
- 激光豎琴樂(lè)器開(kāi)源分享
- PocketBeagle藥物分配器開(kāi)源分享
- 如何創(chuàng)建和使用LabVIEW中的LLB文件 0次下載
- Visual C++和MFC創(chuàng)建的應(yīng)用程序基礎(chǔ)知識(shí) 0次下載
- allegro與PADS的區(qū)別及創(chuàng)建PCB封裝的步驟 66次下載
- 如何使用深度神經(jīng)網(wǎng)絡(luò)模型實(shí)現(xiàn)西洋樂(lè)器的自動(dòng)分類(lèi)方法 5次下載
- Arduino板是什么如何使用IDE軟件創(chuàng)建和上傳Arduino程序到Arduino板
- AN1246中文手冊(cè)之如何在Microchip圖形庫(kù)中創(chuàng)建控件
- Wi-FiG演示板創(chuàng)建Wi-Fi網(wǎng)絡(luò)和從客戶端設(shè)備Web瀏覽器控制演示板功能
- 結(jié)合多尺度時(shí)頻調(diào)制與多線性主成分分析的樂(lè)器識(shí)別 0次下載
- 如何在Draftsman中創(chuàng)建PCB制造圖紙 317次閱讀
- 基于RL78/G16 FPB的觸摸樣例工程創(chuàng)建演示流程 719次閱讀
- e2 studio創(chuàng)建lib文件及使用 242次閱讀
- 【XR806開(kāi)發(fā)板試用】FreeRTOS創(chuàng)建任務(wù)測(cè)試 553次閱讀
- 電源設(shè)計(jì)技巧:Altium簡(jiǎn)化多相和多模塊電路板設(shè)計(jì)的創(chuàng)建 1129次閱讀
- Java反射技術(shù)實(shí)現(xiàn)對(duì)象的創(chuàng)建 2123次閱讀
- 創(chuàng)建STM32工程模板 1085次閱讀
- 如何創(chuàng)建 Docker 鏡像的能力 1023次閱讀
- 如何創(chuàng)建AXI CDMA Linux用戶空間示例應(yīng)用 2427次閱讀
- 揭秘合成器 解析電子打擊樂(lè)器 6333次閱讀
- OpenAI最新研發(fā)的MuseNet的深度神經(jīng)網(wǎng)絡(luò),可以制作4分鐘時(shí)長(zhǎng)的音樂(lè)作品 3706次閱讀
- 鉛筆變樂(lè)器!教你制作一個(gè)能在紙上“畫(huà)”出聲音的筆 1w次閱讀
- AS7.0中快速創(chuàng)建一個(gè)ASF項(xiàng)目的步驟詳解 1814次閱讀
- 創(chuàng)建可靠FPGA設(shè)計(jì)的10大技巧 695次閱讀
- 電源技巧:利用Altium簡(jiǎn)化多相和多模塊電路板設(shè)計(jì)創(chuàng)建過(guò)程 2408次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開(kāi)發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多