Mündəricat:
- Təchizat
- Addım 1: 5V Midi Cihazı Sürmək üçün USB Mini Host Qalxanının Hazırlanması
- Addım 2: USB Mini Qalxanı Arduino Nano ilə bağlayın
- Addım 3: Hər kəsin cipsi varmı? 4MHz Osc ilə SN76489 əlavə olunur. və 595 Shift Qeydiyyatı
- Addım 4: Sadəcə Kod əlavə edin - Kitabxanaların əlavə edilməsi, Kodun tərtib edilməsi və yüklənməsi
- Addım 5: Gücləndirici və Dinamik qoşun, USB Midi Klaviaturanızı bağlayın və Test edin
- Addım 6: 5V gərginlik tənzimləyicisi, 12V konnektoru, açma/söndürmə açarı və güc LED ilə dövrə tamamlayın
- Addım 7: Bir qutuya daxil edin, rəngləyin və yeni sintezinizdən zövq alın
Video: Arduino Nano ilə SN76489 USB MIDI Synth quraq: 7 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Heç 80-ci illərin köhnə çip melodiyalarına əsaslanaraq öz sintezatorunuzu qurmaq istəyirdinizmi? Sadəcə bu köhnə Sega Master System və Megadrive video oyunları kimi səslənən sadə polifonik melodiyalar çalın?
Ebaydan və bir midi host interfeysindən bir neçə SN76489 çipi sifariş etdim və buna icazə verdim. Mənim üçün parkda gəzmək deyildi, amma hər andan zövq alırdım.
Əvvəlcə SN76489 ilə birbaşa əlaqə qurmağı və onunla səs -küy salmağı öyrəndim. Bunun bəzi qarışıq elementləri var idi, amma The Oddbloke Geek Blog və bir neçə digər nümunənin köməyi ilə çip spesifikasiyası sənədi ilə birlikdə sadə bir arduino kitabxanası hazırlaya bildim.
Daha sonra, USB mini host qalxanı ilə bir midi klaviatura ilə necə əlaqə qurmağı öyrənməliydim. Bəzi sənədlər mövcud olduğundan və yaxşı nümunələr olan yaxşı kitabxanalar olduğu üçün bu o qədər də çətin deyildi.
Çipi necə idarə edəcəyimi və USB midi klaviaturamı necə idarə edəcəyimi başa düşdükdən sonra, bütün bunları bir araya gətirəcək və çipi idarə etmək üçün klaviaturadan istifadə etməyimə icazə verəcək bir kod yazmaq qalır.
Yolda, 0x2f midi notlar üçün yaratmağa çalışdığım səslərdən daha aşağı səslərin doğru səslənmədiyini öyrəndim, buna görə də 0x28 ilə 0x2f arasında olan hər hansı bir midi nota üçün səs -küy generatoruna səs göndərmək üçün istifadə etmək qərarına gəldim. və midi 0x28 -dən aşağı bir şey üçün oriyental bir ərəb toxunuşu ilə qeydlər çalmağa icazə verin.
Geriyə baxanda, qurmaq çox əyləncəli və çox maraqlı idi.
Ümid edirəm ki, bunu mənim kimi əyləncəli və maraqlı tapacaqsınız və özünüz də bir şəkil çəksəniz, bəzi şəkillərini paylaşacaq qədər mehriban olarsınız.
Bu layihəni bəyənmisinizsə, iştirak etdiyi yarışmada qalib gəlməyinizə kömək etmək üçün aşağıda səs verin
Təchizat
Bu layihə üçün satın ala biləcəyiniz materiallara bağlantılar əlavə etdim, ancaq köhnə elektronikadan silə biləcəyiniz bir çox əşyalar tapa bilərsiniz.
Bu bağlantılar ortaq bağlantılardır, buna görə də onları tıkladıqdan sonra satın alsanız, kiçik bir hissə (sərvət deyil) alıram və bu layihə üçün uyğun bir məhsul alırsınız. Bunları istifadə etmək üçün heç bir ödəniş və ya əlavə xərc yoxdur, lakin bunları olduqca asanlıqla əvəz edə biləcək oxşar əşyalar tapa bilərsiniz.
ebay.us/svA4z4 | 1 x performans lövhəsi
ebay.us/ZyEFNp | 1 x arduino nano
ebay.us/t1zy0v | 1 x USB mini ekran
ebay.to/2QrHl1C | 1 x SN76489 səs çipi
ebay.us/aaaj8p | 1 x növbəli qeyd 595
ebay.us/DSvTHO | 1 x 4MHz kristal osilator
ebay.us/XQeM0Q | 1 x 5V gərginlik tənzimləyicisi 7805
ebay.us/6R6Fpf | Gərginlik tənzimləyicisi üçün 1 x soyuducu
ebay.us/xkLbn4 | 3 x 10 uF kondansatörler
ebay.us/pnm2BH | tellər
ebay.us/PMbUfY | Güc üçün 1 x qırmızı LED
ebay.us/zokHtc | LED cərəyanını məhdudlaşdırmaq üçün 1 x 220 ohm rezistor
ebay.us/qjbesJ | 12V enerji təchizatı üçün 1 x güc konnektoru
ebay.us/cS0wwv | 1 x açma/söndürmə açarı
uyğun bir qutu (illərlə mənim anbarımda dincələn köhnə bir çekmecədən mina tikdim)
Addım 1: 5V Midi Cihazı Sürmək üçün USB Mini Host Qalxanının Hazırlanması
USB mini host qalxanı 3.3V -də işlədiyinə və istifadə etdiyim USB midi klaviaturalara 5V tələb olunduğundan, USB çıxışı Vcc -ə gedən 3.3V xəttini kəsərək qalxanın çıxış gərginliyini tənzimləmək tələb olunur, buna görə də daha sonra bağlaya bilərik. 5V -ə qədər.
Bunun necə ediləcəyinə dair çoxlu dərslər var və olduqca sadə olduğu ortaya çıxdı:
Yalnız 2k2 rezistorla Vcc xətti arasındakı xətti kəsin (əlavə olunmuş şəklə baxın). Bu xətti cızmaq üçün bir tornavida istifadə etdim və davamlılıq sayğacı ilə işlədiyini sınadım.
Addım 2: USB Mini Qalxanı Arduino Nano ilə bağlayın
Xoşbəxtlikdən, bunun necə ediləcəyi ilə bağlı çoxlu məlumatlar var, buna görə də "Arduino Nano və mini USB host qalxanı" üçün googling edərək bu mövzuya daxil oldum
USB mini v2.0 qalxanının necə bağlanacağını izah etdi və onu izlədikdən sonra birbaşa USB midi nümunələrini sınamaq üçün irəli getdim.
Kablolama:
Arduino Host qalxanı
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5V -------------- 1
3.3V ------------ 9
GND ----------- 3
RST ------------ 4
Bu mövzuda, USB -nin VBUS -dan 5V ala bilməsi üçün 3.3V gərginliyi kəsdikləri də qeyd edildi.
Bu təsvir və qapalı şəkillər bu mövzudan gəldi.
BTW, bu lövhədə çapda bir səhv var, buna görə də bu bir az qarışıq idi, ancaq bu barədə (tyrkelko) və onu haradan öyrəndiyimi görə bilərsiniz.
Addım 3: Hər kəsin cipsi varmı? 4MHz Osc ilə SN76489 əlavə olunur. və 595 Shift Qeydiyyatı
İndi bu heyrətamiz səsi verən çipi əlavə etməyin vaxtı gəldi.
Artıq bu çiplə arduino interfeysi üçün bir kitabxana hazırladım və yalnız təlimatlarımı yerinə yetirməli oldum.
Kitabxana GPLv3 (ilk açıq mənbə versiyası) altında github -da buraxılır.
github.com/tyrkelko/sn76489
76489 və 595 -in əlaqəsi kitabxananın readme.txt faylından tutulan əlavə şəkildəki kimi idi.
76489 -un Düşük Yazma İmkanı (NotWE) nanonun 3 -cü pininə bağlı idi və kodda dəyişdirilə bilər.
#PIN_NotWE təyin edin 3
595 nano -ya aşağıdakı kimi qoşuldu və pin nömrələrini düzəltməklə də tənzimlənə bilər:
#PIN_SER 7 təyin edin
#PIN_LATCH təyin edin 6
#PIN_CLK təyin edin 5
İstifadə etdiyim osilator 4 ayaqlı 4MHz kristal osilator idi.
Kodda aşağıdakı kimi konfiqurasiya edilmişdir və dəyərini 500kHz və 4MHz arasındakı hər hansı bir osilatör tezliyinə uyğunlaşdıra bilərsiniz:
#FREQUENCY 4000000.0 təyin edin
İstifadə etdiyim osilatoru bağlamaq belə oldu:
pin 1 - bağlı deyil
pin 7 - torpaq
pin 8 - 76489 pin 14 -ə bağlı saat osc
Addım 4: Sadəcə Kod əlavə edin - Kitabxanaların əlavə edilməsi, Kodun tərtib edilməsi və yüklənməsi
Bu layihədə istifadə olunan kitabxanaların Arduino IDE -yə aşağıdakı kimi əlavə edilməsi lazımdır:
Arduino IDE -ni açın
Aşağıdakı kitabxanaları IDE -nin kitabxana qovluğuna yükləyin (tezliklə bunları IDE "Alətlər" menyusunda "Kitabxanaları İdarə et …" menyusunda görmək ümidi ilə):
github.com/felis/USB_Host_Shield_2.0
github.com/tyrkelko/sn76489
Aşağıdakı github layihəsindən kodu istifadə edin:
github.com/tyrkelko/usb_midi_tone
Usb_midi_tone.ino yükləyin, tərtib edin və Arduino nano -ya yükləyin.
Addım 5: Gücləndirici və Dinamik qoşun, USB Midi Klaviaturanızı bağlayın və Test edin
İndi hər şeyin işlədiyini sınamağın vaxtı gəldi.
Bunu etmək üçün bizə lazımdır:
1. Gücləndirici və dinamik
2. USB midi klaviatura
SN76489 pin 7, səs çıxışı, gücləndiricinin səs girişinə qoşun.
Gücləndiricini yandırın və sonra arduino nanonu işə salın. İndi bir saniyə ərzində güc testinin səsini eşitməlisiniz.
USB midi klaviaturasını qoşun və sınayın.
Hər şey düzgün işləyirsə, eyni anda 3 ton çalmağı bacarmalısınız, eyni zamanda 8 növ səs-küy və hətta 24 EDO Ölçeğinin dörddə bir tonunu çalmalısınız.
İşə yaramırsa, nəyin səhv ola biləcəyini görmək üçün addımları keçin.
Bunun aydın olmayan təlimatlardan qaynaqlandığını hiss edirsinizsə, lütfən mənə bir qeyd buraxın ki, düzəltmək üçün təlimatları yeniləyim.
Addım 6: 5V gərginlik tənzimləyicisi, 12V konnektoru, açma/söndürmə açarı və güc LED ilə dövrə tamamlayın
Bu addımda, düzgün işlədiyini yoxladıqdan sonra dövrəni bağlaya bilməlisiniz.
1. LM7805 və iki 10uF kondansatörlü və 0.1uF güc tənzimləyicisi əlavə edin. Bununla əlaqədar çoxlu dərslər var, bunları həyata keçirmək üçün aşağıdakı təlimatlardan istifadə edə bilərsiniz-https://www.instructables.com/id/7805-Regulator-5V…
2. Açma/söndürmə açarından keçən Vcc ilə 12V güc konnektoru əlavə edin
3. Gücün nə vaxt açıldığını göstərmək üçün məhdudlaşdırıcı bir cərəyan rezistoru olan bir LED əlavə edin.
Addım 7: Bir qutuya daxil edin, rəngləyin və yeni sintezinizdən zövq alın
Dövrə sınaqdan keçirildikdən və zövqünüzə uyğun işlədikdən sonra, gözəl bir korpus qurmaqdan başqa çox şey qalmadı, zəhmli rənglərlə boyayın və bir az musiqi çalın.
Ümid edirəm bu təlimatı oxumaqdan zövq aldınız və bu, öz sintezinizi qurmağınıza və ya üzərində çalışdığınız başqa bir layihəyə davam etməyinizə ilham verdi.
Zəhmət olmasa hər hansı bir sualınız varsa, şərhlərdə yazın və bu dərsliyə əsaslanaraq bənzər bir şey qurmusunuzsa, "Bunu mən etdim!" sahədə və ya geribildirim bölməsində.
Tövsiyə:
Flysky RF Transmitteri USB + Tel Siqnal Bağlantısı ilə PC ilə işləyir + Pulsuz Simulator Proqramı: 6 addım
Flysky RF Vericisi USB + Tel Siqnal Bağlantısı ilə PC + Pulsuz Simulator Proqramı ilə Gücləndirilir: Mənim kimi olsanız, RF ötürücünüzü sınamaq və əziz RF təyyarəsini/pilotsuz təyyarənizi qəzaya uğramadan öyrənmək istərdiniz. Bu, çoxlu pula və vaxta qənaət etməklə əlavə əyləncə verəcək, bunu etmək üçün RF ötürücünüzü sizə bağlamağın ən yaxşı yolu
Arduino Uno ilə Akustik Levitasiya Addım-addım (8 addım): 8 addım
Arduino Uno ilə Akustik Levitasiya Adım Adım (8 addım): ultrasəs səs ötürücüləri L298N Dc dişi qadın adapteri kişi dc pinli Arduino UNOBreadboard Bu necə işləyir: Əvvəlcə Arduino Uno-ya kod yükləyirsiniz (rəqəmsal ilə təchiz edilmiş bir mikro nəzarətçidir) və kodu çevirmək üçün analog portlar (C ++)
ESP32 ilə PWM - Arduino IDE ilə ESP 32 -də PWM ilə LED Karartma: 6 addım
ESP32 ilə PWM | Arduino IDE ilə ESP 32 -də PWM ilə LED Karartma: Bu təlimatlarda Arduino IDE istifadə edərək ESP32 ilə PWM siqnallarının necə yaradılacağını görəcəyik. PWM əsasən hər hansı bir MCU -dan analoq çıxışı yaratmaq üçün istifadə olunur və bu analog çıxış 0V ilə 3.3V arasında ola bilər (esp32 vəziyyətində) & dan
Gəlin Quraq (Analog Synth): 5 addım
Gəlin Quraq (Analog Synth): Bu seriyada sizə həm analoq, həm də rəqəmsal komponentlərdən istifadə edərək əsas modul analoq sintezatorunun necə qurulacağını göstərəcəyəm. 1mZX4LyiJwXZLJ3R56SDxloMnk8z07IYJ
Spielatron və ya digər MIDI Synth üçün MIDI 5V LED Şerit İşıq Nəzarətçisi: 7 Addım (Şəkillərlə)
MIDI 5V Spielatron və ya digər MIDI Synth üçün LED Şerit İşıq Nəzarətçisi: Bu nəzarətçi, not başına 50mS üçün üç rəngli LED şerit işıqlarını yandırır. G5-D#6 üçün mavi, E6-B6 üçün qırmızı, C7-G7 üçün yaşıl. Nəzarətçi bir ALSA MIDI cihazıdır, buna görə MIDI proqramı bir MIDI synth cihazı ilə eyni vaxtda LED -lərə çıxara bilər