Sommario:

Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori: 4 passaggi (con immagini)
Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori: 4 passaggi (con immagini)

Video: Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori: 4 passaggi (con immagini)

Video: Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori: 4 passaggi (con immagini)
Video: Quando provi a fare un complimento a una ragazza... 2024, Novembre
Anonim
Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori
Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori
Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori
Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori
Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori
Tap Tap Rainbow - un gioco di reazione rapida per 2 giocatori

La stringa di LED utilizza solo 3 fili. Quindi avevo solo bisogno di un'alimentazione a 5 V (rosso), terra (bianco) e segnale (verde). Se usi anche un Espruino assicurati di controllare i tutorial sul loro sito web. Quello per i LED RGB è spiegato molto chiaramente.

Ho tagliato la stringa di LED in 3 parti di 6 LED e poi li ho collegati insieme con fili extra. In questo modo, tutti i LED utilizzano lo stesso array che mi fa risparmiare 2 porte extra sulla scheda ed è più facile da programmare.

Il collegamento dei pulsanti è stato un po' più difficile. Volevo usare il minor numero possibile di porte sulla scheda, quindi stavo pensando di utilizzare una configurazione I2C ma ho fallito terribilmente. Non riuscivo a farlo funzionare così mi sono occupato di qualcos'altro.

Alla fine ho trovato un tutorial su Espruino per una tastiera che è cablata come una matrice di tastiere con 16 pulsanti. Questo sembrava abbastanza facile da implementare, quindi sono andato in quel modo. Avevo solo bisogno di 12 pulsanti, quindi avrei bisogno di una matrice 3x4.

In una matrice di tastiere tutti i pulsanti sono cablati in colonne e righe. In questo modo hai solo bisogno di 8 porte per 16 pulsanti. Nella mia configurazione avevo solo bisogno di 2 volte 6 pulsanti, quindi ho un totale di 7 porte sulla scheda (4 righe con 3 colonne). È ancora molto meno che collegare i 12 pulsanti separatamente e il modulo tastiera di Espruino è davvero facile da usare.

Ho trovato un buon tutorial sulla tastiera sulle basi del circuito che mi ha aiutato molto con il cablaggio dei pulsanti.

Quando sono riuscito a collegare tutti i miei pulsanti, mi sono sentito molto frustrato perché i connettori scivolavano costantemente via e si stava facendo tardi. Quindi ho registrato tutto sulla scatola e mi sono completamente dimenticato di fare le foto. Inoltre non è molto facile da usare il giorno in cui ho bisogno di ricollegare un filo in 1 delle scatole.

Passaggio 3: scrittura del codice

Scrivere il codice
Scrivere il codice
Scrivere il codice
Scrivere il codice
Scrivere il codice
Scrivere il codice

Espruino è programmato in Javascript quindi per me è molto meno complesso che scrivere codice per Arduino.

Il codice potrebbe utilizzare alcune ottimizzazioni, ma per ora fa il suo lavoro. C'è anche un bug (forse è una caratteristica:D) per cui non puoi premere 2 pulsanti contemporaneamente. Ma rende un po' più impegnativo (leggi frustrante) giocare, quindi non ho ancora indagato sul problema, mi piace un po' in questo modo (se perdi è molto frustrante).

La programmazione dei LED è piuttosto semplice. Ogni LED nella stringa è 3 valori in un array. Quindi se hai un array come [255, 0, 0, 255, 0, 0] hai i primi 2 LED rossi.

In una rapida panoramica.

1. Per prima cosa definisco i miei colori e creo una serie di tutti i colori

2. Quindi definisco le impostazioni del lettore, come gli ID dei pulsanti e quale indice ha ciascun giocatore nella stringa di LED

3. All'inizio del gioco mescolo tutti i colori nell'array arcobaleno e memorizzo le informazioni in un nuovo array. Quindi resetto tutti i LED e accendo i LED in alto con i colori mischiati dell'arcobaleno

4. Infine abbiamo il codice che ascolta gli eventi chiave. Memorizzo tutti gli input in un array e controllo se questo array è nella sequenza corretta.

5. Un bel extra che ho aggiunto ieri è che i vincitori vengono trattati con una fantastica animazione arcobaleno: D

Ci sono ancora molte cose che ho in mente per renderlo più divertente, ma è qualcosa per dopo;)

Non riesco a caricare il codice sorgente completo, quindi l'ho messo su Gitlab

gitlab.com/marzsman/tap_tap_rainbow

Passaggio 4: divertiti con esso!!! ?

Image
Image
Divertiti con esso!!! ?
Divertiti con esso!!! ?

Quando io e mia figlia abbiamo scritto la sua idea e abbiamo pensato a come doveva apparire, l'idea mi è piaciuta subito. Ma devo dire che non avrei mai pensato che sarebbe stato così divertente da suonare. Abbiamo già avuto alcune grandi battaglie di tapping arcobaleno:D

Spero che qualcuno si divertirà tanto quanto noi.

È anche il primo progetto completo che ho realizzato in così poco tempo e qualcosa che ho fatto con mia figlia di 8 anni ed è anche il mio primo istruibile (FINALMENTE!), quindi sì, in un certo senso è un progetto molto speciale per me. Quindi spero che piaccia!

Se hai domande o suggerimenti, sono felice di ascoltarli!

Consigliato: