Kazalo:
- Zaloge
- 1. korak: Priprava mini gostiteljskega ščita USB za pogon 5V Midi naprave
- Korak: Povežite mini ščit USB z vašim Arduino Nano
- 3. korak: Je kdo čips? Dodajanje SN76489 s 4MHz Osc. in 595 premični register
- 4. korak: Samo dodajte kodo - dodajanje knjižnic, sestavljanje in nalaganje kode
- 5. korak: Priključite ojačevalnik in zvočnik, priključite USB midi tipkovnico in preizkusite
- Korak 6: Dokončajte vezje s 5V regulatorjem napetosti, 12V priključkom, stikalom za vklop/izklop in LED za vklop
- 7. korak: Zaprite v škatlo, barvajte in uživajte v novem sintetizatorju
Video: Zgradimo SN76489 USB MIDI Synth z Arduino Nano: 7 korakov
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:04
Ste kdaj želeli zgraditi svoj sintetizator na podlagi starih melodij iz 80-ih? Predvajajte preproste večglasne melodije, ki zvenijo tako, kot so zvenele stare videoigre Sega Master System in Megadrive?
Imam, zato sem naročil nekaj čipov SN76489 pri ebayu in vmesnik midi gostitelja in ga poskušal. No, to zame ni bil sprehod po parku, ampak užival sem v vsakem trenutku.
Najprej sem se naučil, kako neposredno povezati vmesnik SN76489 in z njim narediti nekaj hrupa. Pri tem je bilo nekaj zmedenih elementov, vendar sem s pomočjo bloga Oddbloke Geek in nekaj drugih primerov skupaj s specifikacijo čipa lahko razvil preprosto knjižnico arduino.
Nato sem se moral naučiti, kako povezati midi tipkovnico s mini gostiteljskim ščitom USB. To ni bilo tako težko, saj je na voljo nekaj dokumentacije in obstajajo dobre knjižnice z jasnimi primeri.
Ko sem razumel, kako upravljati čip in kako povezati USB midi tipkovnico, je ostalo le še napisati kodo, ki bi vse to zavila skupaj in mi omogočila uporabo tipkovnice za nadzor čipa.
Med potjo sem se naučil, da zvoki z nižjo frekvenco od tistih, ki sem jih poskušal ustvariti za midi note 0x2f, ne zvenijo pravilno, zato sem se odločil, da to uporabim za pošiljanje hrupa generatorju hrupa za vse midi note med 0x28 in 0x2f in dovolite tudi predvajanje not z orientalsko arabskim pridihom za vse, kar je nižje od midi 0x28.
Če pogledamo nazaj, je bilo graditi zelo zabavno in zelo zanimivo.
Upam, da se vam bo zdelo tako zabavno in zanimivo, kot sem jaz, in da boste, če ga sami zgradite, prijazni, da delite nekaj njegovih slik.
Če vam je bil ta projekt všeč, ga glasujte spodaj, da pomagate zmagati na natečaju, v katerem sodeluje
Zaloge
Dodal sem povezave do materiala, ki ga lahko kupite za ta projekt, vendar bi lahko našli veliko razpoložljivih predmetov, ki jih lahko odstranite iz stare elektronike.
Te povezave so partnerske povezave, zato če kupite, potem ko jih kliknete, dobim majhen del (ne bogastva) in dobite izdelek, ki je primeren za ta projekt. Pri njihovi uporabi ni nobenih pristojbin ali dodatnih stroškov, vendar lahko najdete vse podobne izdelke, ki jih lahko precej enostavno nadomestijo.
ebay.us/svA4z4 | 1 x plošča za uspešnost
ebay.us/ZyEFNp | 1x arduino nano
ebay.us/t1zy0v | 1 x mini mini ščit USB
ebay.to/2QrHl1C | 1 x zvočni čip SN76489
ebay.us/aaaj8p | 1 x premični register 595
ebay.us/DSvTHO | 1 x kristalni oscilator 4MHz
ebay.us/XQeM0Q | 1 x 5V regulator napetosti 7805
ebay.us/6R6Fpf | 1 x hladilnik za regulator napetosti
ebay.us/xkLbn4 | 3 x 10uF kondenzatorji
ebay.us/pnm2BH | žice
ebay.us/PMbUfY | 1 x rdeča LED za napajanje
ebay.us/zokHtc | 1 x 220 ohmski upor za omejitev pretoka LED diode
ebay.us/qjbesJ | 1 x napajalni konektor za 12v napajanje
ebay.us/cS0wwv | 1 x stikalo za vklop/izklop
primerno škatlo (svojo sem zgradil iz starega predala, ki je leta počival v mojem skladišču)
1. korak: Priprava mini gostiteljskega ščita USB za pogon 5V Midi naprave
Ker mini ščit gostitelja USB deluje na 3,3 V, midi tipkovnice USB, ki jih uporabljam, pa potrebujejo 5 V, je potrebno prilagoditi izhodno napetost ščita tako, da prerežemo napetost 3,3 V, ki gre na izhod USB Vcc, zato ga lahko kasneje priključimo na 5V.
Obstaja veliko vaj o tem, kako to storiti, in izkazalo se je, da je zelo preprosto:
Samo odrežite črto med uporom 2k2 in linijo Vcc (glejte priloženo sliko). Uporabil sem izvijač, da sem opraskal to linijo in preizkusil, ali deluje z merilnikom kontinuitete.
Korak: Povežite mini ščit USB z vašim Arduino Nano
Na srečo je veliko informacij o tem, kako to storiti, zato sem z googlanjem za "Arduino Nano in mini USB host shield" pristal na tej temi
Opisal je, kako priključiti ščit USB mini v2.0 in po tem sem šel naravnost naprej preizkusiti nekaj primerov midi USB.
Ožičenje:
Gostiteljski ščit Arduino
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5V -------------- 1
3,3 V ------------ 9
GND ----------- 3
RST ------------ 4
V tej temi je bilo omenjeno tudi, da so prerezali kabel 3.3V, tako da lahko USB dobi 5V iz VBUS.
Ta opis in priložene slike prihajajo iz te niti.
BTW, pri tiskanju na tej plošči je napaka, zato je bilo to nekoliko zmedeno, vendar lahko vidite moje povratne informacije o tem (tyrkelko) in od kod sem se tega naučil.
3. korak: Je kdo čips? Dodajanje SN76489 s 4MHz Osc. in 595 premični register
Zdaj je bil čas, da dodamo čip, ki oddaja ta neverjeten zvok.
Knjižnico sem že razvil za povezovanje arduina s tem čipom in moral sem le upoštevati moja navodila.
Knjižnica je izdana v githubu pod GPLv3 (moja prva odprtokodna izdaja).
github.com/tyrkelko/sn76489
Povezava 76489 in 595 je bila kot na priloženi sliki, ki je posneta iz datoteke readme.txt knjižnice
Omogočanje pisanja pri nizki vrednosti (NotWE) 76489 je bilo povezano s pin 3 nano in ga je mogoče spremeniti v kodi.
#define PIN_NotWE 3
595 je bil priključen na nano na naslednji način in ga je mogoče prilagoditi tudi z urejanjem številk pin:
#define PIN_SER 7
#define PIN_LATCH 6
#define PIN_CLK 5
Oscilator, ki sem ga uporabil, je bil 4MHz kristalni oscilator s 4 nogami.
V kodi je bil konfiguriran na naslednji način in njegovo vrednost lahko prilagodite kateri koli frekvenci oscilatorja med 500 kHz in 4 MHz:
#define FREQUENCY 4000000.0
Priključitev oscilatorja, ki sem ga uporabil, je bila naslednja:
pin 1 - ni priključen
nožica 7 - ozemljitev
pin 8 - priključen na 76489 pin 14 - ura osc
4. korak: Samo dodajte kodo - dodajanje knjižnic, sestavljanje in nalaganje kode
Knjižnice, uporabljene v tem projektu, je treba dodati v Arduino IDE na naslednji način:
Odprite Arduino IDE
Prenesite naslednje knjižnice v mapo knjižnice svojega IDE (upam, da jih boste kmalu videli v meniju »Upravljanje knjižnic…« v meniju »Orodja« IDE):
github.com/felis/USB_Host_Shield_2.0
github.com/tyrkelko/sn76489
Uporabite kodo iz naslednjega projekta github:
github.com/tyrkelko/usb_midi_tone
Prenesite usb_midi_tone.ino, sestavite in naložite v svoj Arduino nano.
5. korak: Priključite ojačevalnik in zvočnik, priključite USB midi tipkovnico in preizkusite
Zdaj je čas, da preizkusimo, ali vse deluje.
Za to potrebujemo:
1. Ojačevalnik in zvočnik
2. Midi tipkovnica USB
SN76489 pin 7, avdio izhod, priključite na avdio ojačevalnik.
Vklopite ojačevalnik in nato vklopite arduino nano. Zdaj bi morali za delček sekunde slišati zvok preizkusa vklopa.
Priključite midi tipkovnico USB in preizkusite.
Če vse deluje pravilno, bi morali imeti možnost predvajanja 3 tonov hkrati, predvajati pa tudi 8 vrst hrupa in celo nekaj četrtinskih tonov 24 EDO-Scale.
Če ne deluje, pojdite čez korake, da vidite, kaj je šlo narobe.
Če menite, da je to posledica nejasnih navodil, mi pošljite opombo, da posodobim navodila, da to popravim.
Korak 6: Dokončajte vezje s 5V regulatorjem napetosti, 12V priključkom, stikalom za vklop/izklop in LED za vklop
V tem koraku bi morali biti sposobni zaključiti vezje po tem, ko deluje, da deluje pravilno.
1. Dodajte regulator moči z LM7805 in dvema 10uF kondenzatorjema in 0,1uF. O tem obstaja veliko vaj, za to lahko uporabite naslednja navodila:
2. Dodajte 12V napajalni konektor z Vcc preko stikala za vklop/izklop
3. Dodajte LED z uporom za omejevalni tok, da označite, kdaj je napajanje vklopljeno.
7. korak: Zaprite v škatlo, barvajte in uživajte v novem sintetizatorju
Ko je vezje preizkušeno in deluje po vaših željah, vam ne preostane veliko drugega, kot da zgradite lepo ohišje, ga pobarvajte s čudovitimi barvami in predvajajte glasbo.
Upam, da ste uživali v branju tega navodila in da vas je navdihnilo, da ste ustvarili svoj sintetizator ali se lotili drugega projekta, na katerem delate.
Prosimo, komentirajte spodaj z morebitnimi vprašanji in če ste na podlagi te vadnice naredili kaj podobnega, bi bilo super, če delite, kar ste naredili, v "Jaz sem to naredil!" območju ali v razdelku za povratne informacije.
Priporočena:
Dub Siren Synth - 555 Project V2: 13 korakov (s slikami)
Dub Siren Synth - 555 Project V2: Moja prva izdelava dub sirene je bila nekoliko bolj zapletena. Čeprav je deloval dobro, ste za napajanje potrebovali baterije 3 x 9 V, kar je bilo preveč, zato sem moral zgraditi glavno vezje na prototipni plošči. Prvi video je demo zvokov, ki jih
Modul Synth za Raspberry Pi Stompbox: 6 korakov (s slikami)
Raspberry Pi Stompbox Synth Module: Cilj tega projekta je vstaviti zvočni modul na osnovi Fluidsynth v stompbox. Tehnično zveneč izraz "zvočni modul" v tem primeru pomeni napravo, ki sprejema MIDI sporočila (tj. notno vrednost, glasnost, upogibanje itd.) in sintetizira
Zgradimo (analogni sintetizator): 5 korakov
Let's Build (Analogue Synth): V tej seriji vam bom pokazal, kako zgraditi osnovni modularni analogni sintetizator z uporabo analognih in digitalnih komponent. Povezava do sheme in komponent: https://drive.google.com/open?id= 1mZX4LyiJwXZLJ3R56SDxloMnk8z07IYJ
Arduino Synth / Tone Generator: 5 korakov
Arduino Synth / Tone Generator: To je Synth / Tone Generator, ki uporablja ukaz Tone, ki je domač v Arduinu. Ima 12 posameznih tipk, ki jih je mogoče nastaviti za predvajanje katere koli frekvence kvadratnega vala. Ima možnost premikanja oktav gor in dol z gumbom. Ima tudi s
MIDI 5V LED tračni krmilnik za Spielatron ali drug MIDI Synth: 7 korakov (s slikami)
MIDI 5V LED trak za krmiljenje luči za Spielatron ali drug MIDI Synth: Ta krmilnik utripa tribarvne LED luči za 50mS na noto. Modra za G5 do D#6, rdeča za E6 do B6 in zelena za C7 do G7. Krmilnik je naprava ALSA MIDI, tako da lahko programska oprema MIDI oddaja LED diode hkrati z napravo za sinhronizacijo MIDI