Sisällysluettelo:

Micro Midi -syntetisaattori: 5 vaihetta (kuvilla)
Micro Midi -syntetisaattori: 5 vaihetta (kuvilla)

Video: Micro Midi -syntetisaattori: 5 vaihetta (kuvilla)

Video: Micro Midi -syntetisaattori: 5 vaihetta (kuvilla)
Video: 10 tapaa tulla onnelliseksi 2024, Heinäkuu
Anonim
Micro Midi -syntetisaattori
Micro Midi -syntetisaattori
Micro Midi -syntetisaattori
Micro Midi -syntetisaattori
Micro Midi -syntetisaattori
Micro Midi -syntetisaattori

Tämä opas osoittaa VLSI VS1053b Audio- ja Midi DSP-sirun käytön reaaliaikaisessa Midi-tilassa. Tässä tilassa se toimii 64 -äänisenä polyfonisena GM (General Midi) Midi -syntetisaattorina. Erillinen Arduino Uno -mikro ohjaa OLED -näyttöä, kolmea painiketta (Toiminnon valinta ja Ylös- tai Alas -näppäin) ja siirtää Midi -datavirran audio -DSP: lle. Adafruit VS1053b -kirjastoja käytettiin paljon suuremman SFEMP3 -kirjaston sijaan (Sparkfun suositteli, vaikka niillä on myös oma kirjastojoukko), koska mielestäni Adafruit -koodi oli helpompi ymmärtää.

Suurin osa audio/midi DSP: n ohjaamiseen käytetystä koodista kehitettiin käyttämällä Arduino Unoa, joka oli liitetty audio/midi -katkaisulautaan leipälevyn kautta. Kun toiminnot todettiin toimivan tyydyttävästi, Unoa käytettiin ohjelmoijana erilliselle ATmega 328: lle, joka asetettiin sitten pienelle 30x20-kokoiselle Veroboard-levylle yhdessä 6N139-optoeristin-IC: n kanssa, joka vaaditaan Midi-tuloliittimessä (5-nastainen DIN). Kytkettynä oli myös pieni (64 x 48) OLED -suoja, kolme painiketta, Midi -aktiivisuus -LED ja +5 voltin tynnyripistoke virtalähteelle ja stereoäänilähtöliitin lisätty. Virrankulutus on hyvin vaatimaton - noin 20 mA 5 voltilla.

Vaihe 1: Osaluettelo

ATmega328 Mikro 28 -nastainen DIP + 28 -nastainen DIP -liitäntä pistorasia vahvistimeen tai kuulokkeisiin liittämistä varten Vastukset: 7 x 10k, 2 x 470 ohmia, 2 x 220 ohmia Kondensaattorit: 0,1uF 50v muovi, 10uf 25v elektrolyytti, 2 x 27 pF keraaminen 16 sarakkeella), ABS -muovikotelo noin 85x55x25mm, johdotus ja muutama ruuvi mutterit ja aluslevyt.

Vaihe 2: Rakentaminen

Rakentaminen
Rakentaminen
Rakentaminen
Rakentaminen
Rakentaminen
Rakentaminen

Kotelon kannessa on OLED -näyttö, kolme painiketta, jotka on asennettu toiseen pieneen palaan Veroboardia, ja tynnyrin virtaliitin. Vero -pääpiirilevyssä on kaksi reikää musiikin katkaisukortin kiinnittämiseksi ATmega328: n yläpuolelle. Lisätietoja liittämisestä on Fritzing -nauhalevyn kaaviossa.

Ohjelmoitu ATmega328 (katso koodi seuraavassa osassa) työnnetään sitten pistorasiaan, jota seuraa 6N139, ja kaikki on kytketty.

LEDiä käytetään Midi -aktiivisuusindikaattorina ja se on asennettu kotelon etupuolelle. Se on kytketty ATmega328: n D2 -lähtöön 470 ohmin vastuksen kautta.

OLED -näyttö käyttää virtaa Adafruit -levyn 3,3 voltin ulostulolla - se vaatii alle 20 mA.

Kokeile vaihtaa kaksi Midi Din -liitäntää, jos et kuule ääntä, kun käytät syntetisaattoria ensimmäisen kerran.

Vaihe 3: Ohjelmisto

Yksityiskohdat luonnoksesta, joka pitäisi ladata ATmega328 -laitteeseen, on MidA.ino -sivustossa. Käytettävissä on seitsemän toimintoa:

Vaihtoehto P: Vaihda ohjelma - vaihda GM -midi -instrumentti 1: stä 128: een (käytin 0: sta 127: een), kuten piano- tai synteettinen ääni. Vaihtoehto V: Säädä äänenvoimakkuus 1-10. Vaihtoehto C: Vaihda Midi -kanava, johon Synth vastaa. Vaihtoehdot ovat Kanava 0, Kanava 1, Kanava 9 (lyömäsoittimet), Kanava 0 ja 9 ja Kanava 1 ja 9. Vaihtoehto R: Kytke Kaiku -tehoste päälle tai pois päältä Vaihtoehto S: Tallenna nykyiset parametrit Eeprom -muistiin (ylös) tai Lue (alas) se takaisin Eeprom -muistista. Tämä johtuu siitä, että asetuksia ei muutoin tallenneta, kun virta katkaistaan.

Kahdeksas vaihtoehto ei ole vielä toteutettu - tämä ohittaa ATmegan Midi -suodattimena ja yhdistää optoerottimen lähdön suoraan DSP -kortin Rx -nastaan.

Huomaa, että VS1053b käynnistyy reaaliaikaisessa Midi -tilassa lataamalla 1039 tavun pakattu korjaustiedosto käynnistyksen aikana - tämä lisää myös Midi -puskurin kokoa ja suodattaa järjestelmän yksinomaiset Midi -tavut. Tämän korjaustiedoston tiedot löytyvät VLSI -verkkosivustolta.

Hieman muokattua versiota Adafruit Graphics -kirjastosta oli käytetty OLED -näytön 64 x 48 pikselin resoluution huomioon ottamiseen - katso herra Mcauserin lopussa olevat linkit. Luettelo tarvittavista kirjastoista on luonnoskoodissa.

Tärkeää on, että kun luonnos suoritetaan ensimmäistä kertaa ATmega328 -laitteessa, olipa se Uno tai erillinen, koodi lataa ATmega328 Eeprom -laitteen parametrien esiasetukset, jotka eivät ehkä ole kelvollisia. Siinä tapauksessa voit joko kirjoittaa kaikki nollat Eepromiin käyttämällä X -vaihtoehtoa alas -painikkeella tai kommentoida rivin tyhjäasetustoiminnossa, joka lataa arvot Eepromista, kun se käynnistetään ensimmäisen kerran, säätää instrumentit jne. ja tallenna esiasetuksesi S -vaihtoehto Ylös -painikkeella.

Luottoa annetaan kaikille henkilöille ja yhteisöille, jotka on mainittu heidän koodistaan ja kirjastoistaan.

Vaihe 4: Linkit

VLSI:

Adafruit:

Github VS1053b:

Github-grafiikka:

Oled:

Sparkfun:

Vaihe 5: Sparkfun -levyn käyttäminen Adafruit -kirjastojen kanssa

Sparkfun -levyn käyttäminen Adafruit -kirjastojen kanssa
Sparkfun -levyn käyttäminen Adafruit -kirjastojen kanssa

Kuvan taulukossa selitetään, miten Adafruit- tai Sparkfun -musiikkikortit liitetään toisen kirjaston käyttämiseen.

Suositeltava: