This is an old revision of the document!


Arduino Pong Game

Introducere

Proiectul meu constă într-un joc de Pong implementat pe o placă Arduino, în care joc împotriva calculatorului. Scopul jocului este să împing mingea către partea opusă și să evit ca ea să treacă de marginea terenului meu.

Ideea mea a fost de a crea un joc simplu și distractiv care să ilustreze potențialul plăcilor de dezvoltare Arduino. Am dorit să demonstrez că aceste plăci nu sunt limitate doar la proiecte tehnice, ci pot fi folosite și pentru a crea jocuri.

Consider că jocul meu de Pong implementat pe Arduino este util pentru ceilalți pentru că poate fi folosit ca sursă de distracție, dar și ca mod de a învăța și de a înțelege mai bine programarea în limbajul Arduino. De asemenea, este util și pentru mine, deoarece îmi oferă oportunitatea de a-mi dezvolta abilitățile de programare și de a explora potențialul plăcilor de dezvoltare Arduino.

Descriere generală

În jocul de Pong implementat pe Arduino, piesele implicate interacționează astfel:

Arduino Uno - este creierul jocului de Pong, gestionând toate intrările și ieșirile din joc și procesând logica acestuia. Este conectat la celelalte componente prin intermediul pinilor digitali și analogici.

Push Buttons - cele două butoane sunt utilizate pentru a controla mișcarea paletei de joc. Butonul stâng este folosit pentru a muta paleta în sus, iar butonul drept pentru a muta paleta în jos. Butonul este conectat la pinii digitali ai Arduino Uno, iar acesta trimite semnale către placă atunci când un buton este apăsat.

Color OLED - este afișajul jocului, care afișează mingea, paletele și scorul jocului. Este conectat la pinii digitali și analogici ai Arduino Uno, care trimite semnale de control pentru a afișa informațiile dorite.

În timpul jocului, Arduino Uno primește semnale de la butoanele Push Button pentru a muta paleta de joc în sus și în jos și detectează coliziunile mingii cu paletele de joc. Arduino Uno calculează, de asemenea, scorul jocului și actualizează afișajul Color OLED în consecință. În cele din urmă, Arduino Uno utilizează semnalele trimise la Color OLED pentru a afișa informațiile dorite în timpul jocului.

În general, fiecare componentă joacă un rol esențial în funcționarea jocului de Pong pe Arduino și interacțiunea dintre ele este esențială pentru ca jocul să funcționeze corect și să ofere o experiență de joc plăcută.

               +----------------------+
               |       Arduino Uno    |
               |                      |
               +-----------+----------+
                           |
                           |
                           |
            +--------------+-------------+
            |              |             |
            |              |             |
            |              |             |

+————+—-+ +——-+———-+ | Push Button 1 | | Push Button 2 | +—————–+ +——————+

            |                       |
            |                       |
            |                       |

+————+———————–+————–+ | Small Breadboard | +—————————————————+

                           |
                           |
                           |
                        Color OLED

Hardware Design

Aici puneţi tot ce ţine de hardware design:

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

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/prj2023/apredescu/iordache.1683524143.txt.gz · Last modified: 2023/05/08 08:35 by clara.iordache
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