INHOUDSOPGAWE:

Bou 'n ArduinoBoy: 8 stappe
Bou 'n ArduinoBoy: 8 stappe

Video: Bou 'n ArduinoBoy: 8 stappe

Video: Bou 'n ArduinoBoy: 8 stappe
Video: Используй свой Gameboy, как MIDI синтезатор. 2024, September
Anonim
Bou 'n ArduinoBoy
Bou 'n ArduinoBoy
Bou 'n ArduinoBoy
Bou 'n ArduinoBoy

Die GameBoy. Heel waarskynlik het u een in u kinderjare besit. En selfs al het u dit nie gedoen nie, waarskynlik het u met die beste vriend van GameBoy gespeel, of miskien het u die naaste mededinger, die Sega Game Gear of Nomad, gehad. Wonderlike klein speeltoestelle, maar noudat julle almal groot is, het julle gedink wat julle nou daarmee gaan doen? Hou dit op die solder om uit te grawe en vir u kinders te wys hoe die spel in die 20ste eeu was? Verkoop dit aan 'n versamelaar? Herleef spelherinneringe deur terug te gaan deur die Legend of Zelda: Link's Awakening vir die soveelste basilontyd?

Het u ooit daaraan gedink om dit in 'n musiekinstrument te verander? Timothy "trash80" Lamb is 'n chiptune -komponis wat tans in Los Angeles, Kalifornië, woon. 'N Chiptune -komponis is 'n persoon wat die klankgenerator IC's (geïntegreerde stroombane) in videospeletjie -konsoles en rekenaars gebruik om musiek te skep. Lamb is ook die skepper van 'n toestel wat bekend staan as die ArduinoBoy; 'n kombinasie van open source hardeware en sagteware wat 'n lid van die GameBoy -gesin met 'n patroongleuf en 'n koppelingskabelpoort in 'n MIDI -klankgenerator kan verander. Nou moet op gelet word dat trash80 nie die eerste was om so 'n stelsel te skep nie. Die twee groot homebrew -GameBoy -programme wat deur professionele chiptune -komponiste, Nanoloop en Little Sound Disk Jockey, of LSDJ gebruik word, het al geruime tyd MIDI in staat. Die probleem is dat albei hierdie programme staatmaak op Microchip PIC -hardeware om MIDI -seine te stuur en te ontvang. Geen respek is bedoel vir die standaard mikrobeheerder van die elektriese ingenieursbedryf nie, maar die PIC is regtig 'n stuk professionele hardeware en kan 'n bietjie intimiderend wees vir diegene wat nie gereeld met elektronika besig is nie. Daar is ook min of geen ondersteuning vir gebruikers van minder gewilde bedryfstelsels as dit kom by die programmering van hierdie toestelle (die enigste amptelike PIC -ontwikkelingsuite is vir Windows, geen Linux- of Mac -ondersteuning nie). Deur die veel eenvoudiger Arduino-platform te gebruik, kom die ArduinoBoy egter oor hierdie beperkings, wat dit vir 'n toekomstige chiptune-komponis baie makliker maak om die gereedskap te bou wat hy of sy nodig het. Terwyl die ArduinoBoy ook saam met trash80 se eie homebrew GameBoy -klankgeneratorprogram, mGB, werk, kom dit ook goed oor die weg met Nanoloop en LSDJ. Terwyl trash80 sy werk op 'n Google Code-webblad gedeel het, het hy geen stap-vir-stap instruksies oor hoe 'n mens dit self kan maak nie (dit is op sy taaklys). Ek het besluit om hom in hierdie verband te help. Alhoewel dit nie noodwendig stapsgewys is nie, moet hierdie instruksie u 'n algemene idee gee van wat u moet doen en 'n paar van my slaggate wys, sodat u dit kan vermy.

Stap 1: Onderdele, gereedskap en kode

Onderdele, gereedskap en kode
Onderdele, gereedskap en kode

