Sommario:
- Passaggio 1: video
- Passaggio 2: progettare il gioco
- Passaggio 3: progettazione del dispositivo di gioco
- Passaggio 4: costruzione del dispositivo
- Passaggio 5: programmazione del gioco
- Passaggio 6: giocare a Pong
Video: Console portatile Arduino Pong: 6 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
DFRobot mi ha contattato di recente, chiedendomi di utilizzare la loro speciale scheda Arduino Nano e OLED. All'inizio volevo creare una bici intelligente e l'ho costruita nella sua interezza. Ma sfortunatamente il Nano era troppo debole per eseguire e memorizzare l'enorme schizzo che era necessario. Così ho deciso di rivisitare uno dei miei progetti precedenti, una matrice Neopixel che eseguiva un gioco Pong. Volevo invece renderlo portatile e un OLED da 1,7 pollici sarebbe stato un display perfetto.
Elenco delle parti:
- Arduino nano
- OLED
- Altoparlante
Passaggio 1: video
Passaggio 2: progettare il gioco
Per questo gioco di Pong ho voluto mantenerlo relativamente semplice, il che significava non utilizzare paddle controllati dal computer o algoritmi di riflessione della palla fantasiosi. Fondamentalmente, c'è una singola racchetta che un utente può spostare su o giù, e far collidere la palla con la racchetta farebbe sì che il suo vettore dell'asse x si capovolga. Ogni volta che la palla viene colpita, viene riprodotto un suono. Quando il dispositivo di gioco è acceso, viene visualizzata una schermata con il titolo del gioco e le istruzioni. Inoltre, mia madre ha creato una piccola sigla che va in loop in sottofondo finché non viene premuto il pulsante in alto.
Passaggio 3: progettazione del dispositivo di gioco
Il mio programma CAD preferito è Fusion 360, quindi ho deciso di usarlo per progettare il mio dispositivo di gioco pong. Ho iniziato progettando ogni componente utilizzato: un OLED, Arduino Nano e un altoparlante. In questo modo posso vedere esattamente dove e come ogni componente dovrebbe adattarsi all'interno del contenitore. Ho quindi messo il Nano e il PCB nella parte posteriore del case e l'OLED sopra di esso. Poi c'era la domanda su dove mettere l'altoparlante ei pulsanti. Ho deciso che l'altoparlante da 3 W poteva andare appena sotto lo schermo (guardandolo dall'alto) e ciò richiedeva anche di mettere una "griglia" sull'altoparlante in modo che il suono non fosse attutito. Infine, ho aggiunto due pulsanti sul lato sinistro per aggiungere controlli.
Passaggio 4: costruzione del dispositivo
Ho iniziato stampando in 3D ogni parte, composta dalla metà inferiore, dalla metà superiore e da 2 pulsanti. Successivamente ho saldato un connettore femmina al 4x6cm e l'ho collegato al Nano. Ciò non solo consente di rimuovere facilmente l'OLED, ma lo eleva anche sopra l'Arduino Nano. Controllare lo schema per informazioni sul cablaggio. Quindi ho collegato i due pulsanti, insieme a una semplice scheda breakout micro USB per l'alimentazione. Anche l'altoparlante è stato attaccato e posizionato nella posizione corretta. Il design del mio Fusion 360 consente di utilizzare viti a macchina da 3 mm per tenere premuto l'OLED, l'altoparlante e collegare le due metà del dispositivo. Ma dovevo renderli esatti, quindi ho usato il mio trapano a colonna per praticare 8 fori: 2 per l'altoparlante, 2 per lo schermo e 4 sotto. Puoi visitare il collegamento Thingiverse per i file.
Passaggio 5: programmazione del gioco
L'uso di un'interfaccia semplice era vitale per mantenere piccolo il programma. Ho iniziato aggiungendo diverse librerie: Adafruit_GFX, Adafruit_SSD1351 e la libreria Arduino Timer. Successivamente ho definito i miei pin e colori, come i pin dell'OLED e le definizioni dei colori a 16 bit. Nel mio codice ci sono anche 4 modi per cambiare il modo in cui il gioco si svolge, come cambiare le dimensioni della racchetta e la velocità con cui si muove la pallina. Esiste quindi una sezione in cui viene definita ciascuna variabile, compreso il punteggio e le varie coordinate. Ogni volta che il dispositivo viene acceso, sullo schermo appare l'immagine di una palla e del testo, insieme a una piccola sigla che è definita in precedenza nel codice. Una volta avviato il gioco, vengono creati due timer, uno che aggiorna la racchetta e l'altro che aggiorna la palla. Ogni volta che la posizione della palla si aggiorna, le sue coordinate vengono controllate per assicurarsi che non superi il bordo dello schermo o se tocchi una racchetta. Ogni volta che rimbalza, il suo asse x o y viene invertito e viene riprodotto un piccolo tono. Guarda il video all'inizio di questo articolo per vedere come funziona il gioco.
Passaggio 6: giocare a Pong
Il nome del gioco è ottenere il punteggio più basso possibile. Non c'è limite di tempo, quindi è molto divertente e persino induce alla trance. Tutto ciò che è necessario è premere uno dei due pulsanti per spostare la racchetta verso l'alto o verso il basso. È anche possibile aggiungere un modo per memorizzare il punteggio più alto utilizzando l'EEPROM di Arduino.
Consigliato:
Crea la tua console di gioco retrò portatile!che è anche un tablet Win10!: 6 passaggi (con immagini)
Crea la tua console di gioco retrò portatile!……che è anche un tablet Win10!: In questo progetto ti mostrerò come creare una console di gioco retrò portatile che può essere utilizzata anche come tablet Windows 10. Consisterà in un 7" LCD HDMI con touchscreen, un SBC LattePanda, un PCB di alimentazione PD USB di tipo C e alcuni altri complementi
Console di gioco portatile Raspberry Pi Zero fai da te: 6 passaggi (con immagini)
Console di gioco portatile Raspberry Pi Zero fai-da-te: in questo progetto ti mostrerò come ho utilizzato un Raspberry Pi Zero, batterie NiMH, un circuito di protezione da sovraccarico fatto in casa, un lcd retrovisore e un amplificatore audio per creare una console di gioco portatile che può giocare giochi retrò. Iniziamo
Console di gioco portatile ESP32: 21 passaggi (con immagini)
Console di gioco portatile ESP32: queste istruzioni mostrano come utilizzare ESP32 e ATtiny861 per creare una console di gioco emulatore NES
Console portatile con controller wireless e sensori (Arduino MEGA e UNO): 10 passaggi (con immagini)
Console portatile con controller e sensori wireless (Arduino MEGA e UNO): Cosa ho usato:- Arduino MEGA- 2x Arduino UNO- Adafruit 3.5" Touchscreen TFT 320x480 HXD8357D- Buzzer- Altoparlante 4Ohm 3W- Luci LED 5mm- Stampante Ultimaker 2+ con filamento PLA nero- Lasercutter con legno MDF- Vernice spray nera (per il legno)- 3x nRF24
Supporto/dispositivo di raffreddamento portatile semplice, economico e portatile: 9 passaggi (con immagini)
Supporto / dispositivo di raffreddamento portatile semplice, economico e portatile: questo è un progetto super facile e a basso costo che chiunque può fare. Questo supporto / dispositivo di raffreddamento per laptop può essere realizzato per qualsiasi dimensione o laptop di qualsiasi marca (ho realizzato il mio per un MacBook da 13,3 pollici)