Mündəricat:
- Addım 1: Ehtiyac duyacağınız şeylər
- Addım 2: Alternativ hissələr
- Addım 3: Dövrə lövhəsinin qoyulması
- Addım 4: Kabel çəkmə
- Addım 5: Arduino IDE -dən istifadə edərək proqramlaşdırma
- Addım 6: Synth -in sınanması və istifadəsi
- Addım 7: Dipnotlar
Video: Arduino MIDI Chiptune Sintezatoru: 7 addım (şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Hər hansı bir müasir DAW proqramının rahatlığından MIDI-ni idarə edə biləcəyiniz orijinal 8 bitlik çipton sintezatoru ilə erkən kompüter oyunu musiqisinin əyləncəsini yaşayın.
Bu sadə sxem, 1980-ci illərin səsini yenidən yaratmaq üçün AY-3-8910 proqramlaşdırıla bilən səs generatoru çipini (və ya çoxlu klonlarından birini) idarə etmək üçün Arduino istifadə edir. Musiqini redaktə etmək üçün xüsusi proqrama ehtiyacı olan bir çox dizayndan fərqli olaraq, bu standart USB MIDI cihazına bənzəyir. Sintezatorun ən musiqi ilə əlaqəli qeydləri çalmağa çalışan ağıllı bir alqoritmi var; bir çox hallarda redaktə edilməmiş MIDI fayllarını birbaşa oraya ata bilərsiniz və melodiyalar dərhal çıxır. Ümumi xərc təxminən 20 funt sterlinq olmalıdır.
Addım 1: Ehtiyac duyacağınız şeylər
Şəkillərdə gördüyünüz kimi bunun tam hissə siyahısı belədir:
- Sparkfun Pro Micro klonu (5V, 16MHz seçimi). Bunu Amazonda istifadə etdim.
- Yamaha YM2149F PSG çipi. EBay -dan aldım.
- 2 x 100nF keramika kondansatörləri
- 75R, 1K və 100K rezistorlardan hər biri (1/4 vat dərəcəsi yaxşıdır).
- 4.7nF keramika disk kondansatörü
- 1 uF elektrolitik kondansatör (gərginlik dərəcəsi> 5 V).
- 40 pin 0,6 "DIP IC yuvası
- 2 x 12 yollu 0.1 "başlıqlar (bu CPC -dən)
- Prototip lövhəsi, təxminən 3 "x 2" Yenidən Amazon -da bunların toplu paketini aldım.
- PCB montajlı fono yuvası
- Miniatür bərk nüvəli tel (bu kimi).
Ayrıca bir lehimləmə dəmiri, lehim, tel kəsicilər, kəlbətinlər və tel çıxarıcıya ehtiyacınız olacaq.
Addım 2: Alternativ hissələr
Alternativ proqramlaşdırıla bilən səs generatoru çipləri
İstifadə etdiyim YM2149, orijinal Ümumi Alətlər AY-3-8910 IC-nin bir klonudur. (İlk prototip eBay-dən aldığım AY-3-8910 istifadə etdi, amma ağ səs-küy generatorunun işləmədiyi üzə çıxdı. Kədərli üz). Bu layihə üçün heç bir dəyişiklik etmədən istifadə edə bilərsiniz.
General Instruments, kiçik I/O pinləri olmadan kiçik paketlərdə eyni silikon olan AY-3-8912 və AY-3-8913 variantlarını da hazırladı. Bu sancaqlar heç bir audio məqsəd üçün lazım deyil və bu layihə onlardan istifadə etmir. Bir AY-3-8912 və ya -8913 istifadə edə bilərsiniz, sadəcə yuxarıda göstərilən pinoutlara əməl edin.
Alternativ Arduino
İstifadə etdiyim "Pro Micro", Sparkfun Pro Micro lövhəsinin bir nüsxəsidir. Arduino kodundan əmin deyilsinizsə, buna əməl etməyiniz daha yaxşıdır; dizaynı uyğunlaşdırmaqdan xoşbəxtsinizsə, aşağıdakı xüsusiyyətlərə ehtiyacınız olacaq
- ATmega 16u4 və ya 32u4 cihazı (USB MIDI cihazı kimi fəaliyyət göstərmək üçün lazımdır; ATmega 168 və ya 328 bunu edə bilməz).
- 5V əməliyyat (AY-3-8910 5V-də işləyir) və 16MHz saat sürəti.
-
Ən azı 13 rəqəmsal I/O xətti.
Port pin PB5 bağlanmalıdır (1MHz saat siqnalı yaratmaq üçün istifadə olunur). Pro Micro -da bu D9 I/O pin kimi istifadə olunur
Arduino Leonardo və Micro lövhələri qanun layihəsinə uyğundur, baxmayaraq ki, mən sınamamışam.
Digər komponentlər
Burada istifadə olunan rezistorlar və kondansatörler xüsusilə xüsusi deyil. Doğru dəyərin (təxminən) hər hansı bir hissəsi işləməlidir.
Addım 3: Dövrə lövhəsinin qoyulması
Dövrəni qurmaq üçün prizləri yerləşdirərək başlamaq daha yaxşıdır, sonra rezistorları və kondansatörləri əlavə edin. Növbəti addımda bunları bir araya gətirəcəyik.
Yuxarıdakı şəkli bələdçi olaraq istifadə edərək, 40 pinli IC yuvasını yerləşdirin, lövhəni çevirin və əvvəlcə iki əks künc pinində lehimləyin. Rozet taxtaya söykənməyibsə, bir və ya digər pimi yenidən sataraq düzəltmək asandır. Yaxşı olduqda, qalanını lehimləyin.
İki 12 pinli yuvanı yerləşdirin, sonra lehimləmə zamanı şaquli və sabit tutmaq üçün Arduino'yu daxil edin. Yenə hər bir ucunda iki sancağın lehimlənməsi, son lehimdən əvvəl yoxlamaya imkan verəcəkdir.
Audio çıxış yuvası üçün montaj etiketləri olduqca böyük olduğu üçün PCB deliklərini genişləndirmək üçün kiçik bir matkap istifadə etdim.
Addım 4: Kabel çəkmə
Əsas komponentlər yerləşdirildikdən sonra yuxarıdakı dövrə uyğun olaraq lövhənin arxasına bağlana bilər.
Səs çıxışı komponentləri (R2, R3, C2, C3) və ayıran kondansatörlər (C1, C4) qatı nüvəli tellə (və ya komponentlərin kəsilmələri) birləşdirilə bilər. Arduinodan PSG çipinə torpaq və güc əlaqələri (şəkildəki qırmızı və qara tellər) artıq edilə bilər.
Pro Micro-nun müxtəlif çıxışları AY-3-8910-a aşağıdakı kimi bağlanır (pin tapşırıqları üçün bağlama təlimatına baxın):
Siqnal Arduino AY-3-8910 pin
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 SAAT D9 22 (vasitəsilə R1, 75 ohm)
Addım 5: Arduino IDE -dən istifadə edərək proqramlaşdırma
Arduino ilə yenisinizsə, əsaslarla bağlı bir çox dərsdən birini sınamağı şiddətlə məsləhət görürəm. Sparkfun bağlama bələdçisi tam məlumat verir. "Blinkies" dərsini izləyərək əsas proqramlaşdırmanın işlədiyini yoxlaya bilərsiniz. Arduinos 'bootloader' rejiminə (yeni eskizlər yükləyə bilərsiniz) inandırmaq bir az çətin ola bilər, buna görə sadə bir nümunə ilə bir az təcrübə etmək faydalıdır.
Xoşbəxt olduqdan sonra bu səhifəyə əlavə edilmiş chiptunes.ino faylını yükləyin və qurun və yükləyin. (Sparkfun lövhəsi dəstəyinin quraşdırılmasını atmaq istəyirsinizsə, "Arduino/Genuino Micro" lövhə tipinin bu eskiz üçün uyğun olduğunu gördüm).
Həm də unutmayın ki, Mac -da olsanız, eskizi ilk dəfə yüklədikdən sonra "Liman" ayarı dəyişdirilməlidir. 'Boş' bir Arduino ilə (və ya Blinky eskizindən istifadə edərək) yuxarıdakı şəkildə göstərildiyi kimi /dev/cu.usbmodemXXXX kimi bir şey görünəcək. USB MIDI cihazı aktiv olduqda (chiptunes.ino eskizində istifadə edildiyi kimi) /dev/cu.usbmodemMID1 olacaq.
Addım 6: Synth -in sınanması və istifadəsi
Arduino proqramlaşdırıldıqdan sonra iş stansiyanız onu avtomatik olaraq USB MIDI cihazı kimi tanımalıdır. 'Arduino Micro' adı ilə görünəcək - bunu Windows -da Cihaz Menecerində və ya Mac OS -də "Sistem Məlumatı" tətbiqində görə bilməlisiniz.
Mac -da, əsas testi yerinə yetirmək üçün Audio MIDI Setup tətbiqindən istifadə edə bilərsiniz. Tətbiqi başladın, sonra Pəncərə -> MIDI Studiyasını göstər seçin. Bu MIDI Studio pəncərəsini açacaq - bütün MIDI interfeysləriniz bir az təsadüfi bir şəkildə görünəcək - inşallah 'Arduino Micro' cihazını ehtiva edəcək. Alətlər çubuğundakı 'Test Quraşdırması' simgesini tıklayırsınızsa və sonra Arduino Micro cihazındakı aşağı oxu (şəkilə baxın) tıklayırsınızsa, proqram MIDI qeydlərini synthə göndərir. (Bunlar xüsusilə uyğun deyil!) Synth bu nöqtədə təsadüfi səslər çıxarmalıdır.
Daha sonra Digital Audio İş İstasyonunuzun MIDI quruluşuna bir çıxış cihazı olaraq 'Arduino Micro' əlavə edə və oynamağa başlaya bilərsiniz!
- Synth MIDI kanallarında 1 -dən 4 -ə cavab verir. Hər kanalın fərqli bir səsi var (yaxşı, fərqli bir həcmli zərf).
- MIDI qeydləri 24 ilə 96 arasında (C1-C7) qəbul edilir; bu aralığın xaricində olan qeydlər nəzərə alınmır.
-
MIDI kanal 10, nağara səslərini ifa edir. 35 ilə 50 arasındakı rəqəmləri qeyd edin (bax
www.midi.org/specifications-old/item/gm-level-1-sound-set) qəbul edilir.
- AY-3-8910-da üç səs kanalı var. Synth firmware, ən son göndərilən notu çalmağa çalışır, halbuki tələb olunan ən yüksək və ən aşağı notları hələ də oynayır. Digər notlar (ümumiyyətlə akkorddakı orta notlar) lazım gələrsə kəsilir.
Və bu barədə. Əylənin!
Addım 7: Dipnotlar
Demo mahnısı haqqında
Demo melodiyası - Motsartın məşhur Kraliçası Gecə ariyası - İnternetdə tapdığım bir MIDI faylından (https://www.midiworld.com/mozart.htm) kifayət qədər tez yaradıldı. Bütün ağır işləri başqası etdi!
Mac -da Presonus Studio One istifadə edirəm və MIDI faylı dörd ayrı parçaya idxal edildi. Notların əsas melodiyadan daha yüksək olduğu və notlar arasındakı ən xoşagəlməz qüsurları aradan qaldırmaq üçün az miqdarda düzəlişə ehtiyac var idi.
Klipdə eşitdiyiniz səs, bir az 'arcade maşın' aşağı səs hissi vermək üçün yalnız EQ və doyma ilə bir yerdədir.
Tövsiyə:
MakeyMakey və Scratch ilə Su Sintezatoru: 6 Addım (Şəkillərlə)
MakeyMakey və Scratch ilə Su Sintezatoru: Müxtəlif materialları açarlara və ya düymələrə çevirmək və beləliklə kompüterdə hərəkətləri və ya səsləri tetiklemek üçün MakeyMakey -dən istifadə etmək maraqlı bir işdir. Hansı materialın zəif cərəyan impulsunu keçirdiyini öyrənir və onu icad edə və təcrübə edə bilərəm
Zəhmli Analoq Sintezatoru/Yalnız Diskret Komponentlərdən İstifadə Edən Orqan: 10 Addım (Şəkillərlə)
Zəhmli Analoq Sintezatoru/Orqan Yalnız Ayrı -ayrı Komponentlərdən istifadə edir: Analog sintezatorlar çox sərin, həm də hazırlamaq olduqca çətindir.Belə ki, əldə edə biləcəyi qədər sadə etmək istədim, buna görə də onun işləməsi asan başa düşülə bilər. bir neçə əsas alt sxemə ehtiyac var: rezisi olan sadə bir osilatör
Dörd Dinamik Sintezatoru: 10 Addım (Şəkillərlə birlikdə)
Dörd Hoparlör Sintezatoru: Burada olan sadə bir sintezator var: 22 düym həcmi nəzarət tonu fərqli səs effektləri dəyişən (dinamiklər üçün) dörd dinamik (işiqçilər üçün) Hər kəs onu qura bilər, elektron komponentlər istisna olmaqla, hər şeyi evdə tapa bilərsiniz
Arduino sintezatoru: 20 addım (şəkillərlə birlikdə)
Arduino Sintezatoru: Arduino, Səs Kitabxanası adlanan kitabxana vasitəsilə səs çıxara bilir. Arduino Synthesizer, müəyyən dəyərləri səs çıxarmağa çağıra biləcək bir interfeys və bir proqram yaratmaqla güclü bir vasitədir
Micro Midi sintezatoru: 5 addım (şəkillərlə birlikdə)
Micro Midi Sintezatoru: Bu təlimat, VLSI VS1053b Audio və Midi DSP çipinin real vaxt Midi rejimində istifadəsini nümayiş etdirir. Bu rejimdə 64 səsli polifonik GM (General Midi) Midi sintezatoru kimi çıxış edir. Bir Arduino Uno müstəqil mikro OLED ekranı idarə edir