Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2026:ciprian.popescu0411:vlad_mihai.enea [2026/05/13 16:02]
vlad_mihai.enea [Software Design]
pm:prj2026:ciprian.popescu0411:vlad_mihai.enea [2026/05/13 16:42] (current)
vlad_mihai.enea [Software Design]
Line 3: Line 3:
  
     * Proiectul consta in implementarea unui joc de tip Pong pentru doi jucatori utilizand o placa de dezvoltare ATmega328P Xplained Mini, un display OLED 128x64 si module LED pentru feedback vizual. Fiecare jucator controleaza o paleta prin intermediul a doua butoane, unul pentru deplasarea in sus si unul pentru deplasarea in jos. Scopul jocului este de a lovi mingea si de a inscrie puncte impotriva adversarului.     * Proiectul consta in implementarea unui joc de tip Pong pentru doi jucatori utilizand o placa de dezvoltare ATmega328P Xplained Mini, un display OLED 128x64 si module LED pentru feedback vizual. Fiecare jucator controleaza o paleta prin intermediul a doua butoane, unul pentru deplasarea in sus si unul pentru deplasarea in jos. Scopul jocului este de a lovi mingea si de a inscrie puncte impotriva adversarului.
-===== Descriere ​generală ​=====+===== Descriere ​generala ​=====
  
  
Line 54: Line 54:
 | Breadboard | GND microcontroller -> bara GND breadboard | | Breadboard | GND microcontroller -> bara GND breadboard |
  
-      *Breadboard-ul este folosit pentru distribuirea conexiunii de masa catre butoane, buzzer si modulele LED. Display-ul OLED este conectat direct la microcontroller deoarece foloseste interfata I2C, prin pinii PC4 si PC5. Butoanele sunt configurate in cod cu INPUT_PULLUP,​ motiv pentru care pinul de mijloc al modulelor KY-004 ramane neconectat, iar apasarea butonului conecteaza pinul de semnal la GND.+Breadboard-ul este folosit pentru distribuirea conexiunii de masa catre butoane, buzzer si modulele LED. Display-ul OLED este conectat direct la microcontroller deoarece foloseste interfata I2C, prin pinii PC4 si PC5. Butoanele sunt configurate in cod cu INPUT_PULLUP,​ motiv pentru care pinul de mijloc al modulelor KY-004 ramane neconectat, iar apasarea butonului conecteaza pinul de semnal la GND.
  
-{{:​pm:​prj2026:​ciprian.popescu0411:​milestone_hardware_vlad.jpeg?​500|}}+{{:​pm:​prj2026:​ciprian.popescu0411:​milestone_hardware_vlad.jpeg?​300|}}
 ===== Software Design ===== ===== Software Design =====
 +
 +      * Demo joc: https://​youtu.be/​aooiB0Amov8?​feature=shared
 +      * github: https://​github.com/​vled04/​PONG-GAME-PM
  
 Proiectul a fost dezvoltat in PlatformIO, folosind framework-ul Arduino pentru placa ATmega328P Xplained Mini. Codul este scris in C++ si foloseste functii specifice Arduino pentru citirea butoanelor, controlul LED-urilor, controlul buzzerului, comunicatia I2C cu display-ul OLED si comunicatia UART prin Serial Monitor. Proiectul a fost dezvoltat in PlatformIO, folosind framework-ul Arduino pentru placa ATmega328P Xplained Mini. Codul este scris in C++ si foloseste functii specifice Arduino pentru citirea butoanelor, controlul LED-urilor, controlul buzzerului, comunicatia I2C cu display-ul OLED si comunicatia UART prin Serial Monitor.
Line 92: Line 95:
 | Adafruit_SSD1306.h | Controlul display-ului OLED SSD1306 | | Adafruit_SSD1306.h | Controlul display-ului OLED SSD1306 |
 | math.h | Functii matematice pentru calculul directiei bilei | | math.h | Functii matematice pentru calculul directiei bilei |
-===== Rezultate Obţinute ===== 
  
-<note tip> 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. 
-</​note>​ 
  
 ===== Concluzii ===== ===== Concluzii =====
  
-===== Download ===== +      *Pentru PM FAIR sa cumpar o cutie din plastic si o sa aranjez frumos toate componentele pentru a fi si frumos vizual
- +
-<note warning>​ +
-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 ​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**. +
-</​note>​ +
- +
-===== Jurnal =====+
  
-<note tip> 
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. 
-</​note>​ 
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
pm/prj2026/ciprian.popescu0411/vlad_mihai.enea.1778677362.txt.gz · Last modified: 2026/05/13 16:02 by vlad_mihai.enea
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