This shows you the differences between two versions of the page.
pm:prj2022:dene:retro-game-console [2022/05/27 22:16] alexandru.bejan0708 [Descriere] |
pm:prj2022:dene:retro-game-console [2022/05/27 22:31] (current) alexandru.bejan0708 [Download] |
||
---|---|---|---|
Line 18: | Line 18: | ||
Cand consola va fi pornita se va astepta se vor utiliza 3 butoane pentru a naviga prin meniuri si a schimba diferitele setari ale jocului, precum alegerea numarului de puncte cu care se castiga jocul sau timpul limita al unui joc. Jocul va porni cand este aleasa optiunea de "start". | Cand consola va fi pornita se va astepta se vor utiliza 3 butoane pentru a naviga prin meniuri si a schimba diferitele setari ale jocului, precum alegerea numarului de puncte cu care se castiga jocul sau timpul limita al unui joc. Jocul va porni cand este aleasa optiunea de "start". | ||
- | Odata inceput jocul, paletle se vor putea controla prin miscarea unor palete fizice de ping pong in sus si in jos, folosind 2 senzori de distanta, unul pentru fiecare jucator. | + | Odata inceput jocul, paletele se vor putea controla prin miscarea unor palete fizice de ping pong in sus si in jos, folosind 2 senzori de distanta, unul pentru fiecare jucator. |
Jocul se va desfasura display-ul de Nokia 5110, fiecare paleta, fiind reprezentata prin dreptunghiuri pozitionate pe verticala, iar mingea printr-un patrat. Scopul jocului este ca mingea sa ajunga in poarta adversarului. | Jocul se va desfasura display-ul de Nokia 5110, fiecare paleta, fiind reprezentata prin dreptunghiuri pozitionate pe verticala, iar mingea printr-un patrat. Scopul jocului este ca mingea sa ajunga in poarta adversarului. | ||
- | In cadrul jocului, informatii precum scorul sau punctajele vor fi afisate pe display-ul LCD. Buzzer-ul va produce diferite sunete, pentru marcarea unui golurilor. | + | In cadrul jocului, informatii precum scorul sau punctajele vor fi afisate pe display-ul LCD. Buzzer-ul va produce sunete, pentru marcarea unui gol. |
==== Schema bloc ==== | ==== Schema bloc ==== | ||
Line 48: | Line 48: | ||
===== Software Design ===== | ===== Software Design ===== | ||
- | Ca mediu de dezvoltare pentru am ales Arduno IDE. | + | Ca mediu de dezvoltare pentru proiect am ales **Arduno IDE**. |
- | Am folosit biblioteca "LiquidCristal_I2C" pentru controlul display-ului LCD 1602 prin I2C. Bibliotecile "SPI.h", "Adafruit_GFX.h" si "Adafruit_PCD8544.h" au fost folosite pentru controlul display-ului de Nokia, prin proticolul SPI. | + | Am folosit biblioteca "LiquidCristal_I2C" pentru controlul display-ului LCD 1602 prin I2C. Bibliotecile "SPI.h", "Adafruit_GFX.h" si "Adafruit_PCD8544.h" au fost folosite pentru controlul display-ului de Nokia, prin protocolul SPI. |
- | Funcționalitatea proiectului a fost spartă in funcții pentru a fi mai usor de uramtit cursul execuției programului. | + | Funcționalitatea proiectului a fost spartă in funcții pentru a fi mai usor de urmarit cursul execuției programului. |
In loop în funcție de valoarea unei variabile de stare a programului, se poate ajunge în funcția responsabila pentru meniul principal, in diversele meniuri pentru setari ale consolei, in modul de joc sau in ecranul de final al jocului. | In loop în funcție de valoarea unei variabile de stare a programului, se poate ajunge în funcția responsabila pentru meniul principal, in diversele meniuri pentru setari ale consolei, in modul de joc sau in ecranul de final al jocului. | ||
Line 72: | Line 72: | ||
</note> | </note> | ||
- | Am reusit sa creez un joc interactiv pentru 2 jucatori, care atrage jucatorii prin maniera mai speciala de control prin miscarea paletelor de ping pong prin aer. De asemenea, am reusit sa combin toate componentele intr-un carcasa care il fac cat de cat portabil si include are si rolul de suport pentru paletele de ping pong. | + | Am reusit sa creez un joc interactiv pentru 2 jucatori, care atrage jucatorii prin maniera mai speciala de control prin miscarea paletelor de ping pong prin aer. De asemenea, am reusit sa combin toate componentele intr-o carcasa, care face jocul mai usor de transporat si are si rolul de suport pentru paletele de ping pong. |
===== Concluzii ===== | ===== Concluzii ===== | ||
- | Mi s-a parut foarte interesant acest proces prin care am putut sa creez o miniconsola de jocuri. Cu toate acestea, daca ar fi sa o iau de la inceput, nu stiu daca as mai incerca sa fac alt joc deoarece odata cu marirea complexitatii s-au simtiti limitarile hardware ale arduinio-ului uno, fiind destul de dificil sa creez o experienta fluida la final. | + | Mi s-a parut foarte interesant acest proces prin care am putut sa creez o miniconsola de jocuri. Cu toate acestea, daca ar fi sa o iau de la inceput, nu stiu daca as mai incerca sa fac alt joc deoarece odata cu marirea complexitatii am resimtiti limitarile hardware ale arduinio-ului uno, fiind destul de dificil sa creez o experienta fluida la final. |
===== Download ===== | ===== Download ===== | ||
- | <note warning> | + | Fisierele folosite in cadrul proiectului: {{:pm:prj2022:dene:bejan_alex_proiect_pm.zip| Arhiva Proiect}} |
- | 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**. | + | |
- | </note> | + | |
===== Jurnal ===== | ===== Jurnal ===== |