Turinys:

„Go“valdiklyje: 8 žingsniai
„Go“valdiklyje: 8 žingsniai

Video: „Go“valdiklyje: 8 žingsniai

Video: „Go“valdiklyje: 8 žingsniai
Video: Koks skaičius nuo 1 iki 31 gimė, toks yra visas jo gyvenimas 2024, Lapkritis
Anonim
„Go“valdiklyje
„Go“valdiklyje
„Go“valdiklyje
„Go“valdiklyje
„Go“valdiklyje
„Go“valdiklyje

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

Dizainas
Dizainas
Dizainas
Dizainas
Dizainas
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į

Spausdinkite savo kūrybą!
Spausdinkite savo kūrybą!

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

Prototipo lentos paruošimas
Prototipo lentos paruošimas
Prototipo lentos paruošimas
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

Galutinis surinkimas
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

Žaisk savo žaidimus!
Žaisk 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: