Differences

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

Link to this comparison view

pm:prj2021:dbrigalda:breakout-game [2021/06/04 17:29]
constantin.mihailov [Hardware Design]
pm:prj2021:dbrigalda:breakout-game [2021/06/04 18:06] (current)
constantin.mihailov [Bibliografie/Resurse]
Line 18: Line 18:
 Afișarea grafică a jocului se va face pe ecranul LCD. Controlul platformei se va face cu ajutorul unui accelerometru. Înclinând dispozitivul in direcția dorita, va fi posibila mutarea platformei. Vor fi 3 butoane care se vor folosi pentru a selecta lvl si pentru a modifica setările jocului. LED-urile se vor folosi pentru efecte vizuale. Spre exemplu, culoarea LED-urilor se va schimba in funcție de ce culoare a fost la ultimul obstacol lovit. Buzzer este folosit pentru efecte sonore. Afișarea grafică a jocului se va face pe ecranul LCD. Controlul platformei se va face cu ajutorul unui accelerometru. Înclinând dispozitivul in direcția dorita, va fi posibila mutarea platformei. Vor fi 3 butoane care se vor folosi pentru a selecta lvl si pentru a modifica setările jocului. LED-urile se vor folosi pentru efecte vizuale. Spre exemplu, culoarea LED-urilor se va schimba in funcție de ce culoare a fost la ultimul obstacol lovit. Buzzer este folosit pentru efecte sonore.
 {{ :​pm:​prj2021:​dbrigalda:​sb_breakout_game4.jpg?​direct |}} {{ :​pm:​prj2021:​dbrigalda:​sb_breakout_game4.jpg?​direct |}}
-}+
 ===== Hardware Design ===== ===== Hardware Design =====
 ** Lista de componente:​** ** Lista de componente:​**
Line 34: Line 34:
 {{ :​pm:​prj2021:​dbrigalda:​bg_schema3.png?​direct |}} {{ :​pm:​prj2021:​dbrigalda:​bg_schema3.png?​direct |}}
  
-Accelerometru este folosit pentru a controla ​butonul ​din joc. Inclinand dispozitivul in dreapta/​stanga se va misca si platforma.+Accelerometru este folosit pentru a controla ​platforma ​din joc. Inclinand dispozitivul in dreapta/​stanga se va misca si platforma.  
 + 
 +LED-urile isi schimba culoarea pe culoarea obstacolului distrus. 
 + 
 +Buzzer face zgomote specifice la distrugerea obstacolelor,​ cand se atinge de platforma, cand se pierde o viata sau cand se schimba nivelul jocului.
  
  
-LED-urile isi schimba culoarea pe culoarea obstacolului distrus. Buzzer produce zgomote specifice la distrugerea obstacolelor,​ cand se atinge de platforma, cand se pierde o viata sau cand se schimba nivelul jocului. 
 Am folosit 3 butoane: Am folosit 3 butoane:
-* Butonul din stanga schimba nivelul jocului +  ​ Butonul din stanga schimba nivelul jocului 
-* Butonul din mijloc incepe miscarea bilei (Cand se incepe jocul si bila se afla pe platforma) +   Butonul din mijloc incepe miscarea bilei (cand se incepe jocul si bila se afla pe platforma) 
-* Butonul din dreapta stange/​aprinde LED-urile+   Butonul din dreapta stange/​aprinde LED-urile
  
  
Line 49: Line 52:
  
 Am separat codul in 5 fisiere: Am separat codul in 5 fisiere:
-* game - in fisierul acesta se executa setup() si loop() si se apeleaza functii din celelalte fisiere. +  ​ game - in fisierul acesta se executa setup() si loop() si se apeleaza functii din celelalte fisiere. 
-* utils - aici sunt functii care implementeaza logica si fizica jocului +   utils - aici sunt functii care implementeaza logica si fizica jocului 
-* accelerometer_utils - functiile din acest fisier se ocupa cu citirea datelor de la accelerometru. +   accelerometer_utils - functiile din acest fisier se ocupa cu citirea datelor de la accelerometru. 
-* LCD_utils - aici sun functii foosite pentru a cotrola LCD. +   LCD_utils - aici sun functii foosite pentru a cotrola LCD. 
-* levels - aici sunt stocate array-uri cu datele nivelelor jocurilor si functii ajutatoare.+   levels - aici sunt stocate array-uri cu datele nivelelor jocurilor si functii ajutatoare.
  
 === Biblioteci utilizate === === Biblioteci utilizate ===
 Pentru implementarea proiectului am folosit 3 biblioteci externe pentru controlul LCD-ului: Pentru implementarea proiectului am folosit 3 biblioteci externe pentru controlul LCD-ului:
-* SPI.h +  ​ SPI.h 
-* Adafruit_GFX.h +   Adafruit_GFX.h 
-* Adafruit_ST7735.h+   Adafruit_ST7735.h
  
 === Reguli joc === === Reguli joc ===
Line 72: Line 75:
  
 {{ :​pm:​prj2021:​dbrigalda:​bg_4_1.png?​direct |}} {{ :​pm:​prj2021:​dbrigalda:​bg_4_1.png?​direct |}}
 +
 +=== Demo ===
 +
 +[[https://​www.youtube.com/​watch?​v=aPIhUY1-qU0|{{:​pm:​prj2021:​dbrigalda:​bg_5_1.png?​nolink&​600|}}]]
 +
 ===== Concluzii ===== ===== Concluzii =====
-TODO+Acest proiect m-a ajutat sa inteleg mai bine cum se face legatura intre hardware si software. 
 +Avand multe componente, am avut nevoie sa aranjez toate componente astfel incat dispozitivul final sa fie compact si usor de utilizat. La finalul proiectului cred ca am reusit sa ating toate obiectivele propuse. S-a primit un dispozitiv cu un joculet complet functional. ​
 ===== Download ===== ===== Download =====
 {{:​pm:​prj2021:​dbrigalda:​project.zip|}} {{:​pm:​prj2021:​dbrigalda:​project.zip|}}
-===== Jurnal ===== +
-  * 25.04.2021 - Crearea paginii de wiki.+
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
-TODO+Link-uri catre bibliotecile externe pentru cotrolul LCD-ului: 
 +     * https://​github.com/​adafruit/​Adafruit-ST7735-Library 
 +     * https://​github.com/​adafruit/​Adafruit-GFX-Library 
 +     * https://​github.com/​arduino/​ArduinoCore-avr/​tree/​master/​libraries/​SPI 
  
 Documentația în format <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​PDF</​a></​html>​ Documentația în format <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​PDF</​a></​html>​
  
pm/prj2021/dbrigalda/breakout-game.1622816948.txt.gz · Last modified: 2021/06/04 17:29 by constantin.mihailov
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