Kazalo:

Micro Midi sintetizator: 5 korakov (s slikami)
Micro Midi sintetizator: 5 korakov (s slikami)

Video: Micro Midi sintetizator: 5 korakov (s slikami)

Video: Micro Midi sintetizator: 5 korakov (s slikami)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, November
Anonim
Mikro midi sintetizator
Mikro midi sintetizator
Mikro midi sintetizator
Mikro midi sintetizator
Mikro midi sintetizator
Mikro midi sintetizator

Ta priročnik dokazuje uporabo čipa VLSI VS1053b Audio in Midi DSP v načinu Midi v realnem času. V tem načinu deluje kot 64 -glasovni polifonijski GM (General Midi) Midi sintetizator. Samostojna mikro -naprava Arduino Uno upravlja OLED -zaslon, tri gumbe (izbira funkcij in gor ali dol ter posreduje podatkovni tok Midi skozi zvočni DSP. Izbrana glasbena plošča je bila plošča za kodek Adafruit VS1053, vendar glasbena plošča Sparkfun Knjižnice Adafruit VS1053b so bile uporabljene namesto veliko večje knjižnice SFEMP3 (priporoča jo Sparkfun, čeprav imajo tudi svoj nabor knjižnic), ker se mi je zdela koda Adafruit lažje razumljiva.

Večina kode, ki se uporablja za nadzor avdio/midi DSP, je bila razvita z uporabo Arduino Uno, priključenega na ploščo za zvok/midi prek plošče. Ko je bilo ugotovljeno, da funkcije delujejo zadovoljivo, je bil Uno uporabljen kot programer za samostojno ATmego 328, ki so jo nato namestili na majhno ploščo Veroboard velikosti 30x20 skupaj z optoizolacijskim IC 6N139, potrebnim na vhodni vtičnici Midi (5-polni DIN). Priključen je bil tudi majhen (64x48) OLED -ščit, trije gumbi, LED -lučka za Midi in priključek za napetost +5 voltov za napajanje in priključek za avdio stereo izhod. Zahteve po moči so zelo skromne - približno 20 mA pri 5 voltih.

1. korak: Seznam delov

ATmega328 Micro 28 -polni DIP + 28 -polni DIP -vtičnica 6N138 ali 6N139 optični izolator 6 -polni DIP -vtičnica Wemos 64x48 I2C OLED zaslon ali podobno Adafruit VS1053b vtičnica za kodek 3 miniaturni gumbi 5 pin DIN Midi vtičnica PCB prednostna Majhna LED katera koli barva vtičnica za barv vtičnica za priključitev na ojačevalnik ali slušalke Upori: 7 x 10k, 2 x 470 ohm, 2 x 220 ohm Kondenzatorji: 0,1uF 50v plastika, 10uf 25v elektrolitska, 2 x 27 pF keramika Majhni kosi Veroboard (30 trakov po 20 stolpcev in 4 trakovi za 16 stolpcev), ohišje iz ABS plastike približno 85x55x25 mm, ožičenje in nekaj vijakov matice in podložke.

2. korak: Gradnja

Gradnja
Gradnja
Gradnja
Gradnja
Gradnja
Gradnja

Na pokrovu ohišja je zaslon OLED, trije gumbi, ki so nameščeni na drugem majhnem kosu Veroboarda, in priključek za napajanje cevi. Glavno vezje Vero ima dve luknji za pritrditev glasbene plošče nad ATmega328. Podrobnosti o povezavi najdete v diagramu Fritzing strip board.

Programirani ATmega328 (za kodo glejte naslednji razdelek) se nato vstavi v vtičnico, ki ji sledi 6N139 in vse je povezano.

LED se uporablja kot kazalnik aktivnosti Midi in je bil nameščen na sprednji strani ohišja. Povezan je z izhodom D2 ATmega328 preko upora 470 ohmov.

Zaslon OLED za napajanje uporablja 3,3 -voltni izhod iz plošče Adafruit - potrebuje manj kot 20 mA.

Poskusite zamenjati dve povezavi Midi Din, če pri prvi uporabi sintetizatorja ne slišite zvoka.

3. korak: Programska oprema

Podrobnosti o skici, ki jo je treba naložiti v ATmega328, so navedene v MidA.ino. Na voljo je sedem funkcij:

Možnost P: Spremeni program - spremenite GM Midi inštrument z 1 na 128 (uporabil sem 0 do 127), na primer klavir ali sintetični zvok. Možnost V: prilagodite glasnost od 1 do 10. Možnost C: spremenite Midi kanal, na katerega se bo odzval Synth. Izbirate lahko med kanalom 0, kanalom 1, kanalom 9 (tolkala), kanalom 0 in 9 ter kanalom 1 in 9. Možnost R: Vklopite ali izklopite učinek Reverb. ali preberite (navzdol) nazaj iz pomnilnika Eeprom. To je zato, ker pri izklopu nastavitve sicer niso shranjene. Možnost X: Pošljite sporočilo o izključitvi vseh zapiskov (Midi Reset).

Osma možnost še ni uresničena - to bo zaobšlo ATmego kot Midi filter in priključilo izhod optoizolatorja neposredno na Rx pin na plošči DSP.

Upoštevajte, da se VS1053b zaganja v načinu Midi v realnem času z nalaganjem 1039 -bajtnega stisnjenega popravka med zagonom - s tem se poveča tudi velikost medpomnilnika Midi in filtrirajo izključni podatkovni bajti Midi. Podrobnosti o tem popravku najdete na spletnem mestu VLSI.

Nekoliko spremenjena različica knjižnice Adafruit Graphics je bila uporabljena za ločljivost zaslona OLED zaslona 64x48 slikovnih pik - glejte povezave, podane na koncu za gospoda Mcauserja. Seznam potrebnih knjižnic je podan v kodi skice.

Pomembno je, da ko se skica prvič izvede na ATmega328, ne glede na to, ali je v sistemu Uno ali samostojno, bo koda naložila prednastavitve parametrov iz ATmega328 Eeprom, ki morda niso veljavni. V tem primeru lahko vnesete vse ničle v Eeprom z možnostjo X s tipko navzdol ali komentirate vrstico v funkciji nastavitve praznine, ki ob prvem zagonu naloži vrednosti iz Eeproma, svoje instrumente itd. všečkanje, nato pa shranite prednastavitve z gumbom S z možnostjo gor.

Priznavajo se vse osebe in subjekti, omenjeni za njihovo kodo in knjižnice.

4. korak: Povezave

VLSI:

Adafruit:

Github VS1053b:

Grafika Github:

Oled:

Sparkfun:

5. korak: Uporaba plošče Sparkfun s knjižnicami Adafruit

Uporaba plošče Sparkfun s knjižnicami Adafruit
Uporaba plošče Sparkfun s knjižnicami Adafruit

Tabela na sliki pojasnjuje, kako povezati glasbene plošče Adafruit ali Sparkfun za uporabo druge knjižnice.

Priporočena: