音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

使用 Arduino Nano 創(chuàng)建基于 DCO 的音頻合成器

出處:維庫電子市場網(wǎng) 發(fā)布于:2024-08-06 17:13:25 | 354 次閱讀

  任何合成器的關(guān)鍵元件都是其振蕩器電路。模擬合成器通常具有兩個(gè)或更多個(gè)可獨(dú)立控制的振蕩器。但是,任何踏入過模擬壓控振蕩器 (VCO)原理圖互聯(lián)網(wǎng)兔子洞的人都知道,它們通常很復(fù)雜且雜亂。一些雜亂來自可以優(yōu)雅處理的功能,例如多個(gè)控制電壓輸入。但是,即使最簡單的振蕩器電路在原理圖中被隔離,剩下的部分仍然很復(fù)雜,因?yàn)闊岱答伡记煽梢允拐袷幤髟谄浣M件升溫時(shí)保持調(diào)諧。
  當(dāng)我考慮創(chuàng)建自己的合成器時(shí),VCO 電路的復(fù)雜性和混亂性一直是我的絆腳石,盡管我喜歡模擬合成,但我還是無法擺脫其混亂的電子缺陷。當(dāng)我對Roland Juno 系列合成器產(chǎn)生好感時(shí),一切都改變了。
  Roland 的 Juno-6于 1982 年上市,是當(dāng)時(shí)其他復(fù)音合成器更實(shí)惠的替代品。它也是第一款使用 DCO 代替?zhèn)鹘y(tǒng) VCO 的合成器。與其他合成器相比,這大大提高了樂器的調(diào)諧穩(wěn)定性,因?yàn)?DCO 使用數(shù)字電路來控制振蕩器模擬信號的頻率??紤]到這一點(diǎn),使用 DCO 代替 VCO 當(dāng)然是有代價(jià)的。許多人喜歡兩個(gè)略微失諧的 VCO 齊奏的“溫暖”聲音,而這種聲音很難用基于 DCO 的合成器模仿。但是,可以將調(diào)制效果應(yīng)用于 DCO 的干輸出信號,以產(chǎn)生華麗、優(yōu)美的聲音。
  總體而言,Arduino Uno 和 Nano 開發(fā)板的普及性和低成本,再加上這些數(shù)字平臺預(yù)裝了 16 MHz晶體振蕩器的事實(shí),使得創(chuàng)建廉價(jià)的 DCO 變得非常容易。
  使用微控制器定時(shí)器模塊創(chuàng)建 DCO
  查看任何現(xiàn)代微控制器的數(shù)據(jù)表,您都會在其外設(shè)中找到一個(gè)定時(shí)器模塊。定時(shí)器模塊允許嵌入式設(shè)計(jì)人員在獨(dú)立于 CPU (中央處理單元)的嵌入式系統(tǒng)后臺設(shè)置運(yùn)行計(jì)數(shù)器。此外,定時(shí)器模塊可以在多種情況下中斷 CPU,例如當(dāng)它們溢出計(jì)數(shù)寄存器或達(dá)到特定計(jì)數(shù)時(shí)。嵌入式設(shè)計(jì)人員可以配置中斷條件以滿足其特定應(yīng)用的需求。
  對于這個(gè)項(xiàng)目, ATMega328P的定時(shí)器模塊(Arduino Nano 和 Uno 的大腦)充當(dāng)合成器的 DCO。通過配置定時(shí)器模塊的時(shí)鐘源和最大計(jì)數(shù)值,可以在音頻頻率觸發(fā)定時(shí)器模塊中斷。DCO 輸出是通過在這些周期性中斷的中斷服務(wù)例程 (ISR) 期間操縱微控制器的 GPIO 引腳來實(shí)現(xiàn)的。
  在接下來的章節(jié)中,我將討論該項(xiàng)目背后的硬件和軟件設(shè)計(jì),然后展示一些來自該自制合成器的音頻片段。
  使用 Arduino Nano 的音頻合成器硬件
  在介紹該項(xiàng)目涉及的不同硬件以及它們?nèi)绾螀f(xié)同工作之前,表 1 顯示了 BOM(物料清單)。
  數(shù)量成分
  1
  Arduino Nano v3.x
  4470 nF電容
  12.1 毫米筒形插孔
  11/4”單聲道開關(guān)插孔
  24.7k電阻
  347k電阻
  7100k電阻
  1100k電阻
  2100k電位器
  11 M 電位器
  23SPDT 微型瞬時(shí)開關(guān)
  1開關(guān)DC-DC 轉(zhuǎn)換器(5 V 輸出)
  1Microchip MCP23017 I/O 擴(kuò)展器
  1LF411 運(yùn)算放大器(運(yùn)放)  接下來,讓我們看一下圖 2 的系統(tǒng)圖,它展示了該合成器的各個(gè)部分是如何組合在一起的。

  合成器的硬件系統(tǒng)圖。
  圖 2. 合成器的硬件系統(tǒng)圖。
  鍵盤部分由 23 個(gè) SPDT 開關(guān)組成,每個(gè)鍵一個(gè)。其中 16 個(gè)鍵路由到 MCP23017 I/O 擴(kuò)展器,其余 7 個(gè)鍵直接路由到 Arduino Nano 上的 GPIO 輸入。然后 MCP23017 通過I2C連接到 Arduino Nano 。
  從這里開始,Arduino Nano 處理來自鍵盤的輸入,并根據(jù)這些按鍵在 D11、D12 和 D10 上生成三個(gè)獨(dú)立的振蕩器輸出。Arduino Nano 上這些數(shù)字引腳的輸出被路由到求和放大器電路,該電路的原理圖如圖 3 所示?! ∏蠛头糯笃麟娐返氖疽鈭D。

  圖 3。 求和放大器電路原理圖。
  求和放大器包含三個(gè)電位器。它們分別控制振蕩器 2 和 3 的音量以及樂器的主音量。放大器電路的輸出直接路由到 ?” 單聲道音頻插孔,因此可輕松直接插入吉他放大器。
  為了給該樂器供電,我使用標(biāo)準(zhǔn)的 2.1 毫米 9 V DC 吉他踏板筒形插孔。此外,該插孔的 +9 V 被路由到小型 DC-DC 開關(guān)電源轉(zhuǎn)換器以產(chǎn)生 5 V 電源連接。+5 V 電源為 MCP23017 供電。Arduino 通過其 Vin 引腳由 +9 V 電源供電。運(yùn)算放大器的 V+ 和 V- 由筒形插孔的 +9 V 和接地連接提供,5 V 電源用作運(yùn)算放大器的浮動(dòng)接地連接。
  圖 4 顯示了該系統(tǒng)各部分的連接方式?! ≌麄€(gè)系統(tǒng)示意圖

  圖 4. 整個(gè)系統(tǒng)示意圖
  創(chuàng)建音頻合成器的軟件方面
  該項(xiàng)目軟件的主要任務(wù)是解釋鍵盤按鈕的輸入并相應(yīng)地操作定時(shí)器模塊寄存器(請參閱此處的 Arduino 草圖 PDF 以獲取代碼)。在草圖中的 setup() 函數(shù)之前,聲明了幾個(gè)全局變量,包括兩個(gè)大型的 2D 數(shù)組,其中包含與音符相對應(yīng)的定時(shí)器模塊寄存器值。setup() 函數(shù)的過程遵循圖 5 的流程圖,其中僅涉及:
  設(shè)置 GPIO 輸入和輸出
  開始 I2C 通信
  初始化三個(gè)定時(shí)器模塊
  啟用中斷
  選擇定時(shí)器 B 模塊的時(shí)鐘源作為定時(shí)器 A 的時(shí)鐘
  啟用全局中斷  該儀器的 Arduino 草圖的 setup() 函數(shù)的流程圖。

  圖 5. 該儀器的 Arduino 草圖的 setup() 函數(shù)的流程圖。
  圖 6 顯示了表示 Arduino 草圖的 loop() 函數(shù)的流程圖?! 〈藘x器的 Arduino 草圖的 loop() 函數(shù)流程圖

  圖 6.該儀器的 Arduino 草圖的 loop() 函數(shù)流程圖.
  循環(huán)函數(shù)執(zhí)行三個(gè)主要任務(wù):
  檢測鍵盤上按下的鍵
  根據(jù)特定鍵的音調(diào)設(shè)置定時(shí)器模塊參數(shù)
  設(shè)置門變量以允許振蕩器信號轉(zhuǎn)發(fā)到各自的 GPIO 引腳
  循環(huán)函數(shù)一次評估連接到鍵盤的每個(gè) I/O 端口,直到檢測到按下的按鈕。端口的評估順序是從鍵盤上的最低音符到最高音符,這意味著低音符實(shí)際上具有更高的優(yōu)先級。雖然我考慮使用 GPIO 和 I2C 中斷來處理鍵盤按鈕按下,但我最終使用了連續(xù)輪詢方法,并且我沒有注意到因此而產(chǎn)生的任何不利性能。
  最后,圖 7 表示 ATMega328P 中三個(gè)定時(shí)器模塊各自的中斷服務(wù)程序。  Arduino Nano 的 ATMega328P 定時(shí)器模塊的中斷服務(wù)程序流程圖。

  圖 7.Arduino  Nano 的 ATMega328P 定時(shí)器模塊的中斷服務(wù)程序流程圖。
  如果設(shè)置了門控變量,則每個(gè) ISR 都會切換其輸出引腳值。此切換會為每個(gè)振蕩器生成音頻頻率輸出。
0次

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動(dòng)力!意見一經(jīng)采納,將有感恩紅包奉上哦!