Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Klargjør USB Mini Host Shield for å drive en 5V Midi -enhet
- Trinn 2: Koble USB Mini Shield til din Arduino Nano
- Trinn 3: Chips noen? Legger til SN76489 med 4MHz Osc. og 595 skiftregister
- Trinn 4: Bare legg til kode - Legge til biblioteker, kompilere og laste opp koden
- Trinn 5: Koble til en forsterker og høyttaler, koble til ditt USB Midi -tastatur og test
- Trinn 6: Fullfør kretsen med en 5V spenningsregulator, 12V -kontakt, på/av -bryter og strøm -LED
- Trinn 7: Sett i en eske, mal og nyt din nye syntese
Video: La oss bygge en SN76489 USB MIDI -syntese med Arduino Nano: 7 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:22
Har du noen gang ønsket å bygge din egen synthesizer basert på gamle chip-melodier fra 80-tallet? Spill enkle polyfoniske låter som høres ut akkurat som disse gamle Sega Master System- og Megadrive -videospillene hørtes ut som?
Jeg har derfor bestilt noen SN76489 -brikker fra ebay og et midi -vertsgrensesnitt og ga det et skudd. Vel, det var ikke en tur i parken for meg, men jeg likte hvert øyeblikk.
Først lærte jeg å koble SN76489 direkte og lage litt støy med den. Det var noen forvirrende elementer i dette, men ved hjelp av The Oddbloke Geek Blog og noen få andre eksempler, sammen med chipspesifikasjonsdokumentet, var jeg i stand til å utvikle et enkelt arduino -bibliotek.
Deretter måtte jeg lære å koble til et midi -tastatur med et USB mini vertsskjerm. Dette var ikke så vanskelig, siden det er noe dokumentasjon tilgjengelig, og det finnes gode biblioteker med klare eksempler.
Når jeg forsto hvordan jeg skulle kontrollere brikken og hvordan jeg skulle koble til mitt USB -midi -tastatur, var det bare å skrive noen kode som ville pakke alt dette sammen og la meg bruke tastaturet til å kontrollere brikken.
Underveis lærte jeg at lyder med lavere frekvens enn de jeg prøvde å generere for 0x2f midi noter ikke hørtes riktig ut, så jeg bestemte meg for å bruke det for å tillate å sende støy til støygeneratoren for midi notater mellom 0x28 og 0x2f og la også spille notater med et orientalsk arabisk preg på det for noe lavere enn midi 0x28.
Når vi ser bakover, var det veldig gøy og veldig interessant å bygge.
Jeg håper du synes det er like morsomt og interessant som jeg gjorde, og at hvis du bygger et selv, vil du være snill nok til å dele noen bilder av det.
Hvis du likte dette prosjektet, kan du stemme på det nedenfor for å vinne konkurransen det deltar i
Rekvisita
Jeg har lagt til lenker til materiale du kan kjøpe for dette prosjektet, men du kan finne mange tilgjengelige varer som du kan skrape fra gammel elektronikk.
Disse koblingene er tilknyttede lenker, så hvis du kjøper etter å ha klikket på dem, får jeg en liten del (ikke formue), og du får et produkt som passer for dette prosjektet. Det er ingen avgifter eller ekstra kostnader ved bruk av disse, men du kan finne lignende varer som kan erstatte disse ganske enkelt.
ebay.us/svA4z4 | 1 x performance board
ebay.us/ZyEFNp | 1 x arduino nano
ebay.us/t1zy0v | 1 x USB mini -skjerm
ebay.to/2QrHl1C | 1 x SN76489 lydbrikke
ebay.us/aaaj8p | 1 x skiftregister 595
ebay.us/DSvTHO | 1 x krystalloscillator på 4MHz
ebay.us/XQeM0Q | 1 x 5V spenningsregulator 7805
ebay.us/6R6Fpf | 1 x varmeavleder for spenningsregulatoren
ebay.us/xkLbn4 | 3 x 10uF kondensatorer
ebay.us/pnm2BH | ledninger
ebay.us/PMbUfY | 1 x rød LED for strøm
ebay.us/zokHtc | 1 x 220 ohm motstand for å begrense LED -strømmen
ebay.us/qjbesJ | 1 x strømkontakt for 12v strømforsyning
ebay.us/cS0wwv | 1 x av/på -bryter
en passende eske (jeg bygde min fra en gammel skuff som lå i oppbevaringen i mange år)
Trinn 1: Klargjør USB Mini Host Shield for å drive en 5V Midi -enhet
Siden USB mini -vertsskjermen fungerer på 3,3V og USB -midi -tastaturene jeg bruker krever 5V, er det nødvendig å justere skjoldets utgangsspenning ved å kutte 3,3V -linjen som går til USB out Vcc, så vi kan senere koble den til til 5V.
Det er mange opplæringsprogrammer om hvordan du gjør det, og det viste seg å være ganske enkelt:
Bare kutt linjen mellom 2k2 -motstanden og Vcc -linjen (se vedlagte bilde). Jeg brukte en skrutrekker til å klø denne linjen og testet om den fungerte med en kontinuitetsmåler.
Trinn 2: Koble USB Mini Shield til din Arduino Nano
Heldigvis er det mye informasjon om hvordan du gjør det, så ved å google etter "Arduino Nano og mini USB host shield" landet jeg på denne tråden
Den beskrev hvordan du kobler til USB mini v2.0 -skjoldet, og etter å ha fulgt det gikk jeg rett frem for å teste noen USB -midi -eksempler.
Kabling:
Arduino Host -skjold
10--------------5
11--------------6
12--------------7
13--------------8
2----------------2
5V -------------- 1
3.3V ------------ 9
GND ----------- 3
RST ------------ 4
I denne tråden ble det også nevnt at de kuttet 3,3V ledningen slik at USB kan få 5V fra VBUS.
Denne beskrivelsen og vedlagte bilder kom fra denne tråden.
BTW, det er en feil på utskriften på dette brettet, så dette var litt forvirrende, men du kan se tilbakemeldingen min om det (tyrkelko) og hvor jeg lærte det av.
Trinn 3: Chips noen? Legger til SN76489 med 4MHz Osc. og 595 skiftregister
Nå var det på tide å legge til brikken som lager denne fantastiske lyden.
Jeg har allerede utviklet et bibliotek for å koble arduino til med denne brikken, og måtte bare følge instruksjonene mine.
Biblioteket er utgitt i github under GPLv3 (min første åpen kildekode -utgivelse).
github.com/tyrkelko/sn76489
Tilkoblingen mellom 76489 og 595 var som i det vedlagte bildet som er hentet fra biblioteket readme.txt -fil
Write Enable on Low (NotWE) på 76489 ble koblet til pin 3 på nano og kan endres i koden.
#define PIN_NotWE 3
595 ble koblet til nano som følger og kan også justeres ved å redigere pin -tallene:
#define PIN_SER 7
#define PIN_LATCH 6
#define PIN_CLK 5
Oscillatoren jeg brukte var en 4MHz krystalloscillator med 4 bein.
Den ble konfigurert i koden som følger, og du kan justere verdien til en hvilken som helst oscillatorfrekvens mellom 500kHz og 4MHz:
#define FREKVENS 4000000.0
Koble til oscillatoren jeg brukte var som følger:
pin 1 - ikke tilkoblet
pinne 7 - bakken
pin 8 - koblet til 76489 pin 14 - clock osc
Trinn 4: Bare legg til kode - Legge til biblioteker, kompilere og laste opp koden
Biblioteker som brukes i dette prosjektet må legges til Arduino IDE på følgende måte:
Åpne Arduino IDE
Last ned følgende biblioteker til bibliotekmappen til IDE -en din (håper å se disse under "Administrer biblioteker …" -menyen i IDE "Verktøy" -menyen snart):
github.com/felis/USB_Host_Shield_2.0
github.com/tyrkelko/sn76489
Bruk koden fra følgende github -prosjekt:
github.com/tyrkelko/usb_midi_tone
Last ned usb_midi_tone.ino, kompiler og last opp til Arduino nano.
Trinn 5: Koble til en forsterker og høyttaler, koble til ditt USB Midi -tastatur og test
Nå er det på tide å teste alt fungerer.
For å gjøre det trenger vi:
1. En forsterker og høyttaler
2. Et USB midi -tastatur
Koble SN76489 pin 7, lydutgang, til forsterkerens lydinngang.
Slå på forsterkeren og slå deretter på arduino nano. Du bør nå høre testlyden for oppstart i et sekund.
Koble til USB midi -tastaturet og test.
Hvis alt fungerer riktig, bør du kunne spille 3 toner samtidig, og også spille 8 typer støy og til og med en kvart tone på 24 EDO-skala.
Hvis det ikke fungerer, gå over trinnene for å se hva som kan ha gått galt.
Hvis du føler at dette skyldes uklare instruksjoner, vennligst send meg en melding, så jeg oppdaterer instruksjonene for å fikse det.
Trinn 6: Fullfør kretsen med en 5V spenningsregulator, 12V -kontakt, på/av -bryter og strøm -LED
I dette trinnet bør du kunne avslutte kretsen etter å ha testet den for å fungere korrekt.
1. Legg til en effektregulator med LM7805 og to 10uF kondensatorer og 0.1uF. Det er mange opplæringsprogrammer om dette, du kan bruke følgende instrukser for å oppnå det-https://www.instructables.com/id/7805-Regulator-5V…
2. Legg til en 12V strømkontakt mens Vcc går via en av/på -bryter
3. Legg til en LED med en begrensende strømmotstand for å indikere når strømmen er på.
Trinn 7: Sett i en eske, mal og nyt din nye syntese
Når kretsen er testet og fungerer etter din smak, er det ikke mye igjen å gjøre bortsett fra å bygge et fint kabinett, male det med flotte farger og spille litt musikk.
Jeg håper du likte å lese dette instruerbare, og at det inspirerte deg til å bygge din egen synth eller komme i gang med et annet prosjekt du jobber med.
Kommenter nedenfor med spørsmål, og hvis du har bygget noe lignende basert på denne opplæringen, ville det være flott hvis du ville dele det du har laget i "Jeg har laget dette!" området eller i tilbakemeldingsdelen.
Anbefalt:
Skjære og koble til Phillips Hue Light Strips (for de av oss som ikke er så dyktige med lodding): 6 trinn
Kutting og tilkobling av Phillips Hue Light Strips (For de av oss som ikke er så dyktige med lodding): Hvis du er dyktig med lodding, er det et godt innlegg her ved å 'ruedli' om hvordan du gjør dette uten å kutte loddeputene i to .Disse trinnene er for de av oss som er kjent, men som ikke er super dyktige med lodding. Jeg har gjort grunnleggende solgt
Tommelhjulsklokke - La oss gjette tiden: 5 trinn (med bilder)
Tommelhjulsklokke - La oss gjette tiden: Hei alle sammen, her er mine første instrukser, så jeg håper det blir bra. Dessuten er engelsknivået mitt ganske dårlig, så jeg håper jeg ikke vil gjøre for mange feil! Målet med dette prosjektet er å gjenbruke noen " Thumbwheels " reddet fra et gammelt laboratorium
La oss lage en vandrerobot med en Coca-Cola-boks hjemme: 6 trinn (med bilder)
La oss lage en gående robot med en Coca-Cola-boks hjemme: Hei alle sammen, jeg er Merve! Vi skal lage en robot som går med en Coca-cola-tinn denne uken. *_*La oss begynne! ** VENNLIGST STEMME FOR DETTE PROJEKTET I STICK IT CONVEST
La oss lage en magisk krystallkule med magiske staver! ~ Arduino ~: 9 trinn
La oss lage en magisk krystallkule med magiske staver! ~ Arduino ~: I dette skal vi lage en magisk ball som bruker en bevegelsessensor og en RFID -skanner for å kontrollere animasjonene til LED -lysene inne
Hvordan bygge en gitarhøyttalerboks eller bygge to for stereoen din. 17 trinn (med bilder)
Hvordan bygge en gitarhøyttalerboks eller bygge to for stereoen din .: Jeg ønsket at en ny gitarhøyttaler skulle følge med rørforsterkeren jeg bygger. Høyttaleren vil forbli ute i butikken min, så det trenger ikke være noe for spesielt. Tolex -belegg kan bli for lett skadet, så jeg sprayet utsiden svart etter en lett sand