Dele

  • 'N Arduino, generiese Arduino, of die onderdele om u eie te maak. Ek gebruik persoonlik Modern Device Compay se Really Bare Bones Board -kit, wat óf saamgestel kan word en aan u projek geheg kan word met behulp van pin -voetstukke, of gekanibaliseer vir onderdele om die Arduino 'n permanente deel van die projek te maak.
  • Twee 220Ω, sewe 2KΩ en een 270Ω weerstande. Vir hierdie projek is 1/4 of 1/8 watt weerstande ideaal.
  • Een 6N138 opto-isolator.
  • Een 1N914 klein seindiode. Moenie verbaas wees as u dit slegs in hoeveelhede van 10 of meer kan koop nie.
  • Een drukknop wat slegs aan is as die knoppie ingedruk word. Vir diegene wat ingenieur praat, dit is 'n SPST-drukknop.
  • Twee 5 -pins vroulike 180 grade DIN -aansluitings. Maak seker dat u hierdie presiese verbindings kry. Daar is baie verskillende ontwerpe vir DIN -verbindings, en min, indien enige, is verenigbaar met mekaar.
  • Vier twee-pen aansluitblokke. Alhoewel u net al u drade direk aan die PCB kan soldeer, sal die gebruik, terminale en kannibalisering baie makliker wees met behulp van terminale blokke of 'n ander vorm van verbindings.
  • Een algemene rekenaarbord.
  • Een GameBoy -skakelkabel.
  • 'N Toestel wat MIDI kan voorsien, soos 'n sleutelbord of 'n rekenaar met die nodige sagteware en adapter.
  • Een programmeerbare GameBoy -patroon.
  • Soldeer.
  • Ekstra draad. Solied vir broodbordwerk en die bedrading van die rekenaarbord, vasgemaak vir drade wat u verwag om gereeld te beweeg.
  • 'N Saak om alles in te vul.
  • Stapel Miscellanea.

Gereedskap

  • Soldeerbout.
  • Desodering van gloeilamp, pomp of lont. Net vir ingeval.
  • Helpende hande soldeer instrument.
  • Veiligheidsbrille. Jou bril gaan dit nie sny nie.
  • Brandblusser, of ten minste 'n glas water. Weereens, net vir ingeval.
  • Draadknipper.
  • Draadstroppers.
  • Naald-tang.
  • Soldeerlose broodbord.
  • Programmering of USB -kabel (s) vir beide die Arduino en die programmeerbare GameBoy -patroon, indien van toepassing.
  • Roterende gereedskap en/of enigiets anders wat u nodig het om gate en gleuwe in u geval te sny.

Kode U benodig twee verskillende stukke kode vir hierdie projek, wat beide op trash80 se ArduinoBoy Google Code -bladsy gevind kan word. Dit word aan die regterkant van die bladsy gevind onder die opskrif Aanbevole aflaaie. U laai die ArduinoBoy -kode in die Arduino, terwyl mGB in die programmeerbare spelpatroon gelaai word.

Stap 2: Kom ons kyk na die skematiese

Kom ons kyk na die skematiese
Kom ons kyk na die skematiese

'N Skematiese is eenvoudig 'n dokument wat uitbeeld hoe 'n meganiese of elektriese toestel saamgestel is. Daardie foto's van u gras trekker met al die dele wat met klein stippeltjies uitmekaar gehaal is, wat wys hoe dit bymekaar pas? Die bloudrukke waaroor die kontrakteur vir u huis of woonstel so obsessief was? Skema's; altwee van hulle.

Wat skemas betref, is die skema van trash80 vir die ArduinoBoy baie meer kleurvol en het dit nie reguit lyne nie, maar is dit perfek leesbaar. Tensy u heeltemal anaal is oor ingenieurskonvensies, behoort u geen probleme te hê nie. U wil dit dalk uitdruk, aangesien ons gereeld daarna sal terugverwys.

Stap 3: Breadboard -toets

Broodbord toets
Broodbord toets

Voordat ons by die werklike konstruksie van die voltooide ArduinoBoy kom, wil ons eers seker maak dat al ons onderdele goed is. Daarvoor gebruik ons ons soldeerlose broodbord, waarmee ons verbindings kan maak tussen elektroniese onderdele sonder om dit aanmekaar te soldeer. Dit is maklik. Kyk net na die skema en verbind die dele soos aangedui.

Onthou dat daar 'n kommentaarafdeling op elke bladsy is. As jy vasval op iets, plaas dit hieronder en ek sal probeer om jou so goed as moontlik te help.

Stap 4: Eerste toets

