INHOUDSOPGAWE:
- Voorrade
- Stap 1: Berei die bord en die Arduino -omgewing voor
- Stap 2: Laai op
- Stap 3: Druk af
- Stap 4: Bedrading
- Stap 5: Finale vergadering
- Stap 6: Werkingswyses
- Stap 7: Pong
Video: USB Paddle Game Controller: 7 stappe (met foto's)
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
My seun het 'n retro -videospeletjie -aand gehou vir sy verjaardag, en die oggend van die dag het ek besluit om te kyk of ek 'n paar USB -paddle -spelbeheerders vir Pong kan maak met behulp van 'n 3D -drukker en elektronika uit my stash. Terwyl ek dit reggekry het om hulle basies betyds te laat werk, was mense uiteindelik te besig met ander speletjies vir Pong.
Die beheerders kan gebruik word vir Pong met die DICE-kringvlak-emulator of met my redelik akkurate pygame-weergawe, vir Atari 2600-speletjies met 'n emulator en vir Etch-a-Sketch-agtige funksies met 'n skilderprogram soos Tux Paint.
Daar is drie omskakelbare modusse:
- Emulasie van Stelladaptor -paddle: hulle moet werk met alle Atari 2600 -emulasiesagteware wat die Stelladaptor ondersteun; in die Stelladaptor-modus funksioneer die spane as twee-as-joystick met twee knoppies, elke paddle beheer een as en een knoppie
- dubbele joystick -emulasie: elke paddle funksioneer as 'n joystick met een knoppie (met die paddle -beweging wat vertaal word na beweging op beide joystick -asse)
- muis: elke paddle beheer een bewegingsrigting vir 'n absolute muis, en die knoppies is muisknoppies; tesame met 'n skilderprogram kan u 'n hoë-tegnologie-toestel kry wat soortgelyk is aan 'n Etch-a-Sketch.
Voorrade
Jy sal nodig hê:
- stm32f103c8t6 blou pil
- 2x lineêre potensiometer (ek beveel 20K-100K aan)
- 2x 12 mm breedte mikroskakelaar met knoppie
- 3D -drukker
- diverse (filament, drade, soldeersel, soldeerbout, warm gom)
Stap 1: Berei die bord en die Arduino -omgewing voor
- Soldeer die ses koppenne in die middel van u stm32f103c8t6 -bord.
- Kontroleer die weerstand tussen A12 en 3.3V. Dit moet 1.5K wees vir 'n voller USB -verenigbaarheid. Baie borde het eerder 10K. As u een daarvan is, moet u die soldeer in 'n 1.8K -weerstand van A12 tot 3.3V verkieslik soldeer, alhoewel u gelukkig is en u rekenaars met die 10K kan werk.
- Installeer 'n selflaaiprogram. Daar is instruksies in stap 2 van hierdie instruksies. Een ding om op te let, is die flitsgrootte wat deur die STM -demonstrator gerapporteer is. As dit 32K is, het u 'n vals stm32f103c8, wat waarskynlik 'n hermerk met stm32f103c6 is. Hierdie projek behoort nog steeds daarmee saam te werk, maar let op dat u die valse bord het vir 'n toekomstige stap.
- Installeer Arduino, Arduino Zero en Roger se libmaple-gebaseerde kern volgens die instruksies in stap 3 van die instruksies wat u in die vorige stap gebruik het. Ignoreer die biblioteekinstruksies in daardie stap.
- Laai die nuutste weergawe van my USB Composite -biblioteek af en pak dit uit in u gids Arduino/Libraries.
- Laai my skets van die paddlecontrollers af en pak dit uit in u Arduino -lêergids.
- Gaan in Arduino na Tools | Raad | Generiese STM32F103C -reeks, tensy u die valse c6 -bord het, kies dan in plaas daarvan Generiese STM32F103C6/vals STM32F103C8. As u nie seker is wat u het nie, is dit eintlik veiliger om die valse opsie te kies.
Stap 2: Laai op
Koppel die kaart aan die USB -adapter van u rekenaar, laai die skets van die padkontroleerder en klik op die oplaai -knoppie (pyl na regs). As alles goed verloop, moet die skets oplaai, en die bord moet op u rekenaar verskyn as 'n twee-as-joystick met twee knoppies, 'Stelladaptor'. In Windows kan u dit verifieer met Windows-R, joy.cpl [enter].
Dit sal natuurlik niks doen voordat die res van die hardeware bymekaargemaak is nie.
Stap 3: Druk af
- Laai die stl- en/of scad -lêers af van my Thingiverse -bladsy vir hierdie projek. Let asseblief daarop dat die paddle -knop van hier af verander is.
- As die breedte van u mikroskakelaarbehuizing verskil van 12 mm, moet u die knoppiewydte-parameter in die lêer paddlemain-standalone.scad aanpas. U kan dit doen in OpenSCAD of in die Thingiverse Customizer.
- Miskien moet u die afmetings in die paddleknob.scad -lêer aanpas om by u potensiometer te pas.
-
Druk hierdie lêers af (maak slegs een kopie van die "2x" lêers as u net een roeispaan wil hê). Ek het PLA gebruik, maar ABS behoort ook goed te werk.
- 2x paddlemain.stl
- 2x paddleknob.stl
- 1x paddleconverter.stl
- 1x pcbholdernarrower.stl
- 2x knoopdop110.stl (opsioneel)
- 1x 12.stl (opsioneel; druk in 'n ander kleur en plak vas om die twee spane te benoem)
Stap 4: Bedrading
U moet vier drade van die stm32f103c -bord na elke paddle -kontroleerder lei. U kan ou USB -toue vir hierdie drade gebruik. Ek het toevallig mooi losstaande drade van 'n ethernet -kabel gehad wat ek met krimpfolie vasgemaak het.
Elke paddle het een mikroskakelaar en een potensiometer. Gebruik 'n multimeter om 'n paar aangrensende (nie diagonale) penne op die mikroskakelaar te identifiseer wat verbind/ontkoppel is deur op die knoppie te druk. Ek sal hierdie penne S1 en S2 in die diagram benoem. Die drie penne op die potensiometer het ek P1, P2 en P3 van bo na onder gemerk, en kyk van die onderkant van die potensiometer af, met penne regs.
Druk die vier drade van die bord deur die gat aan die kant van die spaanhuis (paddlemain.stl).
As u drade met die mikroskakelaar verbind, druk eers die drade deur die gate aan die kant van die spaanhuis en soldeer aan die skakelaar terwyl die skakelaar aan die buitekant van die behuizing lê. Trek dan die skakelaar na die behuizing, sodat die penne en die aangehegte drade in die gate pas. Ek sny die onnodige penne af.
Beide roeispane:
- P1 tot S1
- P1 aan boord 3.3V (3.3)
- P3 aan boord van GND (G)
Paddle 1:
- P2 aan boord A1
- S2 aan boord van A2
Paddle 2:
- P2 aan boord van A3
- S2 aan boord van A4
Toets nou die verbindings deur aan te sluit op u rekenaar en 'n joystick -toetsprogram te gebruik. Op Windows, Windows-R, joy.cpl [enter], kies Stelladaptor, klik op Eienskappe. Paddle 1 moet die X-as en die eerste knoppie beheer; paddle 2 moet die Y-as en die tweede knoppie beheer.
Stap 5: Finale vergadering
Die mikroskakelaars kan vasgeplak word (warm gom het die werk vir my gedoen) op hul plekke aan die kant van die spaanbak. Knoppies kan met 'n bietjie warm gom vasgemaak word vir stabiliteit.
Die potensiometer word vasgemaak aan die groot gat in die bokant van die spaanboks. Die knop moet gly en vassteek. Vergroot gate met 'n boor indien nodig. Druk die onderste deksel op en voeg 'n bietjie warm gom by indien nodig.
Die blou pilbord pas in die PCB -skyfie, wat dan aan die onderkant van die omskakelingskas vasskroef, wat ook 'n deksel het wat dit kan bedek.
Ek het 'n bietjie Shoe Goo bygevoeg waar drade die behuizing ontmoet om die drade te beskerm. En ek het "1" en "2" etikette op die spane vasgeplak.
Stap 6: Werkingswyses
Die spane het drie werkswyses. U kan die modus verander deur op 'n spesifieke kombinasie van knoppies te druk terwyl u dit in 'n USB -poort aansluit en dit los sodra die LED's ophou om te flikker. Sodra u die modus verander het, word dit in die geheue gestoor en bly totdat u dit weer verander. (As u dus nie die modus wil verander nie, moet u op geen knoppie druk terwyl u die spane in 'n USB -poort aansluit nie.) Hier is die opsies:
- Slegs linkerknoppie-knoppie: 'n Twee-as-joystick met twee knoppies, met elke as en knoppie wat deur een paddle beheer word. Boonop identifiseer die paddles as 'n Stelladaptor, 'n beëindigde USB -adapter vir Atari 2600 -beheerders, en dus moet Atari 2600 -emulators soos Stella en Z26 wat Stelladapter -versoenbaar is, perfek werk.
- Beide paddle -knoppies: Elke paddle vertoon 'n aparte joystick. Die joystick het een bedieningsknoppie en die draai van die paddle skuif die joystick skuins, sodat óf die X- as die Y -as vir die paddle werk.
- Slegs regterknoppie-knoppie: Die spane verskyn as 'n absolute muis met twee knoppies. U kan dit nou op dieselfde manier as 'n Etch-a-Sketch met 'n tekenprogram gebruik.
Stap 7: Pong
Pong was die wonderlike oorspronklike paddle game. Ek beveel die oorspronklike weergawe aan, want klone bevat dikwels nie die wonderlike subtiele funksies nie, soos die snelheidsveranderinge met herhaalde treffers, die hoek verander na gelang van die deel van die spaan wat die bal tref, of die subtiele maar nie maklik voorspelbare posisie nie van die opdien na 'n gemis. Vir 'n deeglike ontleding van die oorspronklike, sien hier.
Een van die beste maniere om Pong te speel, is met die DICE-kringvlak-emulator as u rekenaar vinnig genoeg is om dit op volle spoed te gebruik. (My Windows -skootrekenaar is, maar die Raspberry PI 3+ is te stadig.) Ek beveel weergawe 0.8 aan.
As u die Stelladaptor -modus in die paddles gebruik, gaan na Instellings | Konfigureer insette … in DICE en kies Joystick 1 en Absolute for Player 1 Paddle, en stel beide Horisontaal en Vertikaal in op Joy 1 X-Axis. Doen dan dieselfde met Player 2 Paddle, behalwe met Y-as.
As u rekenaar te stadig is vir DICE, het ek 'n Python3+pygame -weergawe gemaak waarvan die tydsberekening en funksionaliteit baie naby die oorspronklike Pong is (ek is dankbaar vir die hulp van dr. Hugo Holden in hierdie verband).
Aanbeveel:
3D -gedrukte Twin Paddle Cw -sleutel (566gr.): 21 stappe (met foto's)
3D -gedrukte tweepersoons -sleutelsleutel (566 gram): Om 'n akkurate, sagte en swaar tweeling -sleutelsleutel te hê, beteken tot dusver baie geld. My bedoeling by die ontwerp van hierdie sleutel was om te roei: a)- Goedkoop --- Dit is gemaak van plastiek met 'n standaard 3d-printerb)- Duursaam --- Ek het 'n bal gebruik
Game Boy Reader Controller: 17 stappe (met foto's)
Game Boy Reader Controller: In hierdie instruksies sal ek probeer verduidelik hoe ek die toestel hierbo gemaak het. Dit funksioneer as 'n Game Boy -patroonleser, wat die ROM kan lees en die RAM van 'n Game Boy -spel kan lees/skryf. Daarna sal die spel begin outomaties sodat u dit op u kan speel
Arduino Pocket Game Console + A -Maze - Maze Game: 6 stappe (met foto's)
Arduino Pocket Game Console + A -Maze - Maze Game: Welkom by my eerste instruksies! Die projek wat ek vandag met u wil deel, is Arduino doolhofspel, wat 'n sakkonsole geword het wat net so goed soos Arduboy en soortgelyke Arduino -gebaseerde konsoles geword het. Dit kan met my (of u) toekomstige speletjies geflits word danksy die ekspo
Adaptive Paddle: 5 stappe (met foto's)
Adaptive Paddle: Die huidige ontwerp om mense in staat te stel om stutters met die een arm te roei, het 'n bietjie terugtrek gehad deurdat die paddle aan die draai was. Sonder 'n tweede hand bo -op die spaan was daar geen manier waarop die spaan die hoek kon beheer waarop die
NES Controller Shuffle (Nintendo Controller MP3, V3.0): 5 stappe (met foto's)
NES Controller Shuffle (Nintendo Controller MP3, V3.0): Ek het ryan97128 heeltemal afgesny op sy ontwerp vir Nintendo Controller MP3, weergawe 2.0 en ek hoor dat hy die idee gekry het van die alwyse Morte_Moya, so ek kan nie krediet daarvoor neem nie almal van hulle genie. Ek wou net die gemak byvoeg en herlaai