İçindekiler:
- Adım 1: İhtiyacınız Olan Şeyler
- 2. Adım: Alternatif Parçalar
- Adım 3: Devre Kartının Yerleştirilmesi
- Adım 4: Kablolama
- Adım 5: Arduino IDE Kullanarak Programlama
- Adım 6: Synth'i Test Etme ve Kullanma
- 7. Adım: Dipnotlar
Video: Arduino MIDI Chiptune Synthesizer: 7 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
MIDI üzerinde herhangi bir modern DAW yazılımının rahatlığından kontrol edebileceğiniz otantik bir 8-bit chiptune sentezleyici ile erken bilgisayar oyunu müziğinin eğlencesini yeniden yaşayın.
Bu basit devre, 1980'lerin sesini yeniden yaratmak için bir AY-3-8910 programlanabilir ses üreteci çipini (veya birçok klonundan birini) sürmek için bir Arduino kullanır. Müziği düzenlemek için özel yazılıma ihtiyaç duyan birçok tasarımın aksine, bu standart bir USB MIDI aygıtına benziyor. Sentezleyici, müzikle en alakalı notaların çalmasını sağlamaya çalışan akıllı bir algoritmaya sahiptir; çoğu durumda, düzenlenmemiş MIDI dosyalarını doğrudan üzerine atabilirsiniz ve melodi hemen çıkar. Toplam maliyet yaklaşık 20 £ olmalıdır.
Adım 1: İhtiyacınız Olan Şeyler
Bunun için tam parça listesi, resimlerde gördüğünüz gibi:
- Sparkfun Pro Mikro klon (5V, 16MHz seçeneği). Bunu Amazon'da kullandım.
- Yamaha YM2149F PSG çipi. Benimkini eBay'den aldım.
- 2 x 100nF seramik kapasitör
- 1 adet 75R, 1K ve 100K direnç (1/4 watt değeri iyidir).
- 4.7nF seramik disk kapasitör
- 1uF elektrolitik kapasitör (voltaj derecesi > 5V).
- 40 pinli 0.6" DIP IC soketi
- 2 x 12 yollu 0,1" başlık (bu, TBM'den)
- Prototipleme panosu, 3" x 2" yakl. Yine Amazon'da bunlardan toplu bir paket aldım.
- PCB montajlı fono soketi
- Minyatür katı çekirdekli tel (bunun gibi).
Ayrıca bir havya, lehim, tel kesiciler, pense ve tel sıyırıcıya ihtiyacınız olacak.
2. Adım: Alternatif Parçalar
Alternatif programlanabilir ses üreteci çipleri
Kullandığım YM2149, orijinal General Instruments AY-3-8910 IC'nin bir klonudur. (İlk prototip, eBay'den aldığım bir AY-3-8910'u kullanıyordu, ancak beyaz gürültü üretecinin çalışmadığı ortaya çıktı. Üzgün surat). Bu proje için herhangi bir değişiklik yapmadan kullanabilirsiniz.
General Instruments ayrıca daha küçük paketlerde aynı silikon olan AY-3-8912 ve AY-3-8913 varyantlarını bazı ekstra I/O pinleri olmadan yaptı. Bu pinler herhangi bir ses amacı için gerekli değildir ve bu proje bunları kullanmamaktadır. Bir AY-3-8912 veya -8913 kullanabilirsiniz, sadece yukarıda gösterilen pinleri takip edin.
Alternatif Arduino'lar
Kullandığım "Pro Micro", Sparkfun'un Pro Micro kartının bir kopyası. Arduino kodundan emin değilseniz, buna bağlı kalmak en iyisidir; tasarımı uyarlamaktan memnunsanız, aşağıdaki özelliklere ihtiyacınız olacak
- ATmega 16u4 veya 32u4 cihazı (USB MIDI cihazı olarak hareket etmesi gerekir; ATmega 168 veya 328 bunu yapamaz).
- 5V çalışma (AY-3-8910 5V'de çalışır) ve 16MHz saat hızı.
-
En az 13 dijital G/Ç hattı.
Port pini PB5 bağlanmalıdır (1MHz saat sinyali üretmek için kullanılır). Pro Micro'da bu, D9 I/O pini olarak kullanılır
Arduino Leonardo ve Micro panoları, denememiş olmama rağmen, tasarıya uyuyor.
Diğer bileşenler
Burada kullanılan dirençler ve kapasitörler özellikle özel değildir. Doğru değerin (yaklaşık olarak) herhangi bir kısmı çalışmalıdır.
Adım 3: Devre Kartının Yerleştirilmesi
Devreyi kurmak için, soketleri konumlandırarak başlamak, ardından dirençleri ve kapasitörleri eklemek en iyisidir. Bunları bir sonraki adımda birlikte ele alacağız.
Yukarıdaki resmi kılavuz olarak kullanarak, 40 pinli IC soketini konumlandırın, kartı ters çevirin ve önce iki zıt köşe pimine lehimleyin. Soket panoya yaslanmıyorsa, bir veya diğer pimi yeniden lehimleyerek düzeltmek kolaydır. Tamam olduğunda, gerisini lehimleyin.
İki adet 12 pimli soketi konumlandırın, ardından lehimleme sırasında dikey ve sabit tutmak için Arduino'yu bunlara takın. Yine, önce her iki uçta iki pimin lehimlenmesi, son lehimlemeden önce bir kontrole izin verecektir.
Ses çıkış soketi için, montaj etiketleri oldukça büyük olduğu için PCB deliklerini büyütmek için küçük bir matkap kullandım.
Adım 4: Kablolama
Ana bileşenler yerleştirildikten sonra, yukarıdaki devre izlenerek kartın arkasına bağlanabilirler.
Ses çıkış bileşenleri (R2, R3, C2, C3) ve dekuplaj kapasitörleri (C1, C4) tek damarlı kabloyla (veya bileşen kablolarının kesikleri) bağlanabilir. Arduino'dan PSG çipine (resimdeki kırmızı ve siyah teller) toprak ve güç bağlantıları artık yapılabilir.
Pro Micro'nun çeşitli çıkışları AY-3-8910'a aşağıdaki şekilde bağlanır (pin atamaları için bağlantı kılavuzuna bakın):
Sinyal Arduino AY-3-8910 pini
DA0 D2 37 DA1 D3 36 DA2 D4 35 DA3 D5 34 DA4 D6 33 DA5 D7 32 DA6 D8 31 DA7 A0/D18 30 BC1 D10 29 BC2 MOSI/D16 28 BDIR MISO/D14 27 RESET# SCLK/D15 23 CLOCK D9 22 (ile R1, 75 ohm)
Adım 5: Arduino IDE Kullanarak Programlama
Arduino'da yeniyseniz, temel bilgilerle ilgili birçok öğreticiden birini denemenizi şiddetle tavsiye ederim. Sparkfun'un bağlantı kılavuzu tüm ayrıntıları verir. "Blinkies" öğreticisini izleyerek temel programlamanın çalışıp çalışmadığını kontrol edebilirsiniz. Arduino'ları 'önyükleyici' moduna (yeni çizimler yükleyebileceğiniz) ikna etmek biraz zor olabilir, bu nedenle basit bir örnekle biraz pratik yapmak yararlıdır.
Mutlu olduğunuzda, bu sayfaya ekli chiptunes.ino dosyasını indirin ve oluşturun ve yükleyin. (Sparkfun kart desteğini yüklemeyi atlamak istiyorsanız, bu çizim için "Arduino/Genuino Micro" kart tipini kullanmanın uygun olduğunu buldum).
Ayrıca, bir Mac kullanıyorsanız, çizimi ilk kez yükledikten sonra "Bağlantı Noktası" ayarının değiştirilmesi gerektiğini unutmayın. 'Boş' bir Arduino ile (veya Blinky çizimini kullanarak), yukarıdaki resimde gösterildiği gibi /dev/cu.usbmodemXXXX gibi bir şey olarak görünecektir. USB MIDI aygıtı etkin olduğunda (chiptunes.ino çiziminde kullanıldığı gibi) /dev/cu.usbmodemMID1 olacaktır.
Adım 6: Synth'i Test Etme ve Kullanma
Arduino programlandığında, iş istasyonunuz onu otomatik olarak bir USB MIDI cihazı olarak tanıyacaktır. 'Arduino Micro' adıyla görünecektir - bunu Windows'ta Aygıt Yöneticisi'nde veya Mac OS'de "Sistem Bilgisi" uygulamasında görebilmeniz gerekir.
Mac'te, temel bir testi çalıştırmak için Audio MIDI Setup uygulamasını kullanabilirsiniz. Uygulamayı başlatın, ardından Pencere -> MIDI Studio'yu Göster'i seçin. Bu, MIDI Studio penceresini açacaktır - tüm MIDI arayüzleriniz biraz rastgele bir düzende görünecektir - umarım 'Arduino Micro' cihazını içerecektir. Araç çubuğundaki 'Test Setup' simgesine ve ardından Arduino Micro cihazındaki aşağı oka (resme bakın) tıklarsanız, uygulama synth'e MIDI notları gönderecektir. (Bunlar özellikle melodili değil!) Synth bu noktada bazı rastgele sesler çıkarmalıdır.
Ardından, Dijital Ses İş İstasyonunuzun MIDI kurulumuna bir çıkış aygıtı olarak 'Arduino Micro' ekleyebilir ve çalmaya başlayabilirsiniz!
- Synth, 1 ila 4 MIDI kanallarına yanıt verir. Her kanalın farklı bir sesi vardır (yani, farklı bir ses zarfı).
- 24 ile 96 (C1-C7) arasındaki MIDI notları kabul edilir; bu aralığın dışındaki notlar yoksayılır.
-
MIDI kanal 10 davul seslerini çalar. 35 ile 50 arasındaki sayıları not edin (bkz.
www.midi.org/specations-old/item/gm-level-1-sound-set) kabul edilir.
- AY-3-8910'da üç adet ses kanalı bulunmaktadır. Synth üretici yazılımı, en son gönderilen notayı çalmaya çalışırken, o anda istenen en yüksek ve en düşük notaları çalmaya devam eder. Diğer notalar (genellikle bir akorun orta notaları) gerekirse kesilir.
Ve bununla ilgili. İyi eğlenceler!
7. Adım: Dipnotlar
Demo melodi hakkında
Demo melodi - Mozart'ın ünlü Gecenin Kraliçesi aryası - İnternette bulduğum bir MIDI dosyasından oldukça hızlı bir şekilde oluşturuldu (https://www.midiworld.com/mozart.htm). Bütün zor işleri başka biri yaptı!
Mac'te Presonus Studio One kullanıyorum ve MIDI dosyası dört ayrı parçaya aktarıldı. Eşlik notalarının ana melodiden daha yüksek olduğu durumlarda ve notalar arasındaki daha sakıncalı bazı aksaklıkları gidermek için küçük bir miktar düzenleme gerekliydi.
Klipte duyduğunuz ses doğrudan synth'den geliyor, sadece bir EQ dokunuşu ve doygunluk ile biraz 'arcade makinesi' düşük-fi hissi veriyor.
Önerilen:
Eurorack Synthesizer Güç Kaynağı: 8 Adım
Eurorack Synthesizer Güç Kaynağı: Bir Eurorack sentezleyici için kendin yap güç kaynağının nasıl yapılacağına ilişkin Eğitilebilir Tabloma hoş geldiniz. Lütfen güç kaynağı tasarımı ve Eurorack sentezleyici hakkındaki bilgilerimin benzersiz olduğunu unutmayın. Tavsiyelerimi dikkatli al. Ben sorumlu tutulmayacağım
MIDI Adım Arayüzü: 12 Adım (Resimlerle)
MIDI Adım Arayüzü: İspanyolca versiyonu burada. Bu talimatta size, "Simon Says" ve bir MIDI arayüzü olarak. Her iki mod da ayaklarınızla oynanacak.ArkaplanProje doğdu çünkü
Spielatron veya Diğer MIDI Synth için MIDI 5V LED Şerit Işık Kontrol Cihazı: 7 Adım (Resimlerle)
Spielatron veya Diğer MIDI Synth için MIDI 5V LED Şerit Işık Kontrol Cihazı: Bu kontrolör, not başına 50mS için üç renkli LED şerit ışıkları yanıp söner. G5 ila D#6 için mavi, E6 ila B6 için kırmızı ve C7 ila G7 için yeşil. Kontrolör bir ALSA MIDI cihazıdır, bu nedenle MIDI yazılımı, bir MIDI synth cihazı ile aynı anda LED'lere çıkış verebilir
Zybo Board Üzerinde Laser Arp Synthesizer: 10 Adım (Resimlerle)
Zybo Board'da Laser Harp Synthesizer: Bu eğitimde, kullanıcının enstrümanın akortunu ve tonunu değiştirmesine izin verecek bir seri arayüze sahip IR sensörlerini kullanarak tamamen işlevsel bir lazer arp oluşturacağız. Bu arp, asırlık enstrümanın 21. yüzyıl versiyonu olacak. NS
Micro Midi Synthesizer: 5 Adım (Resimlerle)
Micro Midi Synthesizer: Bu talimat, VLSI VS1053b Audio ve Midi DSP çipinin gerçek zamanlı Midi modunda kullanımını gösterir. Bu modda 64 sesli polifonik GM (General Midi) Midi sentezleyici olarak işlev görür. Bir Arduino Uno bağımsız mikro, bir OLED ekranı kontrol eder