Dit is tyd vir twee baie belangrike toetse: die rooktoets en die funksietoets. Die eerste toets is redelik maklik. Koppel eenvoudig u GameBoy aan die toestel, skakel die GameBoy aan en kyk na die LED's van die ArduinoBoy. As die pin13 LED kort knipper, gevolg deur die oorblywende LED's wat in opeenvolgende volgorde brand, van die hoogste pen na die laagste en twee keer terugvee, eindig met twee flitse van die LED's tegelyk, dan is die kans goed dat u ArduinoBoy werk orde. Maak ook seker dat u die moduskeuse -knoppie toets. As u daarop druk, moet die LED wat tans brand, uitskakel en die volgende in die volgorde sal aanskakel. As die ligte in plaas daarvan weier om te brand, voel die dele abnormaal warm om aan te raak, as u rook sien of ruik, en/of 'n deel van die stroombaan ontplof of in vlamme uitbars. u verbindings en bedrading, vervang die beskadigde komponente en voer weer die rooktoets uit. Die tweede toets is 'n bietjie meer senutergend, veral omdat as iets hier skeefloop, nie net die Arduino sal wees nie, sal dit 'n roosterbrood word. Laai mGB in u GameBoy, steek die ArduinoBoy in u GameBoy en koppel die MIDI van u MIDI-versoenbare toestel aan die MIDI van die ArduinoBoy op die broodbord. Skakel die GameBoy aan, dan die MIDI -toestel, en hou u brandblusser byderhand sodat niks gebeur nie. Probeer 'n paar note op u MIDI -toestel speel op kanaal 1, 2, 3, 4 of 5. As u GameBoy 'n geluid maak wat herinner aan 'n instrument of 'n klankeffek, spring dan uit u stoel en staar na die hemel, arms uitgestrek, terwyl hy 'IT'S ALIVE' skree terwyl hy manies lag. 'N Opmerking oor die toets en gebruik van u ArduinoBoy: daar is webwerwe wat gratis MIDI -lêers met gewilde liedjies bied, en u sal baie versoek word om dit te gebruik vir toetsing en tydens u komposisiesessies. Weerstaan die versoeking. In die eerste plek is sommige van die MIDI -snitte wat deur hierdie webwerwe aangebied word, nie goed gemaak nie. Ek het een keer 'n MIDI-kopie van die Gorillaz se "19-2000" gevind, en een van die instrumente het nie gesny of vervaag nie, so uiteindelik sou hierdie een instrument die res van die instrumente oorweldig totdat u die speler stop en weer begin. Boonop moedig die gebruik van hierdie voorafgemaakte liedjies u aan om voorafgemaakte liedjies te gebruik. Jy sal niks oorspronkliks maak nie. Dit is beter om dadelik te leer hoe om u eie musiek te komponeer.

Stap 5: Soldeer dit op

Soldeer dit op
Soldeer dit op
Soldeer dit op
Soldeer dit op

Dus, u ArduinoBoy werk. Goed, dit is tyd om dit aan die prototipe van die printplaat te soldeer. "Wag wag!" skree jy vir jouself. "Dit werk nou goed, en ek weet dat ek versigtig sal wees. Hoekom dit moontlik kan deurmekaar maak? Waarom moet u soldeer?" Goed dan. Maar dink 'n rukkie hieroor na: u en u ArduinoBoy maak wonderlike musiek. Eintlik so wonderlik dat u uiteindelik van chiptune 'n wettige vorm van musiek verander. U bring chiptune in die hoofstroom. Jy word beroemd. Eintlik so bekend dat u genooi word om op Wrigley Field te speel net voordat die welpies die veld aandurf. U gebruik nog steeds u broodbord ArduinoBoy. U en die span is besig om alles op te stel totdat een van u agterkom dat die belangrikste van u musiekinstrumente, die ArduinoBoy, verdwyn het. U vind dit uiteindelik in die hande van 'n jong seun wat daarin geslaag het om by die sekuriteit verby te sluip. In sy nuuskierigheid het hy al die komponente van die broodbord verwyder, en u het ongelukkig nie 'n skematiese byderhand nie. Met slegs 5 minute om die vertoning te begin, moet u u optrede kanselleer. Die skare raak mal en vernietig in hul woede 'n goeie deel van die stadion, wat veroorsaak dat die wedstryd ook gekanselleer word. Die Cubs verloor nogmaals hul grimering en hul kans op die World Series, en dit is die skuld vir jou. Moenie toelaat dat hierdie baie ingewikkelde scenario met u gebeur nie: maak u projekte altyd permanent. Nadat u al die dele van die soldeerlose broodbord verwyder het, plaas dit op die rekenaarbord en vind uit hoe u dit almal gaan pas. Daar is 'n paar dinge wat u in gedagte moet hou:

  • Probeer om al u IC's op dieselfde manier in die gesig te staar. Op hierdie manier kan u in 'n oogopslag sien of hulle almal goed gemonteer is.
  • Skroefterminale, IC -voetstukke en draadverbindings is u vriende. As iets breek, wil u die onderdele maklik kan verwyder en vervang. U moet ook u ArduinoBoy later kanibaliseer om iets anders te bou. Deur voetstukke en ander verbindings by te voeg, kan u dit maklik doen.
  • Let op die ruimte waarmee u moet werk. Hou die dele weg van die monteergate sodat u die hardeware en gereedskap maklik op hierdie plekke kan kry. As u die bord in 'n baie klein ruimte, soos 'n Altoids -blik, pas, moet u ook let op die ruimte -dele soos knoppies. Miskien moet u dele van u bord duidelik hou sodat die knoppie ruimte in die omhulsel het.

