This is an old revision of the document!


Mario Game

Introducere

Prezentarea pe scurt a proiectului vostru:

  • Realizarea unui joc cu un joystick
  • Fiecare dintre noi am jucat ceva asemanator cand eram mici: nostalgia vibes.
  • Utilitatea acestui proiect consta in oportunitatea de a invata, de a pune in practica si de a programa un arduino uno in scopul implementarii unui joc

Descriere generală

Proiectul va fi dezvoltat pe o placuta compatibila Arduino UNO. Acesta va avea ca interfata un Modul LCD.

Utilizatorul va putea controla caracterul din joc cu ajutorul unui joystick. Acesta il va misca in sus pentru a se putea apara de blocurile aparute random in scena. Blocurile vor aparea din partea dreapta si se vor deplasa liniar spre stanga.

Pentru a fi mai interactiv vom avea un sunet specific jocurilor de acest fel, impreuna cu un sunet specific pentru fiecare punct castigat si sfarsit de joc, citite de pe un card SD.

O schemă bloc cu toate modulele proiectului vostru, atât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează.

Hardware Design

Piese necesare:

  • Breadboard
  • Arduino uno
  • Modul Joystick
  • Modul LCD
  • Buzzer pasiv
  • Modul cititor carduri SD

Schema hardware:

Schema Arduino:

Software Design

Mediu de dezvoltare :Arduino IDE

Bibliotecile Arduino utilizate in dezvoltarea proiectului:

  • LiquidCrystal_I2C
  • SD
  • SPI
  • TMRpcm

Ca sa imi stochez “ecranul” am folosti doua array-uri de char-uri in care stochez ce am: terrainUpper, terrainLower

Mi-am creat functii pentru initializare a display-ului, pentru a-mi crea caracterul si pentru a putea avansa cu blocurile generate spre stanga.

Pentru a trimite comenzi caracterului de pe display am folosit o intrerupere pentru joystick, care sa nu interfereze cu display-ul. De asemenea am folosit protocoalele SPI pentru utilizarea cardului SD si I2C pentru utilizarea display-ului. Oparte mai grea a fost desenarea caracterului, pentru a putea sa-l afisez in joc.

Blocurile pe care le generez sunt random, atat ca dimensiune cat si ca amplasare(jos/sus).

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2024/fstancu/ioan.predescu.1716473729.txt.gz · Last modified: 2024/05/23 17:15 by ioan.predescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0