Innholdsfortegnelse:
Video: Tap Tap Rainbow - et 2 -spillerers hurtigreaksjonsspill: 4 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
LED -strengen bruker bare 3 ledninger. Så jeg trengte bare en 5V strøm (rød), bakken (hvit) og signal (grønn). Hvis du også bruker en Espruino, må du sjekke opplæringen på nettstedet deres. Den for RGB -lysdiodene er veldig tydelig forklart.
Jeg har kuttet LED -strengen i 3 deler av 6 lysdioder og deretter koblet dem sammen med ekstra ledninger. På denne måten bruker alle lysdioder samme array som sparer meg for 2 ekstra porter på brettet, og det er lettere å programmere.
Det var litt vanskeligere å koble til knappene. Jeg ønsket å bruke minst mulig porter på brettet, så jeg tenkte på å bruke et I2C -oppsett, men mislyktes fryktelig. Jeg kunne ikke få det til å fungere, så jeg passet på noe annet.
Etter hvert fant jeg en opplæring om Espruino for et tastatur som er koblet til en tastaturmatrise med 16 knapper. Dette så ganske enkelt ut å implementere, så jeg gikk den veien. Jeg trengte bare 12 knapper, så jeg ville trenge en 3x4 matrise.
I en tastaturmatrise er alle knappene koblet til kolonner og rader. På denne måten trenger du bare 8 porter for 16 knapper. I oppsettet mitt trengte jeg bare 2 ganger 6 knapper, så det er totalt 7 porter på brettet (4 rader med 3 kolonner). Det er fortsatt mye mindre enn å koble de 12 knappene hver for seg, og tastaturmodulen på Espruino er veldig enkel å bruke.
Jeg fant en god opplæring om tastaturet på grunnleggende kretser som hjalp meg mye med ledningene til knappene.
Da jeg klarte å koble til alle knappene mine, ble jeg veldig frustrert fordi kontaktene stadig gled av og det ble sent. Så jeg teipet alt sammen på esken og glemte helt å ta bilder. Også ikke veldig brukervennlig den dagen jeg trenger å koble til en ledning på nytt i en av boksene.
Trinn 3: Skrive koden
Espruino er programmert i Javascript, så for meg er det langt mindre komplisert enn å skrive kode for Arduino.
Koden kan bruke litt optimalisering, men den gjør jobben foreløpig. Det er også en feil (kanskje det er en funksjon: D) der du ikke kan trykke på 2 knapper nøyaktig samtidig. Men det gjør det litt mer utfordrende (les frustrerende) å spille spillet, så jeg har ikke undersøkt problemet enda, jeg liker det på denne måten (hvis du mister det er det ekstra frustrerende).
Det er ganske enkelt å programmere lysdiodene. Hver LED i strengen er 3 verdier i en matrise. Så hvis du har en matrise som [255, 0, 0, 255, 0, 0] har du de to første lysdiodene røde.
I en rask oversikt.
1. Først definerer jeg fargene mine og lager en rekke alle farger
2. Deretter definerer jeg spillerinnstillingene, som knapp -ID -ene og hvilken indeks hver spiller har i LED -strengen
3. Ved starten av spillet blander jeg alle fargene i regnbueoppsettet og lagrer informasjonen i en ny matrise. Deretter tilbakestiller jeg alle lysdiodene og lyser opp de øverste lysdiodene med de blandede regnbuens farger
4. Til slutt har vi koden som lytter til de viktigste hendelsene. Jeg lagrer all inngang i en matrise og sjekker om denne matrisen er i riktig sekvens.
5. En fin ekstra jeg la til i går at vinnerne blir behandlet med en fantastisk regnbue -animasjon: D
Det er fortsatt mange ting jeg har i tankene for å gjøre det morsommere, men det er noe for senere;)
Jeg kan ikke laste opp hele kildekoden, så jeg har lagt den på Gitlab
gitlab.com/marzsman/tap_tap_rainbow
Trinn 4: Ha det gøy med det !!! ?
Da datteren min og jeg skrev ned ideen hennes og tenkte på hvordan den skulle se ut, likte jeg ideen umiddelbart. Men jeg må si at jeg aldri trodde det ville være så gøy å spille. Vi hadde allerede noen store regnbue tappekamper: D
Jeg håper noen vil ha det så gøy med det som vi har.
Det er også det første fulle prosjektet jeg laget på så kort tid og noe jeg gjorde med min 8 år gamle datter OG det er også min første instruerbare (ENDELIG!), Så ja på en måte er det et veldig spesielt prosjekt for meg. Så håper jeg liker det!
Hvis du har spørsmål eller forslag, hører jeg dem gjerne!
Anbefalt:
Rainbow Dice: 6 trinn (med bilder)
Rainbow Dice: Dette lager en terningkasse med 5 terninger laget av smd -lysdioder i 5 farger. Programvaren som driver den, gir mulighet for forskjellige spillmoduser med flere terninger involvert. En hovedbryter tillater spillvalg og terningkast. Individuelle brytere ved siden av eac
Neopixel Ws2812 Rainbow LED-glød med M5stick-C - Kjører Rainbow på Neopixel Ws2812 Bruke M5stack M5stick C Bruke Arduino IDE: 5 trinn
Neopixel Ws2812 Rainbow LED-glød med M5stick-C | Running Rainbow på Neopixel Ws2812 Bruke M5stack M5stick C Bruke Arduino IDE: Hei folkens i denne instruksen, vi lærer hvordan du bruker neopixel ws2812 LED eller led strip eller led matrise eller led ring med m5stack m5stick-C utviklingstavle med Arduino IDE, og vi skal lage et regnbuemønster med den
Rainbow Word Clock med full Rainbow -effekt og mer: 13 trinn (med bilder)
Rainbow Word Clock Med Full Rainbow Effect og mer: Mål1) Enkel2) Ikke dyrt3) Så energieffektiv som mulig Rainbow Word Clock med full regnbueeffekt. En Smilefjes på Word Clock. Enkel IR-fjernkontroll Oppdater 03-nov-18 LDR for Brightness Control of the NeopixelsUpdate 01-jan
Elektrifiser Tap-A-Tune Piano: 9 trinn (med bilder)
Electrify Your Tap-A-Tune Piano: Lag eksperimentell punkmusikk og skrekkfilm lydeffekter med dette prosjektet inspirert av Randofos " Electric Cigar Box Guitar " Instructable og EvanKale's "Electric Ukelele with Tone Control" Instructable. Tap-a-tune piano er
Rainbow Tower Med App Control: 6 trinn (med bilder)
Rainbow Tower With App Control: Rainbow tower er et appstyrt omgivelseslys. Jeg brukte en WS2812 LED -stripe som lyskilde og en ESP8266 -modul for å kontrollere lysene. Sidene er laget av hvitt akrylglass, som er et flott materiale for å spre lys. Med appen