Sodra u alles aanmekaar gesoldeer het, is dit eenvoudig om die gepaste gate in u geval te boor en te sny en die printplaat daarin te monteer. As u 'n metaalhouer soos ek gebruik, moet u 'n stuk papier of iets aan die onderkant van die omhulsel gebruik sodat dit nie 'n deel van die stroombaan kortkom nie. Rubberwassers is ook 'n goeie idee.

Stap 6: Gebruik u ArduinoBoy

Gebruik jou ArduinoBoy
Gebruik jou ArduinoBoy

Jou ArduinoBoy, as dit korrek gemonteer is, behoort nie anders as enige ander MIDI -invoertoestel op te tree nie. As dit met mGB gebruik word, sal dit 5 aparte MIDI -kanale hê. Kanale 1 en 2 is stabiele toongenerators, 3 is 'n toongenerator wat blykbaar 'n drie -nootpatroon in my beperkte toetse het (die timbre van die noot sal verander elke keer as u op hierdie kanaal speel, volgens 'n patroon), bied kanaal 4 basklanke (gebruik soos 'n trom, baskitaar of synth), en kanaal 5 is geraas (word meestal in GameBoy -speletjies gebruik vir ontploffings en lopende water).

Koppel u MIDI-uitgang in die poort wat gekoppel is aan die opto-isolator, u ArduinoBoy in u GameBoy en u herprogrammeerbare patroon ook in u GameBoy. Stel u ArduinoBoy in die mGB -modus deur op die knoppie te druk totdat die LED wat gekoppel is aan digitale 8 brand. Van hier af kan u u GameBoy as 'n MIDI -instrument gebruik. Aanpassings aan die gegenereerde klank kan by die GameBoy gemaak word met behulp van die mGB -koppelvlak, spesifiek timbre, oktaaf, kanaal en nootaanval. Die ander ArduinoBoy -modusse word gebruik met ander GameBoy -chiptune -skeppingsprogramme, spesifiek Nanoloop en LSDJ, en val buite die omvang van hierdie instruksies.

Stap 7: Slaggate wat u kan vermy

Slaggate wat u kan vermy
Slaggate wat u kan vermy
Slaggate wat u kan vermy
Slaggate wat u kan vermy
Slaggate wat u kan vermy
Slaggate wat u kan vermy

