Turinys:
- Prekės
- 1 žingsnis: dizainas
- 2 žingsnis: atspausdinkite savo kūrinį
- 3 žingsnis: Prototipo lentos paruošimas
- 4 žingsnis: pasirinktinai: pagyvinkite valdiklio korpusą
- 5 žingsnis: galutinis surinkimas
- 6 veiksmas: užprogramuokite „Arduino“
- 7 žingsnis: žaiskite savo žaidimus
- 8 žingsnis: išmoktos pamokos
Video: „Go“valdiklyje: 8 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Ar jums patinka žaisti žaidimus savo išmaniajame telefone? Ar pavargote nuo žaidimų su nepatogiais jutiklinio ekrano valdikliais? Nekenčiate pamiršti įkrauti „Bluetooth“valdiklio? Ar jums reikia to naudoti kelyje, kurį nusipirkote, bet niekada nenaudojote?
Kodėl gi nepasigaminus „go“valdiklio?
Esu tikras, kad žaidimą pavėluosiu gana greitai (numatytas kalambūras), tačiau neseniai atradau, kad mano senas išmanusis telefonas gali žaisti retro žaidimus per emuliaciją. Užaugau, buvau didelis „Game Boy“sistemų gerbėjas ir puikiai prisimenu, kaip žaidžiau valandų valandas ir įtempiau akis į ilgus važiavimus automobiliu, desperatiškai bandydamas rasti taupymo tašką, kol baterija išsikrovė arba saulė buvo per toli už horizonto. pamatyti mano ekraną. Dabar galiu žaisti savo telefonu ir pasinerti į nostalgiją, bet su gražiu foniniu apšvietimu. Ačiū technologijai!
Atsakomybės apribojimas: Žaidimo emuliacija yra jautri tema ir kai kuriais atvejais apeina piratavimo liniją. Prašome mokytis ir žaisti atsakingai!
Fonas:
Aš nusprendžiau tęsti šį projektą sukūręs spartųjį klaviatūrą. Mokydamasis arduino klaviatūros bibliotekos ir sugalvodamas sparčiuosius klavišus, kai kuriuos bandymo mygtukus susiejau su WASD. Jis iš karto pradėjo dirbti su mano kompiuteriniais žaidimais ir tai suko ratus. Maždaug tuo pačiu metu mano telefone pritrūko vietos garso knygoms ir pasidomėjau, kaip su telefonu naudoti USB atmintinę, nes mano modelis neleidžia „microSD“kortelių. Tada sužinojau apie OTG. OTG naudoja jūsų telefono akumuliatoriaus įkrovą, kad maitintų prie jo prijungtą įrenginį. Tai apima klaviatūras, peles ir „flash“įrenginius. Telefonas gali maitinti 5v įrenginius ir atspėti, ko reikia „arduino micro“veikimui? Tai buvo danguje sukurtos rungtynės.
Prekės
„Arduino Micro“
Prototipų lenta
12 x 6 mm mygtukai (naudojau klasikinius duonos lentos jutiklinius momentinius jungiklius)
Lituoklis ir lydmetalis
3D spausdintuvas
Keliavimo (OTG) kabelis; Aš padariau savo
Mikro USB įkrovimo kabelis
1 žingsnis: dizainas
Norėjau, kad mano valdiklis būtų nešiojamas ir pasiūlytų visus mygtukus, kurių man prireiks žaidimams iki „Super Nintendo“eros. Tai reiškė, kad man reikės 12 mygtukų. Keturi krypties pagalvėlėms (d-pad) ir aštuoni A, B, X, Y, Start, Select, Left Trigger ir Right Trigger. Taip pat turėjau papildomą reikalavimą, kad norėčiau, kad jis būtų simetriškas, kad galėčiau žaisti viena ranka bet kuria ranka. Šis papildomas reikalavimas gali pasirodyti keistas, tačiau, norėdamas pateikti tam tikrą kontekstą, turiu paminėti, kad pastaruoju metu reguliariai laikau rankose miegantį kūdikį ir per savo ribotą žaidimų laiką naudojuosi tik viena ranka.
Atsižvelgdamas į nustatytus reikalavimus, aš nusprendžiau suprojektuoti savo valdiklį CAD. Aš asmeniškai naudoju „OnShape“, bet žinau, kad daugeliui žmonių taip pat sekasi „Fusion360“. Norėčiau greitai sušukti kitiems šios svetainės žmonėms, kurie kuria savo kūrinius. Tai sunkus darbas! Dizainas, kurį sugalvojau, buvo labai paprastas, tačiau vis tiek užtrukau daug valandų, kol buvau patenkintas. Net rašydamas tai pastebiu daug patobulinimų, kuriuos norėčiau padaryti.
(Aš planuoju, bet tik.stl failus „Thingiverse“, kai laikas leis. Failai bus ten, kad galėčiau juos atnaujinti, nuolat nekeliant failų čia.)
2 žingsnis: atspausdinkite savo kūrinį
Turiu „Ender 3“spausdintuvą, kurį naudoju tik kelis mėnesius. Tai puikus spausdintuvas, norint pradėti naudotis, jei norite pradėti spausdinti 3D formatu. Aš nesupratau, kaip tai atsitiko, kol neišmatavau savo dalių šiam projektui. Iki šio projekto aš jį naudodavau tik mini žaidimų spausdinimui ant stalo. Minis pasirodė puikiai ir man per daug nerūpėjo matmenys. Prireikė kelių kalibravimo kubelių ir naujo gijų ritinio, kol buvau patenkintas rezultatais.
3 žingsnis: Prototipo lentos paruošimas
Prieš lituodamas mygtukus prie prototipo plokštės, aš išbandžiau visus mygtukus ant duonos lentos ir tuo pačiu metu išbandžiau savo arduino kodą. Vėliau peržiūrėsiu kodą.
Dabar tinkamiausias laikas sumažinti prototipo plokštės dydį. Naudokite atspausdintą valdiklio korpusą kaip vadovą ir sausai pritvirtinkite mygtukus, kad įsitikintumėte, jog viskas sutampa. Aš tiesiog paėmiau vielos šukes ir nupjoviau lentos perteklių, tada nušlifavau kraštus kvadratiniu 150 smėlio švitriniu popieriumi.
Valdiklio laidai yra tikrai paprasti, nes mes naudojame vidinius „arduino micro“traukimo rezistorius. Visi mygtukai pereina prie įvesties ir įžeminimo. Mygtukai, kuriuos aš naudoju, yra bendri 6 mm liečiami momentiniai jungikliai.
Mygtukų litavimas arduino buvo įdomus mažas galvosūkis. Kai kurie mygtukai buvo po arduino, ir aš turėjau išvesti laidus iš po jo prieš lituojant arduino prie prototipo plokštės. Jei atidžiai pažvelgsite į mygtuko pusę lentoje, aš praleidau kairę ir dešinę krypties pagalvę.
Dėl savo specifinio dizaino aš lituodavau aukštyn ir žemyn nukreiptus trinkelių mygtukus (aš praleidau kairiojo ir dešiniojo krypties trinkelių mygtukus) prie prototipo plokštės kartu su kai kuriais ypač ilgais laidais, tada apverčiau lentą ir lituodavau arduino. Aš neturiu diagramos, nes dažniausiai mygtukus lituodavau po vieną atsitiktinai (galėčiau įkelti, jei bus pakankamai susidomėjimo). Kai „arduino“yra pritvirtintas, aš apverčiau lentą atgal į sagos pusę ir lituojau likusius mygtukus ir jų laidus.
4 žingsnis: pasirinktinai: pagyvinkite valdiklio korpusą
Prieš galutinį surinkimą tinkamas laikas šlifuoti, užpildyti spragas ir dažyti valdiklio korpusą. Aš nusprendžiau praleisti šį žingsnį savo prototipui, nes norėjau iš karto ką nors naudoti. Kai neišvengiamai patobulinsiu savo dizainą į ką nors labiau šlifuoto, suteiksiu jam nusipelniusį skausmą.
5 žingsnis: galutinis surinkimas
Dabar pats laikas į korpusą įdėti visus mygtukus ir užpildytą prototipo plokštę. Savo dizainui naudojau #4-24 x 1/2 lakštinio metalo varžtus. Jie atlieka darbą, bet netinka taip, kaip norėčiau.
6 veiksmas: užprogramuokite „Arduino“
Galbūt norėsite atlikti šį žingsnį anksčiau, kai dar tik kuriate plokštę arba viską prilituosite prie prototipo plokštės. Man tiesiog patinka tai turėti savo skyriuje.
Kodas yra labai paprastas, palyginti su dauguma mano matytų arduino programų. Mums tereikia kiekvienam mygtukui priskirti klaviatūros vertę, o „arduino“atliks kilpą, kad patikrintų, kokie mygtukai yra paspausti, ir nusiųs šią informaciją į mūsų telefoną.
Tiems, kurie domisi, naudoju retroArch programą savo retro žaidimams žaisti. Mano naudojami klavišai yra nustatyti pagal numatytąjį „retroArch“klaviatūros išdėstymą.
#include #include "Keyboard.h" #define NUM_BUTTONS 12 const uint8_t BUTTON_PINS [NUM_BUTTONS] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; // a = 'x' // b = 'z' // x = 's' // y = 'a' // kairys petys = 'q' // dešinysis petys = 'w' // pasirinkite = 'rshift '// start =' enter '// up =' key: up '// down =' key: down '// left =' key: left '// right =' key: right 'const char BUTTON_KEYS [NUM_BUTTONS] = {KEY_RETURN, KEY_DOWN_ARROW, KEY_UP_ARROW, KEY_LEFT_ARROW, KEY_RIGHT_ARROW, KEY_RIGHT_SHIFT, „z“, „x“, „s“, „a“, „q“, „w“}; Bounce * mygtukai = naujas Bounce [NUM_BUTTONS]; void setup () {for (int i = 0; i <NUM_BUTTONS; i ++) {mygtukai .pritvirtinimas (BUTTON_PINS , INPUT_PULLUP); mygtukai .interval (25); } // inicijuoti klaviatūros valdymą: Keyboard.begin (); } void loop () {// patikrinkite, ar nepasikeitė (int i = 0; i <NUM_BUTTONS; i ++) {mygtukų .update (); if (mygtukai .kristi ()) {Keyboard.press (BUTTON_KEYS ); } if (mygtukai .rose ()) {Keyboard.release (BUTTON_KEYS ); }}}
7 žingsnis: žaiskite savo žaidimus
Arba šį valdiklį galima naudoti su kompiuteriu be OTG kabelio, norint siųsti klavišų paspaudimus ar makrokomandas. Aš taip pat turėjau draugą, kuris sakė, kad toks valdiklis taip pat gali būti naudingas piešiant planšetinius kompiuterius, nors aš niekada su juo nesusidūriau.
Tikiuosi, kad ši instrukcija jums buvo naudinga. Žemiau yra pamoka, skirta tiems, kurie domisi tuo, ką sužinojau proceso metu ir ką norėčiau padaryti kitaip.
8 žingsnis: išmoktos pamokos
CAD:
Anksčiau aš niekada nesikišau į CAD programinę įrangą ir turėjau išmokti kelyje su šiuo dizainu. Iš pradžių aš pasirinkau stačiausią dizainą, kuris tilptų į tavo rankas panašiai kaip „Wii Nunchuk“. Mano ribotos žinios apie projektavimą naudojant organines formas buvo mano žlugimas. Galbūt turėčiau imtis „Intructables“savo CAD dizaino klasėje.
Mygtukai:
Mano naudojami mygtukai buvo garsesni nei norėčiau (ypač kai stengėtės, kad kas nors nepabustų). Norėčiau rasti tylesnius mygtukus. Jei spyruoklės būtų įtrauktos tarp mygtukų ir mygtukų dangtelių, tai padėtų padaryti konstrukciją jaukesnę. Mygtukai yra per daug laisvi mano skoniui.
Litavimas:
Aš esu naujokas litavimo srityje ir neturiu labai tvirtų rankų. Visų tų mažų laidų litavimas visoje vietoje užtruko ilgiau, nei tikėjausi. Jei turėčiau tai daryti iš naujo, prieš griebdamas lygintuvą tikrai suplanuočiau, kur eis mano laidai. Tai sušvelnintų klaidas, kurias aptikau pritvirtinus arduino prie prototipo plokštės, ir sutaupytų laiko.
Rekomenduojamas:
Ausinių stiprintuvas NES valdiklyje!: 19 žingsnių (su nuotraukomis)
Ausinių stiprintuvas NES valdiklyje!: Dabar su NES valdikliais padariau keletą konstrukcijų (patikrinkite jas žemiau). Šį kartą man pavyko pridėti ausinių stiprintuvą prie vieno-tai nėra žygdarbis, kai atsižvelgiama į tai, kiek vietos yra viduje. Apgaulė buvo naudoti ličio bateriją (iš seno telefono) su
„Theremin“šviesa NES valdiklyje - 555 laikmatis: 19 žingsnių (su nuotraukomis)
„Light Theremin“NES valdiklyje - 555 laikmatis: Aš žaidžiau su „555 IC“ir man niekada nepavyko priversti nieko daryti. Kai išgirdau, kad tai atgyja ir pradeda svyruoti, aš buvau velniškai patenkinta savimi. Jei galiu priversti jį skleisti garsą, tada kiekvienas turėtų
Objektų sekimo kameros slankiklis su sukimosi ašimi. 3D spausdintas ir sukurtas „RoboClaw DC“variklio valdiklyje ir „Arduino“: 5 žingsniai (su paveikslėliais)
Objektų sekimo kameros slankiklis su sukimosi ašimi. 3D spausdintas ir sukurtas „RoboClaw DC“variklio valdiklyje ir „Arduino“: šis projektas buvo vienas iš mano mėgstamiausių projektų, nes aš norėjau suderinti savo pomėgį kurti vaizdo įrašus ir pasidaryk pats. Aš visada žiūrėjau ir norėjau mėgdžioti tuos kino kadrus filmuose, kuriuose fotoaparatas juda per ekraną panoraminiu būdu, norėdamas stebėti
Arkadinė mašina NES valdiklyje: 5 žingsniai
Arkadinė mašina NES valdiklyje: Ar kada nors norite ką nors padaryti su tais senais ir sugedusiais NES valdikliais? Atrodo, kad jie yra per daug vertingi, kad juos būtų galima tiesiog išmesti, tačiau nuplėšus laidą jie iš esmės nenaudingi, nebent rasite, kad suteiktumėte jiems naują gyvenimą! Man patinka juos derinti su
Lanko žiebtuvėlis lizdo automobilio valdiklyje: 6 žingsniai (su nuotraukomis)
Lanko žiebtuvėlis lizdo automobilio valdiklyje: tai yra mano automato valdiklis. Niekada nemaniau, kad šiuos žodžius sujungsiu sakiniu! Valdiklis yra iš „Scalextric“tipo lenktynių trasos, bet kvailas, pigus variantas. Radau porą jų sąvartyne ir maniau, kad jie migruoja