INHOUDSOPGAWE:
- Stap 1: Onderdele lys
- Stap 2: Konstruksie
- Stap 3: sagteware
- Stap 4: Skakels
- Stap 5: Gebruik die Sparkfun -bord saam met die Adafruit -biblioteke
Video: Micro Midi Synthesizer: 5 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:27
Hierdie instruksies demonstreer die gebruik van die VLSI VS1053b Audio en Midi DSP-chip in sy intydse Midi-modus. In hierdie modus werk dit as 'n polifoniese GM (General Midi) Midi -sintetiseerder met 64 stemme. 'N Arduino Uno selfstandige mikro beheer 'n OLED -skerm, drie knoppies (funksie kies en op of af, en gee die Midi -datastroom deur na die klank -DSP. Die musiekbord wat gekies is, was die Adafruit VS1053 codec breakout board, maar 'n Sparkfun musiek breakout board Die Adafruit VS1053b -biblioteke is gebruik in plaas van die veel groter SFEMP3 -biblioteek (aanbeveel deur Sparkfun, alhoewel hulle ook hul eie stel biblioteke het), omdat ek die Adafruit -kode makliker verstaanbaar gevind het.
Die meeste kode wat gebruik is om die audio/midi DSP te beheer, is ontwikkel met behulp van 'n Arduino Uno wat via 'n broodbord aan die audio/midi breakout -bord gekoppel is. Nadat bevind is dat die funksies bevredigend werk, is die Uno gebruik as programmeerder vir 'n selfstandige ATmega 328, wat dan op 'n klein 30x20 grootte Veroboard geplaas is, tesame met die 6N139 opto-isolator IC wat benodig word op die Midi-ingang ('n 5-pins DIN). Daar is ook 'n klein (64x48) OLED -skild, drie knoppies, 'n Midi -aktiwiteits -LED en 'n +5 volt -vataansluiting vir krag en die klankstereo -uitsetaansluiting ook verbind. Die kragvereistes is baie beskeie - ongeveer 20 mA by 5 volt.
Stap 1: Onderdele lys
ATmega328 Micro 28 pin DIP + 28 pin DIP socket 6N138 or 6N139 optoisolator + 4 pin DIP socket Wemos 64x48 I2C OLED Display or similarAdafruit VS1053b Codec breakout board3 miniature drukknoppies 5 pin DIN Midi socket PCB mount preferedSmall LED any colour. Barrel type power socket for the 5 aansluiting om aan te sluit op 'n versterker of koptelefoon Weerstande: 7 x 10k, 2 x 470 ohm, 2 x 220 ohm Kondensators: 0.1uF 50v plastiek, 10uf 25v elektrolities, 2 x 27 pF keramiek Klein stukke Veroboard (30 stroke by 20 kolomme en 4 stroke met 16 kolomme), ABS -plastiekomhulsel ongeveer 85x55x25mm, bedrading en 'n paar skroewe moere en ringe.
Stap 2: Konstruksie
Die deksel van die omhulsel huisves die OLED -skerm, die drie knoppies wat op 'n ander klein stuk Veroboard gemonteer is, en die vatkragaansluiting. Die hoof Vero -bord het twee gate om die musiekbreekbord bo die ATmega328 reg te maak. Raadpleeg die diagram van die Fritzing -strook vir aansluitingsbesonderhede.
Die geprogrammeerde ATmega328 (verwys na die volgende afdeling vir die kode) word dan in die houer geplaas, gevolg deur die 6N139 en alles word verbind.
Die LED word gebruik as 'n Midi -aktiwiteitsaanwyser en is aan die voorkant van die omhulsel gemonteer. Dit is gekoppel aan die D2 -uitset van die ATmega328 via 'n weerstand van 470 ohm.
Die OLED -skerm gebruik die 3,3 volt -uitgang van die Adafruit -bord vir krag - dit benodig minder as 20 mA.
Probeer die twee Midi Din -verbindings omruil as u geen klank hoor wanneer u die synth vir die eerste keer gebruik nie.
Stap 3: sagteware
Besonderhede van die skets wat na die ATmega328 opgelaai moet word, word in MidA.ino gegee. Daar is sewe funksies beskikbaar:
Opsie P: Verander program - verander die GM Midi -instrument van 1 na 128 (ek het 0 tot 127 gebruik), soos 'n klavier of Synth -klank. Opsie B: Verander die instrumentbank tussen Melodic (Bank 0) en Percussion (Bank 1). Opsie V: Pas die volume aan van 1 tot 10. Opsie C: Verander die Midi -kanaal waarop die Synth sal reageer. Die keuses is kanaal 0, kanaal 1, kanaal 9 (perkussie), kanaal 0 en 9, en kanaal 1 en 9. opsie R: skakel die reverb -effek aan of uit. of Lees (af) dit terug uit die Eeprom -geheue. Dit is omdat instellings andersins nie gestoor word tydens die afskakel nie. Opsie X: Stuur 'n boodskap van alle note af (Midi Reset).
'N Agtste opsie is nog nie geïmplementeer nie - dit sal die ATmega as 'n Midi -filter omseil en die uitset van die optoisolator direk aan die Rx -pen van die DSP -bord koppel.
Let daarop dat die VS1053b in 'n intydse Midi -modus opstart deur 'n saamgeperste pleister van 1039 byte te laai tydens die opstart - dit vergroot ook die grootte van die Midi -buffer en filter die stelsel eksklusiewe Midi -datagrepe. Besonderhede van hierdie pleister kan gevind word op die VLSI -webwerf.
'N Effens aangepaste weergawe van die Adafruit Graphics -biblioteek is gebruik om voorsiening te maak vir die resolusie van 64 x 48 pixel van die OLED -skerm - verwys na die skakels wat aan die einde gegee is vir mnr Mcauser. 'N Lys met die vereiste biblioteke word in die sketskode gegee.
Belangrik wanneer die skets vir die eerste keer op die ATmega328 uitgevoer word, of dit op 'n Uno of selfstandig is, laai die kode parametervoorinstellings van die ATmega328 Eeprom wat moontlik nie geldig is nie. In daardie geval kan u óf alle nulle aan die Eeprom skryf met die X -opsie met die afknoppie, óf kommentaar lewer op die reël in die leemte -opstelfunksie wat waardes vanaf die Eeprom laai wanneer dit die eerste keer begin word, u instrumente, ens. hou, en stoor u voorafinstellings met die S -opsie omhoog -knoppie.
Krediet word gegee aan al die persone en entiteite wat genoem word vir hul kode en biblioteke.
Stap 4: Skakels
VLSI:
Adafruit:
Github VS1053b:
Github-grafika:
Oled:
Sparkfun:
Stap 5: Gebruik die Sparkfun -bord saam met die Adafruit -biblioteke
Die tabel op die foto verduidelik hoe u die Adafruit of die Sparkfun Music Boards kan koppel om 'n ander biblioteek te gebruik.
Aanbeveel:
Micro: bit - Micro Drum Machine: 10 stappe (met foto's)
Micro: bit - Micro Drum Machine: Dit is 'n mikro: bit mikro drom masjien, wat in plaas van net die klank genereer, eintlik tromme speel. Dit is baie geïnspireer deur die konyne van die micro: bit orkes. Dit het my 'n rukkie geneem om 'n paar solenoïdes te vind wat maklik was om saam met die mocro te gebruik: bit
Arduino MIDI Chiptune Synthesizer: 7 stappe (met foto's)
Arduino MIDI Chiptune Synthesizer: Herleef die plesier van vroeë rekenaarspeletjies met 'n outentieke 8-bis chiptune-sintetiseerder, wat u vanuit die gemak van enige moderne DAW-sagteware oor MIDI kan beheer. Hierdie eenvoudige kring gebruik 'n Arduino om 'n AY-3- te bestuur 8910 programmeerbare klankgenera
Mat met sensors/ RF -kommunikasie met Arduino Micro: 4 stappe (met foto's)
Vloerkleed met sensors/ RF -kommunikasie met Arduino Micro: Ek het onlangs die installasie Ewe uiteenlopend voltooi, wat bestaan uit 'n reeks lampe wat reageer op die sensors wat in 'n mat onder die lampe geplaas is. Hier is hoe ek die mat met druksensors gemaak het. Ek hoop dat u dit nuttig sal vind
Hoe om 'n rekenaar met maklike stappe en foto's uitmekaar te haal: 13 stappe (met foto's)
Hoe om 'n rekenaar uitmekaar te haal met eenvoudige stappe en foto's: dit is 'n instruksie oor hoe om 'n rekenaar uitmekaar te haal. Die meeste basiese komponente is modulêr en kan maklik verwyder word. Dit is egter belangrik dat u daaroor georganiseerd is. Dit sal u verhinder om onderdele te verloor, en ook om die montering weer
MIDI 5V LED Strip Light Controller vir die Spielatron of ander MIDI Synth: 7 stappe (met foto's)
MIDI 5V LED Strip Light Controller vir die Spielatron of ander MIDI Synth: hierdie kontroleerder flits drie-kleur LED strookligte vir 50mS per noot. Blou vir G5 tot D#6, rooi vir E6 tot B6 en groen vir C7 tot G7. Die kontroleerder is 'n ALSA MIDI -toestel, sodat MIDI -sagteware op dieselfde tyd na die LED's kan oorgedra word as 'n MIDI synth -toestel