Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Forberedelse af USB Mini Host Shield til at drive en 5V Midi -enhed
- Trin 2: Tilslut USB Mini Shield med din Arduino Nano
- Trin 3: Chips nogen? Tilføjelse af SN76489 Med 4MHz Osc. og 595 Skiftregister
- Trin 4: Tilføj blot kode - Tilføjelse af biblioteker, kompilering og upload af koden
- Trin 5: Tilslut en forstærker og højttaler, tilslut dit USB Midi -tastatur og test
- Trin 6: Fuldfør kredsløbet med en 5V spændingsregulator, 12V stik, tænd/sluk -knap og strøm -LED
- Trin 7: Læg i en kasse, mal og nyd din nye syntese
Video: Lad os bygge en SN76489 USB MIDI Synth med Arduino Nano: 7 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Har du nogensinde ønsket at bygge din egen synthesizer baseret på gamle chip-melodier fra 80'erne? Spil enkle polyfoniske melodier, der lyder ligesom disse gamle Sega Master System og Megadrive videospil lød som?
Jeg har, så jeg bestilte et par SN76489 chips fra ebay og en midi host interface og gav det et skud. Nå, det var ikke en tur i parken for mig, men jeg nød hvert øjeblik.
Først lærte jeg, hvordan jeg direkte interfacer SN76489 og larmer lidt med det. Der var nogle forvirrende elementer i dette, men ved hjælp af The Oddbloke Geek Blog og et par andre eksempler kunne jeg sammen med chipspecifikationsdokumentet udvikle et simpelt arduino -bibliotek.
Dernæst måtte jeg lære at tilslutte et midi -tastatur med et USB mini -værtsskjold. Dette var ikke så svært, da der er noget dokumentation til rådighed, og der findes gode biblioteker med klare eksempler.
Når jeg forstod, hvordan jeg skulle kontrollere chippen, og hvordan jeg skulle tilslutte mit USB midi -tastatur, var det eneste, jeg skulle gøre, at skrive en kode, der ville pakke alt dette sammen og give mig mulighed for at bruge tastaturet til at styre chippen.
Undervejs lærte jeg, at lyde med lavere frekvens end dem, jeg forsøgte at generere for 0x2f midi -toner, ikke lyder rigtigt, så jeg besluttede at bruge det til at tillade at sende støj til støjgeneratoren for alle midi -toner mellem 0x28 og 0x2f og tillade også afspilningsnoter med et orientalsk arabisk touch til det, der er lavere end midi 0x28.
Set baglæns var det meget sjovt og meget interessant at bygge.
Jeg håber, at du synes det er lige så sjovt og interessant som jeg gjorde, og at hvis du selv bygger et, ville du være venlig nok til at dele nogle billeder af det.
Hvis du kunne lide dette projekt, skal du stemme på det herunder for at hjælpe med at vinde den konkurrence, det deltager i
Forbrugsvarer
Jeg har tilføjet links til materiale, du kan købe til dette projekt, men du kan finde mange tilgængelige varer, som du kan skrabe fra gammel elektronik.
Disse links er tilknyttede links, så hvis du køber efter at have klikket på dem, får jeg en lille portion (ikke formue), og du får et produkt, der passer til dette projekt. Der er ingen gebyrer eller ekstra omkostninger ved at bruge disse, men du kan finde lignende varer, der ret let kan erstatte disse.
ebay.us/svA4z4 | 1 x performance board
ebay.us/ZyEFNp | 1 x arduino nano
ebay.us/t1zy0v | 1 x USB mini -skærm
ebay.to/2QrHl1C | 1 x SN76489 lydchip
ebay.us/aaaj8p | 1 x skifteregister 595
ebay.us/DSvTHO | 1 x krystaloscillator på 4MHz
ebay.us/XQeM0Q | 1 x 5V spændingsregulator 7805
ebay.us/6R6Fpf | 1 x køleplade til spændingsregulatoren
ebay.us/xkLbn4 | 3 x 10uF kondensatorer
ebay.us/pnm2BH | ledninger
ebay.us/PMbUfY | 1 x rød LED til strøm
ebay.us/zokHtc | 1 x 220 ohm modstand for at begrænse LED -strømmen
ebay.us/qjbesJ | 1 x strømstik til 12v strømforsyning
ebay.us/cS0wwv | 1 x tænd/sluk -kontakt
en passende kasse (jeg byggede min fra en gammel skuffe, der hvilede i mit lager i årevis)
Trin 1: Forberedelse af USB Mini Host Shield til at drive en 5V Midi -enhed
Da USB mini -værtsskærmen fungerer på 3.3V, og de USB -midi -tastaturer, jeg bruger, kræver 5V, er det nødvendigt at justere skjoldets udgangsspænding ved at skære den 3.3V -linje, der går til USB -ud Vcc, så vi kan senere tilslutte det til 5V.
Der er masser af tutorials om, hvordan man gør det, og det viste sig at være ganske enkelt:
Skær bare linjen mellem 2k2 -modstanden og Vcc -linjen (se vedlagte billede). Jeg brugte en skruetrækker til at ridse denne linje og testede, om den fungerede med en kontinuitetsmåler.
Trin 2: Tilslut USB Mini Shield med din Arduino Nano
Heldigvis er der masser af information om, hvordan man gør det, så ved at google efter "Arduino Nano og mini USB host shield" landede jeg på denne tråd
Det beskrev, hvordan du tilslutter USB mini v2.0 -skjoldet, og efter at have fulgt det gik jeg lige frem for at teste nogle USB -midi -eksempler.
Ledninger:
Arduino værtsskjold
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5V -------------- 1
3.3V ------------ 9
GND ----------- 3
RST ------------ 4
I denne tråd blev det også nævnt, at de skar 3,3V -ledningen, så USB'en kan få 5V fra VBUS.
Denne beskrivelse og vedlagte billeder stammer fra denne tråd.
BTW, der er en fejl på printet på dette bord, så det var lidt forvirrende, men du kan se min feedback om det (tyrkelko), og hvor jeg lærte det fra.
Trin 3: Chips nogen? Tilføjelse af SN76489 Med 4MHz Osc. og 595 Skiftregister
Nu var det tid til at tilføje den chip, der laver denne fantastiske lyd.
Jeg har allerede udviklet et bibliotek til at interface arduino med denne chip og måtte kun følge mine instruktioner.
Biblioteket frigives i github under GPLv3 (min første open source -udgivelse).
github.com/tyrkelko/sn76489
Forbindelsen mellem 76489 og 595 var som i det vedlagte billede, som er taget fra biblioteket readme.txt -fil
Write Enable on Low (NotWE) fra 76489 var forbundet med pin 3 på nano'en og kan ændres i koden.
#define PIN_NotWE 3
595 blev forbundet til nano som følger og kan også justeres ved at redigere stiftnumrene:
#definer PIN_SER 7
#definer PIN_LATCH 6
#definer PIN_CLK 5
Den oscillator, jeg brugte, var en 4MHz krystaloscillator med 4 ben.
Den blev konfigureret i koden som følger, og du kan justere dens værdi til enhver oscillatorfrekvens mellem 500kHz og 4MHz:
#define FREKVENS 4000000.0
Tilslutning af den oscillator, jeg brugte, var som følger:
pin 1 - ikke tilsluttet
pin 7 - jorden
pin 8 - forbundet til 76489 pin 14 - ur osc
Trin 4: Tilføj blot kode - Tilføjelse af biblioteker, kompilering og upload af koden
Biblioteker, der bruges i dette projekt, skal tilføjes til Arduino IDE som følger:
Åbn Arduino IDE
Download følgende biblioteker i biblioteksmappen på din IDE (håber at se disse under menuen "Administrer biblioteker …" i IDE "Værktøjer" -menuen snart):
github.com/felis/USB_Host_Shield_2.0
github.com/tyrkelko/sn76489
Brug koden fra følgende github -projekt:
github.com/tyrkelko/usb_midi_tone
Download usb_midi_tone.ino, kompilér og upload til din Arduino nano.
Trin 5: Tilslut en forstærker og højttaler, tilslut dit USB Midi -tastatur og test
Nu er det tid til at teste alt fungerer.
For at gøre det har vi brug for:
1. En forstærker og højttaler
2. Et USB midi -tastatur
Tilslut SN76489 pin 7, lydudgang, til forstærkerens lydindgang.
Tænd for forstærkeren, og tænd derefter for arduino nano. Du skulle nu høre opstartstestlyden i et splitsekund.
Tilslut USB midi -tastaturet og test.
Hvis alt fungerer korrekt, skal du kunne afspille 3 toner samtidigt og også afspille 8 typer støj og endda en kvart tone på 24 EDO-skala.
Hvis det ikke virker, skal du gå over trinene for at se, hvad der kan være gået galt.
Hvis du føler, at dette skyldes uklare instruktioner, bedes du sende mig en note, så jeg opdaterer instruktionerne for at rette det.
Trin 6: Fuldfør kredsløbet med en 5V spændingsregulator, 12V stik, tænd/sluk -knap og strøm -LED
I dette trin skulle du være i stand til at afslutte kredsløbet efter at have testet det for at fungere korrekt.
1. Tilføj en effektregulator med LM7805 og to 10uF kondensatorer og 0.1uF. Der er masser af tutorials om dette, du kan bruge følgende instruktive til at opnå det-https://www.instructables.com/id/7805-Regulator-5V…
2. Tilføj et 12V strømstik, mens Vcc går via en tænd/sluk -kontakt
3. Tilføj en LED med en begrænsende strømmodstand for at angive, hvornår strømmen er tændt.
Trin 7: Læg i en kasse, mal og nyd din nye syntese
Når kredsløbet er testet og fungerer efter din smag, er der ikke meget tilbage at gøre, bortset fra at bygge et flot kabinet, male det med fantastiske farver og afspille noget musik.
Jeg håber, at du nød at læse dette instruerbare, og at det inspirerede dig til at bygge din egen synth eller komme i gang med et andet projekt, du arbejder på.
Kommenter venligst nedenfor med eventuelle spørgsmål, og hvis du har bygget noget lignende baseret på denne vejledning, ville det være fantastisk, hvis du ville dele det, du har lavet i "Jeg lavede dette!" område eller i feedbackafsnittet.
Anbefalede:
Lad os bygge (analog syntese): 5 trin
Lad os bygge (analog syntese): I denne serie vil jeg vise dig, hvordan du bygger en grundlæggende modulær analog synthesizer ved hjælp af både analoge og digitale komponenter.Link til skematisk og komponenter: https://drive.google.com/open?id= 1mZX4LyiJwXZLJ3R56SDxloMnk8z07IYJ
Tommelfingerur - Lad os gætte tiden: 5 trin (med billeder)
Tommelfingerur - Lad os gætte tiden: Hej alle sammen, her er mine første instruktioner, så jeg håber, det bliver godt. Desuden er mit engelske niveau ret dårligt, så jeg håber, jeg ikke vil lave for mange fejl! Målet med dette projekt er at genbruge nogle " Thumbwheels " bjærget fra et gammelt laboratorium
Lad os lave en vandrerobot med en Coca-Cola-dåse derhjemme: 6 trin (med billeder)
Lad os lave en gangrobot med en Coca-Cola-dåse derhjemme: Hej alle sammen, jeg er Merve! Vi skal lave en robot, der går med en Coca-cola-tin i denne uge. *_*Lad os starte! ** STEM venligst til DETTE PROJEKT I STICK IT CONVEST
Lad os lave en magisk krystalkugle med trylleformularer! ~ Arduino ~: 9 trin
Lad os lave en magisk krystalkugle med trylleformularer! ~ Arduino ~: I dette skal vi lave en Magic Ball, der bruger en bevægelsessensor og en RFID -scanner til at styre animationerne af LED -lysene inde
MIDI 5V LED Strip Light Controller til Spielatron eller anden MIDI Synth: 7 trin (med billeder)
MIDI 5V LED Strip Light Controller til Spielatron eller anden MIDI Synth: Denne controller blinker trefarvede LED strip lys for 50mS pr note. Blå for G5 til D#6, rød for E6 til B6 og grøn for C7 til G7. Controlleren er en ALSA MIDI -enhed, så MIDI -software kan sende til lysdioderne samtidig med en MIDI -synthenhed