Differences

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

Link to this comparison view

pm:prj2026:victor.stoica0203:ioana_maria.serban [2026/05/06 23:36]
ioana_maria.serban created
pm:prj2026:victor.stoica0203:ioana_maria.serban [2026/05/11 14:55] (current)
ioana_maria.serban
Line 3: Line 3:
 ===== Introducere ===== ===== Introducere =====
  
-Proiectul ​consta in realizarea unui joc simplificat de tip Chicken Invaders folosind placa de dezvoltare ATmega328P-XMINI ​si un display LCD1602. ​Jucatorul controleaza ​nava aflata ​pe linia inferioara ​a ecranului ​si trebuie ​sa elimine inamicii care apar periodic pe ecran.+Proiectul ​constă în realizarea unui joc simplificat de tip Chicken Invaders folosind placa de dezvoltare ATmega328P-XMINI ​și un display LCD1602. ​Jucătorul controlează ​navă aflată ​pe linia inferioară ​a ecranului ​și trebuie ​să elimine inamicii care apar periodic pe ecran.
  
-Scopul proiectului este implementarea unui sistem embedded interactiv care combina ​mai multe concepte studiate la laboratorul de Microprocesoare,​ precum utilizarea timerelor hardware, a intreruperilor, a conversiei analog-digitale (ADC) si a semnalelor PWM.+Scopul proiectului este implementarea unui sistem embedded interactiv care combină ​mai multe concepte studiate la laboratorul de Microprocesoare,​ precum utilizarea timerelor hardware, a întreruperilor, a conversiei analog-digitale (ADC) și a semnalelor PWM.
  
-Consider ​ca acest proiect este util deoarece ​imi ofera posibilitatea de a aplica practic ​notiunile ​studiate ​in laborator ​intr-un proiect interactiv ​si vizual, apropiat de domeniul jocurilor video, folosind resurse hardware limitate specifice sistemelor embedded.+Consider ​că acest proiect este util deoarece ​îmi oferă ​posibilitatea de a aplica practic ​noțiunile ​studiate ​în laborator ​într-un proiect interactiv ​și vizual, apropiat de domeniul jocurilor video, folosind resurse hardware limitate specifice sistemelor embedded.
  
-===== Descriere ​generala ​=====+===== Descriere ​generală ​=====
  
-Arhitectura proiectului este structurata in jurul placii ​de dezvoltare ATmega328P-XMINI. Sistemul este impartit in mai multe module principale:+Arhitectura proiectului este structurată în jurul plăcii ​de dezvoltare ATmega328P-XMINI. Sistemul este împărțit în mai multe module principale:
  
   * Modulul de Input (Control):   * Modulul de Input (Control):
-Permite controlul navei prin intermediul unui potentiometru sau al butoanelorPozitia ​navei este citita ​folosind modulul ADC al microcontrolerului,​ iar actiunile utilizatorului sunt tratate ​folosind GPIO si intreruperi ​externe.+Permite controlul navei prin intermediul unui joystickPoziția ​navei este citită ​folosind modulul ADC al microcontrolerului,​ iar apăsarea joystick-ului este tratată ​folosind GPIO și întreruperi ​externe. Un buton tactil suplimentar este utilizat pentru funcțiile de start, restart și pauză.
  
   * Modulul de Control (Game Engine):   * Modulul de Control (Game Engine):
-Microcontrolerul ​gestioneaza ​logica jocului, ​miscarea ​inamicilor, ​detectia ​coliziunilor,​ actualizarea scorului ​si sincronizarea evenimentelor folosind timere hardware ​si intreruperi ​periodice.+Microcontrolerul ​gestionează ​logica jocului, ​mișcarea ​inamicilor, ​detecția ​coliziunilor,​ actualizarea scorului ​și sincronizarea evenimentelor folosind timere hardware ​și întreruperi ​periodice.
  
   * Modulul de Output:   * Modulul de Output:
-Afisarea ​jocului se realizeaza ​pe un display LCD1602, iar efectele sonore sunt generate cu ajutorul unui buzzer pasiv controlat prin PWM. Optional, ​LED-urile vor fi utilizate ​pentru semnalizarea anumitor ​stari ale jocului (hit, game over etc).+Afișarea ​jocului se realizează ​pe un display LCD1602 ​cu interfață I2C, iar efectele sonore sunt generate cu ajutorul unui buzzer pasiv controlat prin PWM. Un LED RGB va fi utilizat ​pentru semnalizarea anumitor ​stări ​ale jocului (hit, game over, pauză ​etc).
  
-{{schema_bloc.png?700}}+{{schema_bloc_chicken_invaders.png?700}}
  
 ===== Hardware Design ===== ===== Hardware Design =====
Line 28: Line 28:
 Lista de piese: Lista de piese:
  
-  * Placa de dezvoltare ATmega328P-XMINI ​/ Arduino UNO compatibil +  * Placă ​de dezvoltare ATmega328P-XMINI 
-  * Display LCD1602A HD44780 +  * Display LCD1602A HD44780 ​cu modul I2C 
-  * Potentiometru 10K+  * Modul joystick cu buton 
 +  * Buton tactil
   * Buzzer pasiv   * Buzzer pasiv
-  ​* Microintrerupatoare +  * LED RGB 
-  ​* LED-uri +  * Rezistențe ​220R
-  * Rezistente ​220R / 10K+
   * Breadboard   * Breadboard
   * Fire jumper   * Fire jumper
   * Cablu USB   * Cablu USB
  
-Schema ​electrica: TODO+===== Schema ​electrică ===== 
 + 
 +^ Componentă ^ Pin componentă ^ Pin microcontroller ^ 
 +| LCD1602 I2C | SDA | PC4 | 
 +| LCD1602 I2C | SCL | PC5 | 
 +| LCD1602 I2C | VCC | VCC | 
 +| LCD1602 I2C | GND | GND | 
 +| Joystick | VRx | PC0 | 
 +| Joystick | VRy | PC1 | 
 +| Joystick | SW | PD2 | 
 +| Joystick | VCC | VCC | 
 +| Joystick | GND | GND | 
 +| Buzzer pasiv | + | PB1 | 
 +| Buzzer pasiv | - | GND | 
 +| LED RGB | R | PD6 | 
 +| LED RGB | G | PD5 | 
 +| LED RGB | B | PB2 | 
 +| LED RGB | pin comun | GND | 
 +| Buton tactil | semnal | PD3 | 
 +| Buton tactil | al doilea pin | GND |
  
 ===== Software Design ===== ===== Software Design =====
  
-Proiectul va fi implementat folosind limbajul C si va utiliza perifericele hardware ale microcontrolerului:​+Proiectul va fi implementat folosind limbajul C și va utiliza perifericele hardware ale microcontrolerului:​
  
-  * ADC pentru citirea ​inputului analogic+  * ADC pentru citirea ​axelor joystick-ului 
 +  * GPIO / întreruperi externe pentru apăsarea joystick-ului și a butonului tactil
   * Timere hardware pentru game loop   * Timere hardware pentru game loop
   * PWM pentru efecte sonore   * PWM pentru efecte sonore
-  * GPIO pentru ​butoane si LED-uri +  * GPIO pentru ​controlul ​LED-ului RGB 
-  * USART pentru debug si afisarea ​scorului ​in Serial Monitor+  * USART pentru debug și afișarea ​scorului ​în Serial Monitor
  
-===== Rezultate ​Obtinute ​=====+===== Rezultate ​Obținute ​=====
  
 TODO TODO
Line 62: Line 82:
  
   * 29.04.2026 - Alegerea temei   * 29.04.2026 - Alegerea temei
-  * 06.05.2026 - Crearea paginii wiki si definirea structurii proiectului +  * 06.05.2026 - Crearea paginii wiki și definirea structurii proiectului 
-  * 06.05.2026 - Adaugarea ​descrierii generale ​si a schemei bloc+  * 06.05.2026 - Adăugarea ​descrierii generale ​și a schemei bloc 
 +  * 11.05.2026 - Stabilirea configurației hardware și conectarea componentelor
pm/prj2026/victor.stoica0203/ioana_maria.serban.1778099773.txt.gz · Last modified: 2026/05/06 23:36 by ioana_maria.serban
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