Dino Game
Introducere
Jocul Dino pe Arduino:
proiectul implementează jocul Chrome Dino pe o placă Arduino (folosind un ecran LCD, se vor simula acțiunile de joc, cum ar fi săriturile peste obstacole)
scopul principal este de a crea o versiune “portabila” a jocului clasic Chrome Dino, oferind o experiență de joc interactivă și distractivă
proiectul poate fi extins pentru a include mai multe caracteristici și provocări, precum și pentru a integra tehnici avansate de control și feedback
ideea a pornit din dorința de a transforma un joc virtual într-o experiență tangibilă, utilizând platforma Arduino
proiectul poate fi util atat pentru mine cat si pentru ceilalti deoarece reprezinta o sursă de divertisment și provocare pentru cei pasionați de jocuri și electronică, dezvoltand totodata si abilitățile de programare, electronică și design
Descriere generală
Schema bloc
Placa Arduino: Controleaza toate componentele hardware.
Butonul: Trimite semnale catre placa Arduino pentru a controla jocul.
Senzor feedback: Ofera feedback utilizatorului dupa efectuarea unei comenzi (apasarea unui buton).
Ecran LCD: Afișează scorul jocului și alte informații relevante.
Cod Arduino: Controlează interacțiunea dintre componentele hardware și implementează logica jocului.
Biblioteci: Oferă funcții predefinite pentru a facilita programarea.
Hardware Design
Lista de piese:
Breadboard 830 puncte
Arduino Nano
LED 5mm
LCD I2C
Push button
Fire
Rezistenta 220Ω
Schema electrica:
Circuit design:
Hardware:
Software Design
Mediul de dezvoltare folosit
Librarii
Cod
definirea constantelor pentru elementele jocului (PLAYER, EMPTY, CACTUS) și pinii pentru LED și buton
definirea caracterelor personalizate pentru LCD: frame dinozaur picior stang, frame dinozaur picior drept, spațiu gol, cactus.
un array world stochează starea lumii jocului (jucător, obstacole, spațiu gol).
funcția run() gestionează logica jocului (obstacole, mișcare, coliziuni)
funcția update() actualizează starea jocului (scor, verificare game over, animație jucător)
variabila state și funcția call_function() gestionează întreruperile butonului (LED, salt)
variabila score ține evidența scorului jucătorului
gestionarea logicii in loop() si a apasarii butonului:
bucla loop() afișează mesajul de start și așteaptă apăsarea butonului.
odată apăsat, se gestionează logica jocului (actualizare, afișare, salt).
Rezultate Obţinute
Apasare buton si saritura
Concluzii
Crearea jocului Dino Game a fost o experiență plăcută și educativă. Este un proiect excelent pentru cei care vor să se familiarizeze cu Arduino și programarea pe placute.
Download
Arhiva poate fi descarcata: aici.
Jurnal
18.04.2024 alegerea proiectului
3.05.2024 schema bloc, circuit design
10.05.2024 achiziționare piese
16.05.2024 implementare hardware
23.05.2024 implementare software
Bibliografie/Resurse