Cuprins:

Consolă portabilă Arduino Pong: 6 pași (cu imagini)
Consolă portabilă Arduino Pong: 6 pași (cu imagini)

Video: Consolă portabilă Arduino Pong: 6 pași (cu imagini)

Video: Consolă portabilă Arduino Pong: 6 pași (cu imagini)
Video: Dorian este speriat de un interlop când face poze 😱🥊🤣 #timisoara #dorianpopa #cluj #bucuresti 2024, Iunie
Anonim
Consolă portabilă Arduino Pong
Consolă portabilă Arduino Pong

DFRobot m-a contactat recent, dorind ca eu să folosesc placa lor specială Arduino Nano și OLED. La început am vrut să creez o bicicletă inteligentă și am construit-o în întregime. Dar, din păcate, Nano a fost prea slab pentru a rula și a stoca schița masivă de care era nevoie. Așa că am decis să revizuiesc unul dintre proiectele mele anterioare, o matrice Neopixel care a rulat un joc Pong. În schimb, am vrut să-l fac portabil, iar un OLED de 1,7 ar face un afișaj perfect.

Lista pieselor:

  • Arduino nano
  • OLED
  • Speaker

Pasul 1: Video

Image
Image

Pasul 2: Proiectarea jocului

Proiectarea jocului
Proiectarea jocului

Pentru acest joc Pong am vrut să-l păstrez relativ simplu, ceea ce însemna algoritmi de padel controlat nocomputer sau algoritmi de reflecție cu minge fantezie. Practic, există o singură paletă pe care un utilizator o poate deplasa în sus sau în jos, iar faptul că mingea se ciocnește cu paleta ar face să se răstoarne vectorul axei sale x. De fiecare dată când mingea este lovită, se aude un sunet. Când dispozitivul de joc este pornit, apare un ecran cu titlul și instrucțiunile jocului. În plus, mama mea a creat o mică melodie tematică care apare în fundal până când este apăsat butonul de sus.

Pasul 3: Proiectarea dispozitivului de jocuri

Proiectarea dispozitivului de jocuri
Proiectarea dispozitivului de jocuri
Proiectarea dispozitivului de jocuri
Proiectarea dispozitivului de jocuri
Proiectarea dispozitivului de jocuri
Proiectarea dispozitivului de jocuri
Proiectarea dispozitivului de jocuri
Proiectarea dispozitivului de jocuri

Programul meu de acces CAD este Fusion 360, așa că am decis să-l folosesc pentru a proiecta dispozitivul meu de joc pong. Am început prin proiectarea fiecărei componente utilizate: un OLED, Arduino Nano și un difuzor, astfel pot vedea exact unde și cum ar trebui să se potrivească fiecare componentă în interiorul carcasei. Am pus apoi Nano și PCB în partea din spate a carcasei și OLED-ul deasupra acestuia. Apoi a fost întrebarea unde să pun difuzorul și butoanele. Am decis că difuzorul de 3W ar putea merge chiar sub ecran (uitându-se la el de sus) și că, de asemenea, a fost necesar să puneți un "grătar" peste difuzor, astfel încât sunetul să nu fie înăbușit. În cele din urmă, am adăugat două butoane în partea stângă pentru a adăuga controale.

Pasul 4: Construirea dispozitivului

Construirea dispozitivului
Construirea dispozitivului
Construirea dispozitivului
Construirea dispozitivului
Construirea dispozitivului
Construirea dispozitivului

Am început prin imprimarea 3D a fiecărei părți, constând din jumătatea inferioară, jumătatea superioară și 2 butoane. Apoi am lipit un antet feminin la 4x6cm și l-am conectat la Nano. Acest lucru nu numai că permite eliminarea cu ușurință a OLED, ci îl ridică și deasupra Arduino Nano. Verificați schema pentru informații de cablare. Apoi am conectat cele două butoane, împreună cu o placă simplă micro USB pentru alimentare. Difuzorul a fost de asemenea atașat și l-a așezat în poziția corectă. Designul My Fusion 360 permite șuruburilor de 3 mm pentru a ține apăsat OLED, difuzorul și conecta cele două jumătăți ale dispozitivului. Dar, trebuia să le fac exacte, așa că am folosit burghiul meu pentru a găuri 8 găuri: 2 pentru difuzor, 2 pentru ecran și 4 dedesubt. Puteți vizita linkul Thingiverse pentru fișiere.

Pasul 5: Programarea jocului

Utilizarea unei interfețe simple a fost vitală pentru a menține programul mic. Am început prin adăugarea mai multor biblioteci: Adafruit_GFX, Adafruit_SSD1351 și biblioteca Arduino Timer. Apoi mi-am definit pinii și culorile, cum ar fi pinii OLED și definițiile culorilor pe 16 biți. În codul meu există, de asemenea, 4 moduri de a schimba modul de joc, cum ar fi schimbarea dimensiunilor paletei și cât de repede se mișcă mingea. Există apoi o secțiune în care este definită fiecare variabilă, inclusiv scorul și diverse coordonate. Ori de câte ori dispozitivul este alimentat cu o imagine a unei mingi și apare un anumit text pe ecran, împreună cu un mic cântec tematic care este definit mai devreme în cod. Odată ce jocul începe, sunt create două temporizatoare, una care actualizează paleta, iar cealaltă actualizează mingea. De fiecare dată când poziția mingii își actualizează coordonatele sunt verificate pentru a vă asigura că nu trece de marginea ecranului sau dacă atinge o paletă. De fiecare dată când ricoșează, axa x sau axa este inversată și se redă un ton mic. Urmăriți videoclipul de la începutul acestei scrieri pentru a vedea cum se joacă jocul.

Pasul 6: Joacă Pong

Joacă Pong!
Joacă Pong!
Joacă Pong!
Joacă Pong!
Joacă Pong!
Joacă Pong!
Joacă Pong!
Joacă Pong!

Numele jocului este de a obține cel mai mic scor posibil. Nu există o limită de timp, deci este foarte plăcută și chiar inducătoare de transă. Tot ce este necesar este să apăsați unul dintre cele două butoane pentru a muta paleta în sus sau în jos. De asemenea, este posibil să adăugați o modalitate de a stoca cel mai mare scor folosind EEPROM-ul Arduino.

Recomandat: