Sisällysluettelo:

Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli: 4 vaihetta (kuvilla)
Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli: 4 vaihetta (kuvilla)

Video: Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli: 4 vaihetta (kuvilla)

Video: Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli: 4 vaihetta (kuvilla)
Video: Russian Roulette Table Tennis Contest: Who Wins? 2024, Marraskuu
Anonim
Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli
Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli
Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli
Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli
Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli
Napauta Tap Rainbow - kahden pelaajan nopean reaktion peli

LED -merkkijono käyttää vain 3 johtoa. Joten tarvitsin vain 5 V: n virran (punainen), maan (valkoinen) ja signaalin (vihreä). Jos käytät myös Espruinoa, tarkista oppaat heidän verkkosivuiltaan. RGB -merkkivaloja koskeva selitys on hyvin selkeä.

Olen katkaissut LED -merkkijonon kolmeen osaan 6 LEDistä ja liittänyt ne sitten yhteen lisäjohtojen kanssa. Tällä tavalla kaikki LEDit käyttävät samaa ryhmää, mikä säästää 2 lisäporttia kortilla ja on helpompaa ohjelmoida.

Painikkeiden yhdistäminen oli hieman vaikeampaa. Halusin käyttää mahdollisimman vähän portteja kortilla, joten ajattelin käyttää I2C -asetusta, mutta epäonnistuin siinä hirveästi. En saanut sitä toimimaan, joten katsoin jotain muuta.

Lopulta löysin Espruino -opetusohjelman näppäimistölle, joka on kytketty näppäimistömatriisiksi 16 painikkeella. Tämä näytti melko helpolta toteuttaa, joten menin siihen suuntaan. Tarvitsin vain 12 painiketta, joten tarvitsisin 3x4 -matriisin.

Näppäimistömatriisissa kaikki painikkeet on kytketty sarakkeisiin ja riveihin. Tällä tavalla tarvitset vain 8 porttia 16 painikkeelle. Asennuksessani tarvitsin vain 2 kertaa 6 painiketta, joten se on yhteensä 7 porttia levyllä (4 riviä ja 3 saraketta). Se on vielä paljon vähemmän kuin 12 painikkeen liittäminen erikseen, ja Espruinon näppäimistömoduuli on todella helppokäyttöinen.

Löysin hyvän opastuksen näppäimistöstä piirin perusteissa, mikä auttoi minua paljon näppäinten johdotuksessa.

Kun onnistuin yhdistämään kaikki painikkeeni, olin hyvin turhautunut, koska liittimet luiskahtivat jatkuvasti pois ja oli myöhäistä. Joten teipasin kaikki yhteen laatikkoon ja unohdin ottaa kuvia. Ei myöskään kovin käyttäjäystävällinen päivä, jolloin minun on kytkettävä johto uudelleen yhteen laatikoista.

Vaihe 3: Koodin kirjoittaminen

Koodin kirjoittaminen
Koodin kirjoittaminen
Koodin kirjoittaminen
Koodin kirjoittaminen
Koodin kirjoittaminen
Koodin kirjoittaminen

Espruino on ohjelmoitu Javascriptiin, joten minulle se on paljon vähemmän monimutkaista kuin Arduinon koodin kirjoittaminen.

Koodi voisi käyttää jonkin verran optimointia, mutta se tekee työn toistaiseksi. On myös vika (ehkä se on ominaisuus: D), jossa et voi painaa kahta painiketta samanaikaisesti. Mutta se tekee pelaamisesta hieman haastavampaa (lue turhauttavaa), joten en ole tutkinut asiaa vielä, pidän siitä tällä tavalla (jos menetät sen, se on erityisen turhauttavaa).

LEDien ohjelmointi on helppoa. Jokainen merkkijonon merkkivalo on 3 arvoa taulukossa. Joten jos sinulla on taulukko, kuten [255, 0, 0, 255, 0, 0], kaksi ensimmäistä LEDiä ovat punaisia.

Pikakatsauksessa.

1. Ensin määrittelen värit ja teen joukon kaikista väreistä

2. Sitten määritän soittimen asetukset, kuten painikkeiden tunnukset ja jokaisen indeksin kullakin pelaajalla on merkkijonossa

3. Pelin alussa sekoitan kaikki sateenkaarisarjan värit ja tallennan tiedot uuteen taulukkoon. Sitten nollaan kaikki LEDit ja sytytän ylimmät LEDit sekoitetuilla sateenkaaren väreillä

4. Lopuksi meillä on koodi, joka kuuntelee tärkeimmät tapahtumat. Tallennan kaikki syötteet taulukkoon ja tarkistan, onko tämä taulukko oikeassa järjestyksessä.

5. Kiva lisä lisäsin eilen, että voittajat saavat mahtavan sateenkaaren animaation: D

Mielessäni on vielä paljon asioita, jotka tekevät siitä hauskempaa, mutta se on jotain myöhemmin;)

En voi ladata koko lähdekoodia, joten olen lisännyt sen Gitlabiin

gitlab.com/marzsman/tap_tap_rainbow

Vaihe 4: Pidä hauskaa sen kanssa !!! ?

Image
Image
Pidä hauskaa sen kanssa !!! ?
Pidä hauskaa sen kanssa !!! ?

Kun tyttäreni ja minä kirjoitimme hänen ideansa muistiin ja mietimme, miltä sen pitäisi näyttää, pidin siitä heti. Mutta minun on sanottava, etten koskaan uskonut, että pelaaminen olisi niin hauskaa. Meillä oli jo isoja sateenkaaren taputteluita: D

Toivottavasti kenelläkään on yhtä hauskaa sen kanssa kuin meillä.

Se on myös ensimmäinen täysi projekti, jonka tein niin lyhyessä ajassa ja jotain, mitä tein 8 -vuotiaan tyttäreni kanssa JA se on myös ensimmäinen opastettava (lopulta!), Joten kyllä, tavallaan se on minulle hyvin erityinen projekti. Toivottavasti siis tykkää!

Jos sinulla on kysymyksiä tai ehdotuksia, kuulen ne mielelläni!

Suositeltava: