Indholdsfortegnelse:
- Trin 1: Bestemmelse af optimal knapkonfiguration
- Trin 2: Min samling med 4 knapper
- Trin 3: Game Play
- Trin 4: Head to Head -konkurrencer
- Trin 5: Valgfri 2 spillercontrollere
- Trin 6: Opdatering (er)
Video: Spil med 4 knapper ved hjælp af et analogt input: 6 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:25
Denne instruerbare fokuserer på at bruge en analog indgangslinje til flere knapper, der kan detekteres uafhængigt af hinanden.
Og for at fremhæve brugen af disse medfølgende knapper er software til at spille fire forskellige spil med 4 knapper. Alle spillene (8 i alt) heri bruger et LED-stige-display (se tidligere projekt: instruktører: Single-Line-LED-Display-Games).
Du kan bruge din egen 4-knaps samling med andre skærmoutput, blot bruge funktionen 'scanButtons ()' fra en af de medfølgende skitser. Og brug disse skitser for eksempel brug af dem.
Spillene er et færdighedsspil: Whack-a-Mole, et hukommelsesspil: Simon Says, logikspil Sea Hunt og Flip'd et to-spil, der ligner Reveri. Senere, i denne instruktive, vil jeg også senere introducere fire to-personers spil i head to head-konkurrence.
Trin 1: Bestemmelse af optimal knapkonfiguration
Blot at bruge nogle modstande i serie med knapper, der tappes mellem hver, virker, hvis du aldrig behøver at bekymre dig om et tryk på en knap, der blokerer en anden. I en sådan konfiguration blokerer hver knap, når den trykkes, enhver og alle under den. Selv når du kun har brug for to knapper, og du kun bekymrer dig om en ad gangen, som i en implementering af bordtennis; det ville være et problem, hvis en spiller undlader (bare at være for langsom eller ondsindet) at fjerne sin finger fra sin knap, før den anden skal ramme sin.
Flere knapper er ofte blevet forbundet til en enkelt analog linje hver med sine egne forskellige modstandsværdier, der går til indgangen. Du kan let nok differentiere, hvilken knap eller et par der trykkes på, når der kun er 2 eller 3 knapper. Men ikke pålideligt med flere knapper eller mere end to trykket, da den værst tænkelige kombination af aflæsninger bliver tvetydigt for tæt på hinanden.
Her med det, jeg kalder en Double-Y-konfiguration med fire knapper og modstande, kan du pålideligt skelne enhver enkelt, dobbelt, endda tredobbelt eller alle fire knapper, der trykkes på. Softwaredriveren til at gøre det er dækket i det næste afsnit og kodelisten.
Med et ønske om at have fire knapper knyttet til en analog indgang, hvor hver tasts tryk kunne detekteres uanset tilstanden for de andre knapper, modellerede jeg flere konfigurationer i et regneark. Jeg fandt ud af, at en dobbelt-Y (bestående af 2 sæt med tre modstande) konfiguration gav de bedste muligheder. Se ledningsskemaet herunder. Jeg evaluerede dem på grundlag af den mest adskilte mellem den samlede modstand mellem to kombinationer af knapper, der blev trykket på. Jeg modellerede yderligere beregnede analoge værdier. Se regnearksfilen herunder.
For at bestemme de bedste værdier, der skal bruges i de ovennævnte konfigurationer, skrev jeg en simulering, der udtømmende prøvede alle mulige permutationer af potentielle modstandsværdier og fandt det sæt, der producerede den maksimale mindst forskel mellem mulige læseindgange. Jeg har givet den kode, jeg brugte. Dette var et brute force -værktøj, jeg kastede sammen, fik, hvad jeg ville have og lagde det til side, så det blev på ingen måde optimeret. Det er helt som det er, kun til historisk reference (Solve_4R.html nedenfor).
Her er dens output til gennemgang:
R1: 10 R2: 12 R3: 10 R4: 12 R5: 10 R6: 15 minR delta: 3.3658818125
R1: 10 R2: 12 R3: 10 R4: 12 R5: 10 R6: 18 minR delta: 4.9490620031 R1: 10 R2: 12 R3: 10 R4: 12 R5: 18 R6: 10 minR delta: 4.9490620031 R1: 10 R2: 12 R3: 10 R4: 15 R5: 10 R6: 33 minR delta: 5.0576510475 R1: 10 R2: 12 R3: 10 R4: 15 R5: 12 R6: 10 minR delta: 7.104826870 R1: 10 R2: 12 R3: 10 R4: 18 R5: 10 R6: 18 minR delta: 8.1673424912 R1: 10 R2: 12 R3: 10 R4: 18 R5: 15 R6: 22 minR delta: 8.6504939648 R1: 10 R2: 12 R3: 10 R4: 22 R5: 10 R6: 18 minR delta: 10.1721492515 R1: 10 R2: 12 R3: 10 R4: 22 R5: 10 R6: 22 minR delta: 10.5040000560 R1: 10 R2: 12 R3: 10 R4: 27 R5: 12 R6: 27 minR delta: 10.7814361579 R1: 10 R2: 12 R3: 12 R4: 33 R5: 15 R6: 36 minR delta: 10.8827552754 R1: 10 R2: 12 R3: 12 R4: 68 R5: 10 R6: 22 minR delta: 11.4499029683 R1: 10 R2: 12 R3: 12 R4: 68 R5: 10 R6: 27 minR delta: 12.0961591599 R1: 10 R2: 12 R3: 15 R4: 68 R5: 10 R6: 27 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 15 R4: 75 R5: 10 R6: 27 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 15 R4: 82 R5: 10 R6: 27 minR delta: 1 2.7992171382 R1: 10 R2: 12 R3: 15 R4: 91 R5: 10 R6: 27 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 27 R4: 82 R5: 10 R6: 15 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 27 R4: 91 R5: 10 R6: 15 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 27 R4: 100 R5: 10 R6: 15 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 68 R4: 15 R5: 10 R6: 27 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 75 R4: 15 R5: 10 R6: 27 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 82 R4: 15 R5: 10 R6: 27 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 82 R4: 27 R5: 10 R6: 15 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 91 R4: 15 R5: 10 R6: 27 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 91 R4: 27 R5: 10 R6: 15 minR delta: 12.7992171382 R1: 10 R2: 12 R3: 100 R4: 27 R5: 10 R6: 15 minR delta: 12.7992171382 R1: 10 R2: 15 R3: 10 R4: 18 R5: 18 R6: 12 minR delta: 13.2909379968 R1: 10 R2: 15 R3: 10 R4: 22 R5: 12 R6: 10 minR delta: 14.245362837 R1: 10 R2: 15 R3: 10 R4: 39 R5: 18 R6: 27 minR delta: 14.5126340326 R1: 10 R2: 15 R3: 10 R4: 56 R5: 12 R6: 15 minR delta: 15.220571553 R1: 10 R2: 15 R3: 12 R4: 27 R5: 12 R6: 12 minR delta: 18.8228671943 R1: 10 R2: 15 R3: 12 R4: 39 R5: 18 R6: 27 minR delta: 19.236186493 R1: 10 R2: 15 R3: 15 R4: 47 R5: 22 R6: 33 minR delta: 19.5685736556 R1: 10 R2: 15 R3: 22 R4: 56 R5: 22 R6: 27 minR delta: 19.7887024012 R1: 10 R2: 15 R3: 27 R4: 220 R5: 12 R6: 10 minR delta: 21.2533513149 R1: 10 R2: 15 R3: 220 R4: 27 R5: 12 R6: 10 minR delta: 21.2533513149 R1: 10 R2: 18 R3: 22 R4: 68 R5: 33 R6: 39 minR delta: 21.58566448 R1: 10 R2: 18 R3: 27 R4: 75 R5: 33 R6: 36 minR delta: 22.158443806 R1: 10 R2: 18 R3: 27 R4: 82 R5: 33 R6: 36 minR delta: 22.158443806 R1: 10 R2: 18 R3: 27 R4: 82 R5: 33 R6: 39 minR delta: 22.158443806 R1: 10 R2: 18 R3: 33 R4: 75 R5: 27 R6: 18 minR delta: 24.2578084248 R1: 10 R2: 18 R3: 75 R4: 33 R5: 27 R6: 18 minR delta: 24.2578084248 R1: 10 R2: 36 R3: 36 R4: 68 R5: 12 R6: 18 minR delta: 24.380952380 R1: 10 R2: 36 R3: 36 R4: 75 R5: 12 R6: 18 minR delta: 24.380952380 R1: 10 R2: 36 R3: 39 R4: 75 R5: 12 R6: 15 minR delta: 24.380952380 R1: 10 R2: 36 R3: 68 R4: 36 R5: 12 R6: 18 minR delta: 24.380952380 R1: 10 R2: 36 R3: 75 R4: 36 R5: 12 R6: 18 minR delta: 24.380952380 R1: 10 R2: 36 R3: 75 R4: 39 R5: 12 R6: 15 minR delta: 24.380952380 R1: 10 R2: 39 R3: 15 R4: 39 R5: 10 R6: 27 minR delta: 24.4674161824 R1: 10 R2: 39 R3: 22 R4: 47 R5: 10 R6: 22 minR delta: 24.4674161824 R1: 10 R2: 39 R3: 22 R4: 56 R5: 10 R6: 22 minR delta: 24.4674161824 R1: 10 R2: 39 R3: 27 R4: 56 R5: 10 R6: 15 minR delta: 24.4674161824 R1: 10 R2: 39 R3: 39 R4: 15 R5: 10 R6: 27 minR delta: 24.4674161824 R1: 10 R2: 39 R3: 47 R4: 22 R5: 10 R6: 22 minR delta: 24.4674161824 R1: 10 R2: 39 R3: 56 R4: 22 R5: 10 R6: 22 minR delta: 24.4674161824 R1: 10 R2: 39 R3: 56 R4: 27 R5: 10 R6: 15 minR delta: 24.4674161824 R1: 12 R2: 39 R3: 33 R4: 75 R5: 15 R6: 39 minR delta: 24.5467795136 R1: 12 R2: 39 R3: 33 R4: 82 R5: 18 R6: 47 minR delta: 24.789976640 R1: 12 R2: 39 R3: 47 R4: 100 R5: 18 R6: 33 minR delta: 24.789976640 R1: 12 R2: 39 R3: 56 R4: 100 R5: 15 R6: 12 minR delta: 25.3564579616 R1: 12 R2: 39 R3: 100 R4: 56 R5: 15 R6: 12 minR delta: 25.3564579616 R1: 12 R2: 47 R3: 18 R4: 47 R5: 10 R6: 27 minR delta: 27.4996466431 R1: 12 R2: 47 R3: 22 R4: 56 R5: 10 R6: 22 minR delta: 27.4996466431 R1: 12 R2: 47 R3: 27 R4: 56 R5: 10 R6: 18 minR delta: 27.4996466431 R1: 12 R2: 47 R3: 47 R4: 18 R5: 10 R6: 27 minR delta: 27.4996466431 R1: 12 R2: 47 R3: 56 R4: 22 R5: 10 R6: 22 minR delta: 27.4996466431 R1: 12 R2: 47 R3: 56 R4: 27 R5: 10 R6: 18 minR delta: 27.4996466431 R1: 15 R2: 56 R3: 22 R4: 56 R5: 10 R6: 27 minR delta: 29.1605253709 R1: 15 R2: 56 R3: 22 R4: 56 R5: 12 R6: 33 minR delta: 29.811354701 R1: 15 R2: 56 R3: 33 R4: 68 R5: 12 R6: 22 minR delta: 29.811354701 R1: 15 R2: 56 R3: 56 R4: 22 R5: 12 R6: 33 minR delta: 29.811354701 R1: 15 R2: 56 R3: 68 R4: 33 R5: 12 R6: 22 minR delta: 29.811354701 R1: 18 R2: 68 R3: 27 R4: 68 R5: 12 R6: 33 minR delta: 30.7487559507 R1: 18 R2: 68 R3: 33 R4: 68 R5: 12 R6: 27 minR delta: 30.8965517241 R1: 18 R2: 68 R3: 68 R4: 33 R5: 12 R6: 27 minR delta: 30.8965517241 R1: 18 R2: 75 R3: 27 R4: 68 R5: 12 R6: 36 minR delta: 30.9007058823 R1: 18 R2: 75 R3: 47 R4: 91 R5: 12 R6: 10 minR delta: 30.9007058823 R1: 18 R2: 75 R3: 68 R4: 27 R5: 12 R6: 36 minR delta: 30.9007058823 R1: 18 R2: 75 R3: 91 R4: 47 R5: 12 R6: 10 minR delta: 30.9007058823 R1: 22 R2: 82 R3: 36 R4: 82 R5: 15 R6: 39 minR delta: 33.2525545171 R1: 22 R2: 82 R3: 82 R4: 36 R5: 15 R6: 39 minR delta: 33.2525545171 R1: 36 R2: 82 R3: 22 R4: 82 R5: 39 R6: 15 minR delta: 33.2525545171 R1: 36 R2: 82 R3: 82 R4: 22 R5: 39 R6: 15 minR delta: 33.2525545171 R1: 82 R2: 22 R3: 36 R4: 82 R5: 15 R6: 39 minR delta: 33.2525545171 R1: 82 R2: 22 R3: 82 R4: 36 R5: 15 R6: 39 minR delta: 33.2525545171 R1: 82 R2: 36 R3: 22 R4: 82 R5: 39 R6: 15 minR delta: 33.2525545171 R1: 82 R2: 36 R3: 82 R4: 22 R5: 39 R6: 15 minR delta: 33.2525545171 R1: 36 R2: 82 R3: 82 R4: 22 R5: 39 R6: 15 minR delta: 33,2525545171
Trin 2: Min samling med 4 knapper
Til mine fire knapper brugte jeg disse knapper og et perforeret print og modstande som angivet i diagrammet ovenfor. Hvordan du fysisk implementerer dine fire knapper er vidt åben og op til dig og dine projekters behov. Så længe det er elektrisk, hvad der er i diagrammet ovenfor. Vær sikker på, at din konstruktion-montering er sådan, at du ikke kommer i kontakt med ledningerne til knapperne, da det vil smide aflæsningerne ud, hvilket resulterer i en forkert knapadfærd.
Jeg har en lille ekstra knap på mit bord, som jeg bruger som en 'Funktion' -tast. Det er i serie med en 2 megohm modstand, som ikke væsentligt smider mine andre inputmålinger væk; selvom jeg kun kan opdage det, når det trykkes alene. Du kan ignorere det eller kontrollere koden for yderligere at forstå, hvordan jeg bruger den.
Testskitse 'Test_12Leds_6Btns' kan bruges til at teste påvisning af knap (er) ved tryk på din MCU og den faktiske knapmontering. Dens output er indstillet til at blive set enten med en LED -stige eller den serielle skærm. Det kan let ændres til output via den type skærm, du måtte have.
Du skal muligvis justere kodens sæt referenceaflæsninger, den sammenligner input til, på grund af potentielle forskelle i din MCU's interne pull-up-modstand eller tolerancer for de modstande, du bruger. Du kan, hvis du hellere vil, bruge præcisionsmodstande, forhåbentlig ikke at skulle foretage kalibreringsjusteringer. I øvrigt brugte jeg ikke en ekstern pull-up, da det ville forstyrre andre anvendelser, jeg planlægger til et af mine projekter.
En af de vigtigste softwareaktioner, der er udført for at sikre, at bestemmelsen af, hvilke knapper der trykkes på, ikke påvirkes af forsyningsspændingsniveauet (&/eller MCU -varians), er i skala den analoge indgang baseret på dens maksimale aflæsning, som igen påvirkes af forsyningsspændingen.
Softwaren 'driver', der betjener disse knapper, er rutinen 'scanButtons ()'. Den venter på, at den analoge inputværdi skal afregnes, og derefter kortlægger læsningen til en række af de forudbestemte værdier; og oversætter det til de tilsvarende tilstande for samling af knapper. Denne rutine og de offentlige variabler, den deler med applikationssoftwaren, er alt, hvad der er nødvendigt for at bruge dette sæt på samme måde i uafhængige knapper.
Bemærk! Den nuværende version af 'scanButtons ()' forsøger ikke entydigt at identificere alle de mulige tre knapkombinationer, da det for mig ikke var realistisk nødvendigt og yderligere ville komplicere den nødvendige kode og kalibreringsnøjagtighed.
Trin 3: Game Play
Enten sketch, 'LadderGames4' eller 'Head2head' kan indlæses og køre af de fleste Arduino MCU'er, men LadderGames4 skal have 'SimonSays' eller et af de to andre spil kommenteret for at passe til 8K Bytes programplads i en Attiny-85. Lyd er også et problem med en ATtiny-85, se tidligere projekt nævnt ovenfor. Koden er konfigureret med betinget kompilering og er kendt for at fungere med en Nano, Uno og en ATtiny-85.
Med hver af disse skitser efter initialisering præsenteres du for menuen, med en farve ad gangen, der lyser alle de røde… gule… grønne… blå lysdioder, svarende til de fire mulige spilvalg. Du trykker enten på Btn1, når ønsket er tændt, eller du kan til enhver tid trykke på Btn2-4 for spil 2-4. Den overflødige måde at vælge på er for at være kompatibel med både to og fire knapper implementeringer og spil. Hvis der er flere versioner til spillet, skal du vælge blinkende rødt for ver-1, blinkende gult for ver-2 og så videre.
4 knapspil
Et spil hukommelse, et øje-hånd-koordinationsspil og to strategispil.
Simon Says Dette er en genimplementering af spillet fra den form, jeg havde det i, i disse tidligere projekter:
www.instructables.com/id/Fast-Easy-Simon/
www.instructables.com/id/Improved-Simon-Says-Code/
Det spiller som de fleste andre 'Simon Says' spil.
Her tilføjede jeg dog topersoners version (når du vælger mulighed 2, blinker gult), hvor hver spiller til gengæld tilføjer en ny lysnote til serien. Den første, der ikke korrekt gentog alt, hvad der kom før, taber spillet.
Slå en muldvarp
I 30 sekunder dukker forskellige mol op (rød, yel, grn, blu) 1, 2 eller 3 ad gangen. Du skal 'banke' dem ved at trykke på de tilsvarende knapper Btn1-4. Kun et tryk på én knap accepteres, ingen samtidige tryk på flere knapper. Hvor længe et sæt muldvarpe holder sig, bliver kortere, efterhånden som spillet fortsætter. Hvis du slår alle muldvarperne frem, vises et nyt sæt; sådan at hurtigere du er jo flere muldvarpe har du en chance for at slå.
Når et spil er udført, vil displayet afspejle scoringen og tænde en led for hver 10 mol, der blev slået. Da spillet scorer 10 point for hver muldvarp, ville 5 tændte leds repræsentere en standard Whac-a-Mole point score på 500+. For at spille endnu en runde skal du vælge spillet igen.
Jeg bruger en finger på hver knap til hurtig handling og høje scores. For en mere ordentlig udfordring bør man kun bruge en finger på den ene hånd og reagere på brugen af en hammer.
Min typiske score ved hjælp af en finger er i 500'erne, ved hjælp af 4 fingre (en pr. Knap) er det 600+. Min højeste score er 700+. Det er især vanskeligt at bruge flere fingre, fordi hvis der er et overlap i at trykke på den ene og den anden, accepteres den anden ikke af softwaren, hvilket kræver, at du slipper alle knapper, før en anden accepteres. Hvis nogen får alle 12 lysdioder frem for en score på 1200+, så lad os det vide.
Havjagt
Der er en uset ubåd, der bevæger sig gennem dybet. Den oprindelige placering og retning er tilfældig. Det gør et skridt langs sit forløb efter hver tur, du tager. Du skal forudsige hans opholdssted via sonarrapporter og synke det med en dybde-ladning. En ekkolod der bølger ud (i begge retninger) fra startstedet som et svagt lys og lyser (sammen med et ping) i afstanden fra subben. Bemærk dog, at sub'en kan være en af dig og bevæger sig i en ukendt retning. En dybdeladning eksploderer dybt under, hvor den bliver lanceret. Du hører en dæmpet eksplosion, hvis ingenting, eller er der, ellers hører du den store eksplosion af suben og et kraftigt blink.
For at flytte markøren til det sted, hvor du vil tabe en ekkolodbøje eller dybdeladning, udføres med Btn2 & Btn3 til venstre og højre. Knap-1 bruges til at starte dem.
I version 1 er hvert forsøg en kombination af dybdeladnings- og ekkolodsrapport; og du kan bruge et ubegrænset antal af dem.
I version 2 skiftes hovedet til hovedet på skift for at se, hvem der formår at synke suben. Spiller 1 bruger Btn1, og den anden spiller bruger Btn4 til at starte deres dybde-afgifter.
I version 3 lanceres dybde-ladninger og sonarrapporter uafhængigt af henholdsvis Btn1 og Btn4. Du har kun tre dybdeafgifter til rådighed for dig. Du kan få alle de ekkolodsrapporter, du ønsker. Du taber, hvis du ikke får ham med de anklager.
I version 4 kunne suben bevæge sig med en hastighed på 1-3 mellemrum pr. Volley, og spiller ellers som version 3, men du får 6 dybde-ladninger.
Historie: Jeg skabte første gang 'Sea Hunt' -spillet i 1970'erne. Derefter var input- og outputenheden en teletype. Men da var havet et 2 -dimensionelt gitter, i modsætning til 1 -dimensionelt, som det er her.
BEMÆRK: Jeg kommenterede dybdebegrænsningsbegrænsningen i koden med den tanke, at det allerede var svært nok at spille for de fleste mennesker.
Flip'd
Dette spil med to spillere ligner lidt Reveri, idet du forsøger at vende alle cellerne til din farve, men dette opnås ved forskelligt.
I dette spil med to spillere er den ene spillers mål at slukke alle lysene, og den anden at tænde dem alle. En spiller bruger Btn1 til enten at slukke en gruppe af den anden spillers lys eller opgive en enkelt af sine “Off lights” (tænde den). Den anden spiller bruger Btn4 til enten at tænde en gruppe "Off lights" til On eller en enkelt af hans ryg Off.
Tavlen starter med et tilfældigt sæt lysdioder på. Når det er den første spillers tur, er der en hurtig dæmpning eller belysning på LED'en ved 'markøren', et interessepunkt, som potentielt kan drejes. Under spiller nr. 2's tur er der et langt blink af en LED som en markørindikator. Hvis den forkerte spiller trykker på sin knap uden for tur, lyder der et meget kort bip. Markøren flyttes til venstre af Btn2 og højre af Btn3. Den tabende spiller starter det følgende spil.
Strategien om, hvad man skal vende, kan være væsentlig.
Trin 4: Head to Head -konkurrencer
Spil med to knapper / to spillere
I det første sæt med 4 knapspil er kun 'Whack-a-Mole' virkelig afhængig af fuldstændig uafhængighed af knapbehandlingen. Jeg har også implementeret fire head -to -head -spil, som alle afhænger af uafhængig knappedetektering. Disse spil er: Quick Draw, Tug a War, Chicken og Hot Hands (Slapsies).
Quick Draw (reaktionstest)
Konkurrencen startes med en 'Ready'/rød, 'Set'/gul og en 'Draw!'/Grøn; være ret tilfældig med hensyn til, hvornår det giver dig grønt lys. Den første, der rammer deres knap, vinder. Slår for tidligt, og du er vanæret med en summen.
Spiller 1 bruger Btn1 (til venstre) og spiller 2 bruger Btn4 (til højre).
Tovtrækning
Starter med et 'Klar', 'Sæt' … 'KØR!'. Der vises et objekt i midten, en 'sløjfe' på et reb. Derefter rammer spillerne deres knapper så hurtigt og ofte som de kan. Buen bevæger sig mod den spiller, der har flest hits. Når buen når den ene ende, er det vinderen.
Kylling
Denne konkurrence startes på samme måde. Efter lyden og det grønne blink fra 'Go!' spillerne trykker og holder på deres knapper, lysglimt (deres vogne) begynder at bevæge sig fra dem mod den anden. Vinderen er den, der slipper sin knap (springer ud af deres vogn) sidst, lige før de to blips ville styrte ind i hinanden. Hvis nogen slipper for sent eller slet ikke gør det, styrtede de ned og tabte. Hvis begge hopper (slipper) for sent, vinder ingen.
I begyndelsen fejer et par modsatte leds hen over displayet, hvis du på dette tidspunkt rammer Fnc-Btn2, øges spilhastigheden. Dette kan gentages et par gange.
Varme hænder
En digital version af det håndslagne spil (aka Red-Hands or Slapsies). For at starte de to spillere skal du trykke deres knapper sammen sammen, den ene side frigiver derefter forsøger at trykke på hans knap to gange, før den anden side kan slippe sin knap. Dernæst forsøger den anden side at gøre det samme. Den spiller, hvis tur det er, angives i starten af en runde med en belysning af lysdioderne på hans side. Jeg fandt ud af, at en enkelt knap kun var et enkelt tryk for hurtigt og let, så jeg lavede to påkrævede, hvilket tager mere handling og tid, som at skulle både vende hånden over og over de andre og derefter slå ned. TBD: I en anden version er det gratis for alle, når som helst kan hver spiller prøve at få det bedste ud af den anden.
Varsel ! Jeg råder dig til at udskrive ovennævnte spils driftsregler og genlæse dem, før du spiller et spil, som du ikke for nylig har spillet. Ellers kan du frustrere dig selv; tænker på, at spillet ikke fungerer korrekt, når det faktisk er det, men du og spillet har forskellige måder og forventninger. Jeg er selv blevet offer for dette mere end et par gange.
Med de otte spil her og de fire i mit tidligere projekt Single-Line-LED-Display-Games, der gør software tilgængelig til at spille 12 spil med denne fire-knap + led-stige hardware-kombination.
Jeg har mindst fire yderligere rekreationsaktiviteter til denne (knap-display) hardware, der kommer inden årets udgang.
Trin 5: Valgfri 2 spillercontrollere
Til de spil, der kun krævede to knapper, kunne jeg naturligvis have brugt 4-knappers printkort med disse spil; men ved at spille disse spil har man en tendens til at blive ret fysisk. Så jeg bruger separate stempelknapper, lavet af et stykke plastrør dækket med et cykelhåndtag og en stor knap.
Stempelknapper:
- 1/2 "drop line rør, sprinkler stand-off eller PVC (byggemarked)
- Cykelhåndtag (Walmart)
- Store trykknapper (eBay)
- 2 modstande
For at opretholde kompatibiliteten har en knap en 75 ohm modstand i serie med den, og den anden har en 36-39 ohm i serie; sådan at softwaren vil se dem som henholdsvis Btn1 og Btn4.
Du kan bruge slange fra f.eks. En kasseret kost eller nalhåndtag.
Der kunne endda laves en adapter, som du kunne slutte gamle spilkonsol -glædepinde til; få ens ildknapper tilsluttet som Btn1 og Btn4 til den anden, mens du deler Btn1-4 ved at gå til joy sticks 'navigationsknapper.
April 2018: Nu foretrækker du at bruge 5/8 kompressionskoblinger som kroppen til eksterne knapper i stempelstil. De store knapper (med lidt tape over deres tråde tilføjet) passer perfekt i dem, og de passer meget godt i hånden. Som min børn kan lide at bruge et par af disse, jeg tilføjede et par sæt header pins for let at forbinde en ekstern håndholdt knap på tværs af Bnt1 kontakterne og en til Btn4.
Trin 6: Opdatering (er)
Jeg lavede et 3D-printet konsolhus til at huse In-Line LED stigen display og knapper.
Jeg har kombineret de 12 spil, jeg har oprettet indtil nu, til dette 12 LED -display, til en skitse 'Menu_12Games'. Denne software kræver dette projekts hardware implementeret med en 32KB flash MCU (f.eks. Nano eller Uno) og 5 knapper, 4 hoved + en FncKey.
Valgmenuen er nu todelt; først vælger du 1 af 4 grupper af spil, derefter spil 1-4 inden for den gruppe, … som angivet nedenfor. Mens du venter på, at udvalgte skærme scanner R-Y-G-B periodisk, trykker du på Btn1-4 som dit valg til enhver tid, det gør ingen forskel, hvad der vises, når du trykker på dit valg. Under 'gruppe' -valg er alle lysdioder i det mindste delvist lette under RYGB -scanningen. For at afslutte ethvert spil eller sikkerhedskopiere fra 'spil' til 'gruppe' valg, tryk på FncKey-Btn1.
Jeg mangler endnu at kode den sidste 4. Jeg har 3 skrevet op (inklusive 'LeMans'). Jeg er ikke kommet på, hvad det sidste spil ville være. Send mig en besked med ideer.
Opdatering 25. januar 17: For dem af jer, der nyder adgang til en 3D-printer, er du muligvis interesseret i den spilkonsol, jeg lavede til min enhed: https://www.instructables.com/id/3D-Printed-Case- for-inline-LED-display-konsol-og/
Opdatering 17. februar 17: Jeg tilføjede de sidste 4 spil, som nu er tilgængelige som "Menu_16Games.ino" under "Trin 7: Opdater, flere spil" af Instructable: Single-Line-LED-Display-Games (Menu_12Games.ino er nu nedlagt)
Gruppespil: 1– Rød 2- Gul 3- Grøn 4- Blå
1 rød PushIt PingPong ShootEmUp JumpMan 2 Yel QuickDraw Tug_a_War Chicken Hot_Hands 3 Grn Le_Mans Spray PIG BiFunc 4 Blu SimonSays Whack_Mole Sea_Hunt Flip_d
Anbefalede:
Sådan laver du et analogt ur og digitalt ur med LED -strip ved hjælp af Arduino: 3 trin
Sådan laver du et analogt ur og et digitalt ur med LED -strip ved hjælp af Arduino: I dag laver vi et analogt ur & Digitalt ur med Led Strip og MAX7219 Dot -modul med Arduino. Det vil rette tiden med den lokale tidszone. Det analoge ur kan bruge en længere LED -strimmel, så det kan hænges på væggen for at blive en kunstværker
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter - Rc Helikopter - Rc -fly ved hjælp af Arduino: 5 trin (med billeder)
Trådløs fjernbetjening ved hjælp af 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sender modtager til Quadcopter | Rc Helikopter | Rc -fly ved hjælp af Arduino: At betjene en Rc -bil | Quadcopter | Drone | RC -fly | RC -båd, vi har altid brug for en modtager og sender, antag at vi til RC QUADCOPTER har brug for en 6 -kanals sender og modtager, og den type TX og RX er for dyr, så vi laver en på vores
ESP32 kapacitiv berøringsindgang ved hjælp af "metalliske hulpropper" til knapper: 5 trin (med billeder)
ESP32 kapacitiv berøringsindgang ved hjælp af "Metallic Hole Plugs" til knapper: Da jeg var ved at færdiggøre designbeslutninger til et kommende ESP32 WiFi Kit 32 -baseret projekt, der kræver input af tre knapper, var et mærkbart problem, at WiFi Kit 32 ikke har en enkelt mekanisk trykknap, alligevel alene tre mekaniske knapper, f
"Enkelt" Digilog -ur (digitalt analogt) ved hjælp af genbrugsmateriale !: 8 trin (med billeder)
"Enkelt" Digilog -ur (digitalt analogt) ved hjælp af genbrugsmateriale !: Hej alle sammen! Så på denne instruktør vil jeg dele, hvordan du laver dette digitale + analoge ur ved hjælp af billigt materiale! Hvis du synes, at dette projekt " suger ", du kan gå væk og ikke fortsætte med at læse denne Instructable. Fred! Jeg beklager virkelig, hvis t
SmartPhone Game Simulator- Spil Windows-spil ved hjælp af Gesture Control IMU, Accelerometer, Gyroskop, Magnetometer: 5 trin
SmartPhone Game Simulator- Spil Windows-spil ved hjælp af Gesture Control IMU, Accelerometer, Gyroskop, Magnetometer: Understøt dette projekt: https://www.paypal.me/vslcreations ved at donere til open source-koder & støtte til videre udvikling