Sommario:

Lazy 301 Dart Buddy!: 5 passaggi
Lazy 301 Dart Buddy!: 5 passaggi

Video: Lazy 301 Dart Buddy!: 5 passaggi

Video: Lazy 301 Dart Buddy!: 5 passaggi
Video: 20 MOMENTS YOU WOULDN'T BELIEVE IF NOT FILMED 2024, Novembre
Anonim
Pigro 301 compagno di freccette!
Pigro 301 compagno di freccette!
Pigro 301 compagno di freccette!
Pigro 301 compagno di freccette!
Pigro 301 compagno di freccette!
Pigro 301 compagno di freccette!

Di recente io e i miei compagni di stanza del college abbiamo ereditato un bersaglio per le freccette malconcio…

Abbiamo iniziato a esplorare giochi come 301, in cui ogni giocatore parte da 301 punti per arrivare a zero punti nel corso di pochi round. È stato divertente, tuttavia scrivere sulla (piccola) lavagna fornita accanto alla lavagna richiedeva molto tempo e impediva al giocatore successivo di sparare fino a quando il giocatore precedente non era fuori dai piedi.

Quindi, ho pensato che sarebbe stato un divertente progetto pomeridiano mettere insieme una calcolatrice basata su arduino che potesse aiutarci.

In un'ora o giù di lì ho avuto un prototipo funzionante di massima su una breadboard. Tuttavia con un paio di ore di lavoro in più ho rimosso la breadboard e fissato il tutto a una scatola economica che ho appeso al muro.

Forniture

Arduino Nano

Qualsiasi versione economica di Adafruit/Amazon di quanto segue:

Schermo LCD 16x2

tastiera

Potenziometro (resistenze assortite funzioneranno)

Ponticelli assortiti maschio-maschio, maschio-femmina, femmina-femmina

Altoparlante piezo

tagliere

Passaggio 1: codice e pianificazione

Codice e pianificazione
Codice e pianificazione

Il codice era estremamente semplice ed essenziale. Non stavo andando per niente di speciale qui dato che era un progetto veloce, ma puoi pasticciare con il codice a tuo piacimento. Ho pianificato il gioco da uno a quattro giocatori.

Ho scritto una funzione arduino per soddisfare quattro giocatori. L'ho chiamato "game4p". Quindi l'ho copiato e incollato altre tre volte e ho rinominato le funzioni "game1P", "game2P", ecc. E ho cancellato il codice extra di conseguenza. L'idea di base era la seguente:

1) Stampa i punteggi, chiedi al giocatore 1 di andare

2) Quando il giocatore inserisce il punteggio, avanza al giocatore successivo se ce n'è uno

3) ripeti (2) fino a quando tutti i giocatori non se ne vanno, quindi ricomincia da (1)

4) se il punteggio di un giocatore raggiunge lo zero, terminare il gioco e richiedere un nuovo gioco

Puoi guardare il codice per vedere come ho gestito cose come

-Inserimento di cose nella tastiera

-Garantire un buon input

-Consentire sia l'addizione che la sottrazione utilizzando rispettivamente i tasti in basso a sinistra e a destra

Passaggio 2: tastiera

tastiera
tastiera

Ho usato una tastiera economica per gestire il mio input.

La libreria di tastiere di Arduino si occupa di tutte le cose interessanti dietro le quinte spiegate magnificamente qui. Fondamentalmente hai bisogno di un pin per riga e un pin per colonna libero sul tuo arduino.

Nel mio caso, ho usato il tasto in basso a destra per attivare un'azione di sottrazione (per sottrarre il tuo punteggio da 301) e il tasto in basso a sinistra per l'addizione (nel caso qualcuno avesse sbagliato, il gioco non sarebbe stato rovinato). Premendo questi tasti senza prima inserire un numero, è semplicemente passato al giocatore successivo.

Dopo un paio di minuti di gioco con il monitor seriale e il codice di esempio fornito con la libreria della tastiera, ero pronto per integrare lo schermo LCD per visualizzare i tasti premuti.

Passaggio 3: schermo LCD

Schermo a cristalli liquidi
Schermo a cristalli liquidi

Ancora una volta, arduino ha una libreria incorporata anche per questo componente. La libreria LCD gestisce tutti gli imbrogli utilizzati dagli schermi LCD. Una grande risorsa di pinout può essere trovata qui. Tutti gli schermi LCD che ho usato seguono lo stesso pinout spiegato in quel link.

Al momento del prototipo grezzo, non sono riuscito a trovare un potenziometro, necessario per regolare il contrasto del testo sullo schermo con la retroilluminazione (necessario per il pin 3). Quindi ho usato un mucchio di resistori per creare un partitore di tensione e ho sondato un punto che mi sembrava ragionevole.

Dopo un altro paio di minuti a pasticciare con il monitor seriale, ero pronto a mettere tutto insieme!

Passaggio 4: prodotto funzionante finale (grezzo)

Ecco un video del prodotto breadboard in azione. Tutto funziona come previsto.

Puoi fermarti qui dopo la tua ora di lavoro, oppure puoi passare qualche altra ora e impacchettarlo per sembrare (leggermente) più carino come ho fatto io…

Passaggio 5: tutte le campane e i fischietti

Image
Image

No, non è una bomba. Sembra piuttosto ruvido, ma fa il suo lavoro!

Ho aggiunto un altoparlante per un feedback piacevole corrispondente a pressioni di tasti buone/cattive. Con una piccola scatola di plastica che avevo in giro e alcune fascette, sono riuscito a impacchettare questa cosa e appenderla al muro!

Grazie per la lettura, per favore vota e considera di votare per me nella "1 Hour Challenge" in cui viene presentato questo progetto.

Sentiti libero di fare domande nei commenti!

Consigliato: