This shows you the differences between two versions of the page.
pm:prj2021:avaduva:flappybird [2021/05/12 11:44] 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 fiecare apasare a butoanului, 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ă ===== | ||
- | <note tip> | + | 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. |
- | O schemă bloc cu toate modulele proiectului vostru, atât software cât şi hardware însoţită de o descriere a acestora precum şi a modului în care interacţionează. | + | |
- | </note> | + | **SCHEMA BLOC** |
{{:pm:prj2021:avaduva:flappybird_schemabloc.png?200|}} | {{:pm:prj2021:avaduva:flappybird_schemabloc.png?200|}} | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | **SHEMA ELECTRICA** | ||
+ | |||
+ | |||
+ | {{:pm:prj2021:avaduva:flappyschema.png?200|}} | ||
Line 39: | 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. | ||
+ | * 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). | ||
+ | * 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’ dorita. | ||
- | <note tip> | ||
- | Descrierea codului aplicaţiei (firmware): | ||
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | ||
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | ||
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | ||
- | * (etapa 3) surse şi funcţii implementate | ||
- | |||
- | </note> | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
- | <note tip> | + | {{:pm:prj2021:avaduva:im1.jpeg?200|}} |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | |
- | </note> | + | |
- | ===== Concluzii ===== | + | {{:pm:prj2021:avaduva:im2.jpeg?200|}} |
- | ===== Download ===== | + | {{:pm:prj2021:avaduva:im3.jpeg?200|}} |
- | <note warning> | + | {{:pm:prj2021:avaduva:im4.jpeg?200|}} |
- | 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ă ;-). | + | |
+ | {{:pm:prj2021:avaduva:im5.jpeg?200|}} | ||
+ | |||
+ | {{:pm:prj2021:avaduva:im6.png?200|}} | ||
+ | |||
+ | {{:pm:prj2021:avaduva:im7.png?200|}} | ||
+ | |||
+ | ===== Concluzii ===== | ||
+ | * Desi la inceput am fost putin sceptica in legatura cu acest proiect, am ajuns sa lucrez la el de placere. | ||
+ | * 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. | ||
+ | * 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. | ||
- | 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.04.2021: Prima editare a acestei pagini | + | 25 aprilie 2021: |
+ | * alegere tema proiect | ||
+ | * scriere introducere | ||
+ | * descriere generala (impreuna cu schema bloc) | ||
+ | * completarea listei cu componentele hardware | ||
+ | 23 - 25 mai 2021: | ||
+ | * scrierea codului | ||
+ | * testarea si repararea eventualelor erori | ||
+ | 27 mai 2021: | ||
+ | * construire schema electrice | ||
+ | 2 iunie 2021: | ||
+ | * descriere software design | ||
+ | * completare rezultate obtinute | ||
+ | * 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|}} |