This shows you the differences between two versions of the page.
pm:prj2021:avaduva:flappybird [2021/06/02 17:25] mbistriceanu |
pm:prj2021:avaduva:flappybird [2021/06/02 17:58] (current) mbistriceanu |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Joc Flappy Bird====== | ||
Autor: Bistriceanu Marinela Adelina | Autor: Bistriceanu Marinela Adelina | ||
- | Grupa: 333-CC | + | Grupa: 333CC |
===== Introducere ===== | ===== Introducere ===== | ||
Line 10: | Line 9: | ||
Prezentarea pe scurt a proiectului: | Prezentarea pe scurt a proiectului: | ||
- | Implementarea jocului Flappy Bird cu afisaj pe un ecran LCD folosind un buton care controleaza miscarile pasarii. + buzzer pentru redare audio La terminarea jocului, va fi emis un sunet. | + | * Proiectul consta in implementarea jocului Flappy Bird folosind o placuta Arduino si un ecran LCD grafic 2004 cu I2C integrat. |
+ | * Interactiunea cu jocul va fi facuta printr-un buton care controleaza miscarile pasarii. | ||
+ | * Am folosit un buzzer pentru redare audio. La terminarea jocului, va fi emis un sunet. | ||
+ | * Ideea proiectului a venit din dorinta de a implementa un joc usor si cu un posibil final fericit pe un dispozitiv cu care se pot juca si copiii. | ||
+ | * Consider ca este util pentru a experimenta lucrul cu funcționalitatile oferite de Arduino si in acelasi timp este o modalitate de destindere si relaxare. | ||
===== Descriere generală ===== | ===== Descriere generală ===== | ||
+ | Jocul va fi controlat printr-un buton, iar de fiecare data cand pasarea trece de obstacol, se va modifica scorul pe display LED si se va activa buzzer-ul in caz contrar (cand este game over), urmat de mesajul "YOU LOST!" si scorul obtinut. | ||
**SCHEMA BLOC** | **SCHEMA BLOC** | ||
+ | |||
{{:pm:prj2021:avaduva:flappybird_schemabloc.png?200|}} | {{:pm:prj2021:avaduva:flappybird_schemabloc.png?200|}} | ||
+ | |||
+ | |||
+ | |||
**SHEMA ELECTRICA** | **SHEMA ELECTRICA** | ||
+ | |||
{{:pm:prj2021:avaduva:flappyschema.png?200|}} | {{:pm:prj2021:avaduva:flappyschema.png?200|}} | ||
Line 41: | Line 51: | ||
</note> | </note> | ||
- | Conectare lcd la placa GND→GND VCC→ VCC SDA→A4 SCL→A5 | + | * Conectare lcd la placa GND→GND, VCC→ VCC, SDA→A4, SCL→A5 |
- | Conectare buton 2 fire, unul la GND si unul la pinul 2 de pe placa | + | * Conectare buton 2 fire, unul la GND si unul la pinul 2 de pe placa |
+ | * Conectare buzzer 3 fire GND, 3.3V si pinul 3 | ||
===== Software Design ===== | ===== Software Design ===== | ||
- | * Proiectul a fost realizat folosind ca unic mediu de dezvoltare Arduino IDE, iar sursa se regaseste in pagina. | + | * Proiectul a fost realizat folosind ca unic mediu de dezvoltare Arduino IDE, iar sursa se regaseste in pagina. |
- | * Pentru a putea manipula ecranul lcd am folosit biblioteca LiquidCrystal_I2C.h. | + | * Pentru a putea manipula ecranul lcd am folosit biblioteca LiquidCrystal_I2C.h. |
- | * Am facut totul in interiorul loop-ului si a setup-ului. Am doar o functie care se apeleaza la apasarea butonului (intrerupere exterioara). | + | * Am facut totul in interiorul loop-ului si a setup-ului. Am doar o functie care se apeleaza la apasarea butonului (intrerupere exterioara). |
- | * Obstacolele le-am creat prin printarea pe lcd a caracterului ‘X’ de-a lungul axei Y, lasand doar un loc pentru a putea trece Flappy Bird-ul. | + | * Obstacolele le-am creat prin printarea pe lcd a caracterului ‘X’ de-a lungul axei Y, lasand doar un loc pentru a putea trece Flappy Bird-ul. |
- | * Pentru crearea Flappy-ului, cat si a monedei, am activat acele pozitii din pixel pentru a reda ‘imaginea’ vruta. | + | * Pentru crearea Flappy-ului, cat si a monedei, am activat acele pozitii din pixel pentru a reda ‘imaginea’ dorita. |
Line 70: | Line 81: | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
- | * Desi la inceput am fost putin sceptica in legatura cu acest proiect, intrucat partea de hardware nu a fost niciodata punctul meu forte, am ajuns sa lucrez la el de placere. | + | * Desi la inceput am fost putin sceptica in legatura cu acest proiect, am ajuns sa lucrez la el de placere. |
- | * Am putut sa pun in practica unele cunostinte obtinute la Proiectarea cu microprocesoare dar si sa imi amintesc cateva notiuni din Electronică digitală. | + | * Proiectul nu mi-a dat batai de cap. Am incercat sa pastrez hardwareul si codul destul de ordonate. Am reusit sa realizez tot ce mi-am propus. |
- | * In final a fost una din putinele teme la care am avut posibilitatea sa fiu creativa, fiind constransa doar de alegerile componentelor si cred ca singura tema unde am putut sa facem ceva fizic. | + | * Am putut sa pun in practica unele cunostinte obtinute la Proiectarea cu microprocesoare. |
+ | * In concluzie, pot sa spun ca a fost o experienta placuta si interesanta sa lucrez cu Arduino UNO si a fost interesant pentru ca am putut sa facem un proiect fizic. | ||
- | ===== Download ===== | ||
- | |||
- | <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 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 ===== |
25 aprilie 2021: | 25 aprilie 2021: | ||
- | * alegere tema proiect | + | * alegere tema proiect |
- | * scriere introducere | + | * scriere introducere |
- | * descriere generala (impreuna cu schema bloc) | + | * descriere generala (impreuna cu schema bloc) |
- | * completarea listei cu componentele hardware | + | * completarea listei cu componentele hardware |
23 - 25 mai 2021: | 23 - 25 mai 2021: | ||
- | * scrierea codului | + | * scrierea codului |
- | * testarea si repararea eventualelor erori | + | * testarea si repararea eventualelor erori |
27 mai 2021: | 27 mai 2021: | ||
- | * construire schema electrice | + | * construire schema electrice |
2 iunie 2021: | 2 iunie 2021: | ||
- | * descriere software design | + | * descriere software design |
- | * completare rezultate obtinute | + | * completare rezultate obtinute |
- | * concluzii | + | * concluzii |
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
+ | * <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | ||
- | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">Export to PDF</a></html> | + | * {{:pm:prj2021:avaduva:arhiva_cod.zip|}} |