In die loop van die voltooiing van hierdie projek het ek 'n paar ontwerp- en konstruksiefoute begaan, maar hoewel dit nie die prestasie van die kernfunksie van die ArduinoBoy nadelig beïnvloed het nie, het dit die konstruksie meer uitdagend gemaak en die finale aanbieding effens slordig. Hier is my foute en 'n paar algemene foute, en hoe u dit kan vermy of regstel. Die probleem is nie met die blik self nie, maar met die gereedskap wat ek by die voorbereiding van die saak gehad het, en die feit dat ek baie min met dun plaatwerk gedoen het. Gebruik eers die regte hulpmiddel vir die taak. Blikkies, of ten minste die wat ek gebruik het, skeur die metaal eerder as om dit skoon te sny, en laat hard agter om skerp rande wat nie plat in die omhulsel bly nie, te verwyder. Gebruik eerder 'n nibbler. As u gate boor, moet u ook altyd van die eindkant af boor, of die kant wat u die meeste (buite) sal sien, waar moontlik. As u 'n gat boor, sal u waarskynlik brame in die metaal laat en die metaal in die gat laat buig vanuit die rigting wat u boor. Deur van buite af te boor, laat u die brame aan die binnekant van die omhulsel, wat die buitekant netjieser en veiliger maak vir afwesige mense. Prototipe Raad Goedkoop materiaal is nie altyd die beste om mee te werk nie. Die prototipe borde waarmee ek my ArduinoBoy gebou het, kom van RadioShack, en hoewel dit perfek bruikbaar is, is dit moeilik om aan te soldeer, omdat dit goedkoop gemaak word. Geen deurdekte gate nie, dus word soldeersel nie in die gate gesuig nie, wat lei tot hierdie groot soldeerbolle op die bord wat die gesoldeerde dele nie deeglik in plek hou nie. Probeer u bes om borde met geplateerde gate te vind. As u dit nie kan doen nie, het ek gehoor dat 'n bietjie soldeervloei wat in die gat gesmeer is net voor die soldeer, die gesmelte soldeer in die gat sal laat trek, net asof dit bedek is. Oor goedkoop proto-borde, moet u in gedagte hou dat omdat die soldeer net aan die bokant kan ophoop, dit geneig is tot … Kortbroek Toe ek klaar was met die soldeer van my ArduinoBoy, het ek opgemerk dat die LED's nie behoorlik brand nie. Die probleem was nie my bedrading nie, dit was perfek, maar my soldering. Klein, byna onmoontlik om hoeveelhede soldeer en stof te sien, oorbrug die gapings op die bord, wat verhoed dat sommige LED's aansteek en ander LED's aan mekaar vasmaak. As dit met u gebeur, steek 'n lem tussen die soldeerverbindings en maak deeglik skoon met q-wenke, papierhanddoeke en vryfalkohol. Superlijm Probeer soos u kan, nooit supergom sonder om iets op u vingers te kry nie. Net 'n algemene waarskuwing vir almal daar buite. Moet my nie verkeerd verstaan nie; dit is wonderlike dinge as twee dele vinnig moet vassteek, maar moet nooit aanvaar dat u dit kan gebruik sonder om u vingers vas te plak nie.

Stap 8: Waarheen gaan ek hiervandaan?

Waar gaan ek van hier af?
Waar gaan ek van hier af?

Sukkel u om aan die gang te kom met die hele komponent van chiptune? Het u inspirasie, wenke, truuks en 'n plek nodig om u nuutste deuntjie te wys? Vir alle dinge chiptunes, en by uitbreiding retro -speletjies, is daar 8bitcollective.com. Hulle het 'n lewendige gemeenskap van chiptune -komponiste wat meer as bereid is om u te help in u loopbaan.

Wil u die moontlikhede van u ArduinoBoy uitbrei? Jou ArduinoBoy het 'n ingeboude funksie wat mGB nie eintlik gebruik nie: MIDI out, spesifiek MIDI-sinchronisasie. Nanoloop en LSDJ is egter nie net versoenbaar met die ArduinoBoy -hardeware nie, maar hulle kan hierdie onbenutte funksie gebruik, sodat u die geluide van u GameBoy kan sinchroniseer met ander programmeerbare MIDI -instrumente, soos tromme. Goed, u is nou 'n suksesvolle komponist en kunstenaar van chiptune, maar nou het u 'n klomp optredes om na te gaan en u wil die las soveel as moontlik verlig. Wat gaan jy doen? Solank u slegs die MIDI van die ArduinoBoy in die poort gebruik, kan u die grootte daarvan aansienlik verminder. Gebruik eenvoudig 'n klein Arduino -kloon wat u kan vind en laat die MIDI -poort weg. Dit lyk immers of dit vir trash80 werk. Wat my betref, is ek op soek na 'n paar verbeterings aan my prototipe, terwyl ek terselfdertyd meer leer oor hoe dit werk en hoe ek regte musiek daarmee kan saamstel. Ek dink daaraan om 'n paar PCB's in Eagle CAD te ontwerp vir twee verskillende weergawes: een wat deur-gat-komponente gebruik en DIP-pakket IC's, soos hierdie, en 'n ander wat komponente op die oppervlak gebruik, waar moontlik, sodat ek die kookplaat kan herleef soldeermetode en maak (hopelik) die kleinste volwaardige ArduinoBoy wat ooit gemaak is. Bo alles, wat u ook al besluit om met u ArduinoBoy te doen, geniet dit. As u nie pret het nie, doen u duidelik iets verkeerds. Onthou dat die samestelling van chiptunes, net soos alles anders in die lewe, nie gaan oor die verslaan van iemand anders nie. Dit gaan daaroor om jouself te klop en elke deuntjie wat jy saamstel beter te maak as die vorige. Niemand het ooit beroemd geraak omdat hulle iets gedoen het waarvan hulle nie gehou het nie. Vrae? Kommentaar? Huweliksvoorstelle? Doodsdreigemente? Plaas hulle hieronder.

Aanbeveel: