Turinys:
- 1 žingsnis: dalių sąrašas
- 2 žingsnis: Statyba
- 3 žingsnis: programinė įranga
- 4 žingsnis: nuorodos
- 5 veiksmas: „Sparkfun“lentos naudojimas su „Adafruit“bibliotekomis
Video: „Micro Midi“sintezatorius: 5 žingsniai (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:49
Ši instrukcija demonstruoja VLSI VS1053b garso ir „Midi DSP“lusto naudojimą realiuoju laiku veikiančiu „Midi“režimu. Šiuo režimu jis veikia kaip 64 balsų polifoninis GM (General Midi) Midi sintezatorius. „Arduino Uno“atskiras mikrovaldiklis valdo OLED ekraną, tris mygtukus (funkcijų pasirinkimas ir aukštyn arba žemyn) ir perduoda „Midi“duomenų srautą į garso DSP. Pasirinkta muzikos plokštė buvo „Adafruit VS1053“kodeko pertraukimo lenta, bet „Sparkfun“muzikos pertraukimo plokštė taip pat buvo sėkmingai išbandytas. Adafruit VS1053b bibliotekos buvo naudojamos vietoj daug didesnės SFEMP3 bibliotekos (rekomendavo „Sparkfun“, nors jos taip pat turi savo bibliotekų rinkinį), nes man buvo lengviau suprasti „Adafruit“kodą.
Dauguma kodo, naudojamo garso/midi DSP valdymui, buvo sukurtas naudojant „Arduino Uno“, prijungtą prie garso/midi pertraukos plokštės per duonos lentą. Nustačius, kad funkcijos veikia patenkinamai, „Uno“buvo naudojamas kaip savarankiško ATmega 328 programuotojas, kuris buvo uždėtas ant mažos 30 x 20 dydžio „Veroboard“plokštės kartu su 6N139 optinio izoliatoriaus IC, reikalingu „Midi“įvesties lizde (5 kontaktų DIN).. Taip pat buvo prijungtas mažas (64 x 48) OLED skydas, trys mygtukai, „Midi“aktyvumo šviesos diodas ir +5 voltų statinės jungtis, skirta maitinti ir garso stereo išvesties jungtis. Maitinimo reikalavimai yra labai nedideli - apie 20 mA esant 5 voltams.
1 žingsnis: dalių sąrašas
„ATmega328 Micro“28 kontaktų DIP + 28 kontaktų DIP lizdas lizdas, skirtas prijungti prie stiprintuvo ar ausinių Rezistoriai: 7 x 10k, 2 x 470 omų, 2 x 220 omų Kondensatoriai: 0,1uF 50v plastikas, 10uf 25v elektrolitinis, 2 x 27 pF keramika Maži Veroboard gabaliukai (30 juostelių po 20 stulpelių ir 4 juostelės) 16 stulpelių), ABS plastikinis gaubtas apie 85x55x25mm, laidai ir keli varžtai veržlės ir poveržlės.
2 žingsnis: Statyba
Korpuso dangtelyje yra OLED ekranas, trys mygtukai, pritvirtinti prie kito mažo „Veroboard“gabalo, ir statinės maitinimo jungtis. Pagrindinėje „Vero“plokštėje yra dvi skylės, skirtos pritvirtinti „Music Breakout“plokštę virš ATmega328. Daugiau informacijos apie prijungimą rasite „Fritzing“juostos plokštės schemoje.
Užprogramuotas ATmega328 (kodo ieškokite kitame skyriuje) įkišamas į lizdą, po to - 6N139 ir viskas yra prijungta.
Šviesos diodas naudojamas kaip „Midi“veiklos indikatorius ir buvo sumontuotas priekinėje korpuso pusėje. Jis prijungtas prie AT2328 D2 išvesties per 470 omų rezistorių.
Energijai OLED ekranas naudoja 3,3 volto išėjimą iš „Adafruit“plokštės - tam reikia mažiau nei 20 mA.
Pabandykite pakeisti dvi „Midi Din“jungtis, jei pirmą kartą naudodami sintezatorių negirdite jokio garso.
3 žingsnis: programinė įranga
Išsami informacija apie eskizą, kurį reikia įkelti į „ATmega328“, pateikta „MidA.ino“. Galimos septynios funkcijos:
P variantas: Keisti programą - pakeiskite GM Midi instrumentą iš 1 į 128 (aš naudojau nuo 0 iki 127), pvz., Fortepijono ar sintezės garsą. B parinktis: pakeiskite instrumentų banką tarp melodinio (0 bankas) ir perkusijos (1 bankas). V parinktis: sureguliuokite garsumą nuo 1 iki 10. C parinktis: pakeiskite „Midi“kanalą, į kurį „Synth“reaguos. Pasirinkimai yra kanalas 0, 1 kanalas, 9 kanalas (mušamieji), 0 ir 9 kanalai bei 1 ir 9 kanalas. R parinktis: įjunkite arba išjunkite „Reverb“efektą. S parinktis: išsaugokite esamus parametrus „Eeprom“atmintyje (aukštyn) arba perskaitykite (žemyn) iš „Eeprom“atminties. Taip yra todėl, kad išjungus parametrai kitaip neišsaugomi. X parinktis: Siųskite visų užrašų išjungimo pranešimą („Midi Reset“).
Aštuntoji galimybė dar neįgyvendinta - tai apeis „ATmega“kaip „Midi“filtrą ir prijungs optinio izoliatoriaus išvestį tiesiai prie DSP plokštės Rx kaiščio.
Atminkite, kad „VS1053b“įjungiamas realiuoju laiku veikiančiu „Midi“režimu, įkrovos metu įkeliant 1039 baitų suspaustą pataisą - tai taip pat padidina „Midi“buferio dydį ir filtruoja išskirtinius „Midi“duomenų baitus. Išsamią informaciją apie šį pleistrą rasite VLSI svetainėje.
Šiek tiek pakeista „Adafruit Graphics“bibliotekos versija buvo naudojama 64 x 48 pikselių OLED ekrano skiriamajai gebai patenkinti - žr. Pabaigoje pateiktas nuorodas į p. Reikalingų bibliotekų sąrašas pateiktas eskizo kode.
Svarbu tai, kad eskizas pirmą kartą vykdomas naudojant „ATmega328“, nesvarbu, ar jis yra „Uno“, ar atskiras, kodas įkelia iš anksto nustatytus parametrus iš „ATmega328 Eeprom“, kurie gali būti netinkami. Tokiu atveju galite rašyti visus nulius į „Eeprom“naudodami parinktį X su mygtuku žemyn arba komentuoti eilutę tuščiosios sąrankos funkcijoje, kuri įkelia vertes iš „Eeprom“, kai ji pirmą kartą paleidžiama, pritaikykite savo instrumentus ir pan. patinka, tada išsaugokite išankstinius nustatymus naudodami mygtuką S parinktis aukštyn.
Kreditas suteikiamas visiems asmenims ir subjektams, paminėtiems dėl jų kodo ir bibliotekų.
4 žingsnis: nuorodos
VLSI:
„Adafruit“:
„Github VS1053b“:
„Github“grafika:
Oled:
„Sparkfun“:
5 veiksmas: „Sparkfun“lentos naudojimas su „Adafruit“bibliotekomis
Paveikslėlio lentelėje paaiškinta, kaip prijungti „Adafruit“arba „Sparkfun“muzikos plokštes prie kitos bibliotekos.
Rekomenduojamas:
Vandens sintezatorius su „MakeyMakey“ir įbrėžimais: 6 žingsniai (su nuotraukomis)
Vandens sintezatorius su „MakeyMakey“ir įbrėžimais: „MakeyMakey“naudojimas įvairioms medžiagoms paversti jungikliais ar mygtukais ir taip sukelti judesius ar garsus kompiuteryje yra žavus reikalas. Žmogus sužino, kuri medžiaga skleidžia silpną srovės impulsą, ir gali išrasti bei eksperimentuoti su
Nuostabus analoginis sintezatorius/vargonai naudojant tik atskirus komponentus: 10 žingsnių (su nuotraukomis)
Nuostabus analoginis sintezatorius/organas, kuriame naudojami tik atskiri komponentai: Analoginiai sintezatoriai yra labai šaunūs, tačiau juos taip pat gana sunku pagaminti. Taigi norėjau padaryti tokį paprastą, kokį tik gali gauti, todėl jo veikimas gali būti lengvai suprantamas. Kad jis veiktų, reikia kelių pagrindinių grandinių: paprastas osciliatorius su atsparumu
„Arduino MIDI Chiptune“sintezatorius: 7 žingsniai (su nuotraukomis)
„Arduino MIDI Chiptune“sintezatorius: atgaivinkite ankstyvųjų kompiuterinių žaidimų muzikos linksmybes su autentišku 8 bitų „chiptune“sintezatoriumi, kurį galite valdyti naudodami MIDI naudodami bet kokią šiuolaikinę DAW programinę įrangą. Ši paprasta grandinė naudoja „Arduino“, kad vairuotų AY-3- 8910 programuojamų garso genčių
Keturių garsiakalbių sintezatorius: 10 žingsnių (su nuotraukomis)
Keturių garsiakalbių sintezatorius: Čia yra paprastas sintezatorius, turintis: 22 klavišus garsumo valdymas tonas pakeistas skirtingas garso efektų diapazonas (garsiakalbiams) keturi garsiakalbiai šviesa (garsiakalbiams) Kiekvienas gali jį sukurti, išskyrus elektroninius komponentus, visa kita galima rasti namuose
Muzikos sintezatorius, pagrįstas DE0-Nano-SoC: 5 žingsniai (su nuotraukomis)
Muzikos sintezatorius, pagrįstas DE0-Nano-SoC: Muzikos sintezatorius Šis muzikos sintezatorius yra gana paprastas: tereikia pūsti, dainuoti ar net leisti muziką priešais mikrofoną, o garsas bus moduliuojamas ir siunčiamas per garsiakalbį. Jo specifikacija taip pat bus rodoma LCD ekrane