加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專(zhuān)業(yè)用戶(hù)
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入

USB MIDI適配器

2021/03/18
650
服務(wù)支持:
技術(shù)交流群

完成交易后在“購(gòu)買(mǎi)成功”頁(yè)面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗(yàn)、收獲成長(zhǎng)和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購(gòu)買(mǎi)后不支持退換且無(wú)法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論
放大
方塊圖(2)
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

基于Arduino Micro或Leonardo的簡(jiǎn)單USB轉(zhuǎn)MIDI適配器,可以過(guò)濾MIDI數(shù)據(jù)(可選)。
硬件部件:

  • Arduino Micro    ×    1個(gè)    
  • 6n137光耦合器×    1個(gè)    
  • 1N4148 –通用快速開(kāi)關(guān)    ×    1個(gè)    
  • 電容100 nF    ×    1個(gè)    
  • 電阻220歐姆    ×    3    
  • 電阻10k歐姆    ×    1個(gè)    
  • 通孔電阻,470歐姆    ×    1個(gè)    
  • LED(通用)    ×    1個(gè)    
  • LED支架×    1個(gè)    
  • DIN音頻/視頻連接器,5觸點(diǎn)    ×    2個(gè)    
  • 一塊通用PCB×    1個(gè)    
  • PCB安裝座×    1個(gè)    

軟件應(yīng)用程序和在線(xiàn)服務(wù):

  • Arduino IDE    

我在網(wǎng)上搜索了如何使用Arduino構(gòu)建USB轉(zhuǎn)MIDI適配器的方法,但不幸的是,我只找到了效果不佳的解決方案(不良的MIDI軟件或硬件實(shí)現(xiàn))。因此,我決定自己構(gòu)建一個(gè)并將結(jié)果放在hackster.io上。

我使用帶有面包板的Arduino Leonardo構(gòu)建了第一個(gè)原型。一切正常后,我改用Arduino Micro構(gòu)建了焊接版本。兩者均基于ATmega32u4,后者具有本地USB,可將其作為USB MIDI接口呈現(xiàn)給您所連接的PC。

MIDI使用光耦合器和一些電阻器來(lái)創(chuàng)建完全隔離的電流環(huán)路。該電路是非常標(biāo)準(zhǔn)的電路,我使用了6n137,因?yàn)樗乃俣群芸烨覐V泛可用。如電路圖所示,只有MIDI OUT連接器的引腳2接地,這是MIDI的標(biāo)準(zhǔn)配置。

最終結(jié)果的一些照片:

在軟件方面,我決定使用出色的Control Surface庫(kù)。與某些其他庫(kù)或手動(dòng)編碼的實(shí)現(xiàn)不同,Control Surface可以正確處理稍微復(fù)雜的MIDI協(xié)議的所有不同方面。

Control Surface還允許您添加各種附加功能。例如,您可以添加一些電位計(jì),踏板或連接到模擬/數(shù)字輸入的按鈕,以添加額外的MIDI控件。只需在Control Surface網(wǎng)站上查看更多信息,它就很容易做到!

您還可以注冊(cè)回調(diào),以便可以在從MIDI傳遞到USB或其他方向之前處理數(shù)據(jù)。就我而言,我使用它來(lái)修復(fù)Roland D50合成器的MIDI實(shí)施損壞。每次按下最后一個(gè)鍵時(shí),D50都會(huì)發(fā)送“關(guān)閉所有音符”命令。現(xiàn)代實(shí)現(xiàn)(例如我使用的大多數(shù)VST樂(lè)器)都將其解釋為所有運(yùn)行中音符延音的立即硬性中斷。通過(guò)過(guò)濾掉“所有音符”,D50可以再次用作主鍵盤(pán)。

我在Control Surface庫(kù)中遇到的一個(gè)問(wèn)題是,它不能很好地處理大型SysEx軟件包。嘗試使用D50編輯器/圖書(shū)管理員時(shí),這會(huì)導(dǎo)致錯(cuò)誤,因?yàn)樗l(fā)送了相當(dāng)大的SysEx軟件包。我在源代碼的注釋標(biāo)題中添加了有關(guān)如何解決此問(wèn)題的說(shuō)明。編寫(xiě)該庫(kù)的人表示,一旦2.x版本問(wèn)世,此問(wèn)題將得到解決。

我提供了基本的USB到MIDI接口的源代碼,以及帶有“所有音符已關(guān)閉”過(guò)濾功能的版本。

當(dāng)然,您也可以使用其他庫(kù)或編寫(xiě)自己的MIDI實(shí)現(xiàn),該硬件應(yīng)與任何具有USB MIDI和串行MIDI支持的MIDI庫(kù)一起使用。

  • usb_midi_interface_twiE32gvR3.fzz
    描述:原理圖
  • 源碼.rar
    描述:源碼

相關(guān)推薦

電子產(chǎn)業(yè)圖譜