This shows you the differences between two versions of the page.
pm:prj2021:agrigore:flappybird [2021/05/31 09:58] vasile_adrian.micu [Download] |
pm:prj2021:agrigore:flappybird [2021/06/04 04:55] (current) vasile_adrian.micu [Download] |
||
---|---|---|---|
Line 20: | Line 20: | ||
- display LCD | - display LCD | ||
- butoane | - butoane | ||
+ | Conexiuni: | ||
+ | * Accelerometru: | ||
+ | - x->A0 | ||
+ | - Y->A1 | ||
+ | - Z->A2 | ||
+ | - VCC->3,3V | ||
+ | - GND | ||
+ | * LCD: | ||
+ | - Led-:GRND | ||
+ | - Led+:5V | ||
+ | - VCC:3,3V | ||
+ | - GRND:GRND | ||
+ | - CS:10 | ||
+ | - CSK:13 | ||
+ | - CDA:11 | ||
+ | - A0:8 | ||
+ | - RESET:9 | ||
+ | * Butoane: | ||
+ | - Butonul1:2 | ||
+ | - Butonul2:3 | ||
+ | |||
+ | Diagrama: | ||
+ | |||
+ | |||
+ | {{:pm:prj2021:agrigore:micu_vasile_adrian_diagrama_hardware.png|}} | ||
===== Software Design ===== | ===== Software Design ===== | ||
+ | ==== Librarii folosite ==== | ||
+ | * Adafruit_GFX.h | ||
+ | * Adafruit_ST7735.h | ||
+ | * SPI.h | ||
+ | ==== Variabile si defineuri ==== | ||
+ | birdcol[]: o matrice de 8 X 8 care reprezinta pasarea | ||
+ | float GRAVITY=9.8 :acceleratia gravitationala | ||
+ | float JUMP_FORCE=2.15 forta cu care "sare" pasarea | ||
+ | cateva defineuri pentru dimensiuni :ecran(cat e jumatatea lui,dimensiuneazoneu unde se desfasoara animatia), pasare si teava | ||
+ | ==== Functii ==== | ||
+ | - game_init(); | ||
+ | - game_start(); | ||
+ | - game_loop(); | ||
+ | - game_over(); | ||
+ | game_init(): initializeaza variabie globale | ||
+ | game_start():initializeaza ecranul de start si asteapta sa se apase butonul din dreapta (albastru ,cu care se sare) | ||
+ | |||
+ | game_loop():se realizeaza jocul in sine | ||
+ | se realizeaza animatiile: | ||
+ | La Pasare: se umple tot locul unde e pasarea cu culoarea de fundal(cerul=BCKGRDCOL) apoi se deseneaza matricea pasari in noile coordonatele coordonate | ||
+ | La Tevi: se deseneaza teava pe noua pozitie si dupa se sterge rezidul care a ramas unde a fost teava(e inlocuit cu BCKGRDCOL) | ||
+ | parti ale tevilor ce nu sunt pe ecran nu se coloreaza | ||
+ | Functionalitati bonus implementate : | ||
+ | * daca se apasa pe al doilea buton se inverseaza acceleratia gravitationala si JUMP_FORCE; | ||
+ | * Tevile sunt generate random in fun ctie de inputul dat de accelerometru; | ||
+ | * dupa ce pasarea trece de o teava acceleratia gravitationala creste sau scade in functie de inputul dat de accelerometru, dar modulul acceleratiei gravitationale poate fi doar : 9<GRAVITY<10.5 | ||
+ | |||
+ | game_over(): afiseaza ecranul de gameover si asteapta sa se apase butonul de jump | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
+ | |||
+ | |||
+ | {{:pm:prj2021:agrigore:micu_fl1.jpeg|}} | ||
+ | |||
+ | {{:pm:prj2021:agrigore:micu_fl2.jpeg|}} | ||
+ | |||
+ | {{:pm:prj2021:agrigore:micu_fl3.jpeg|}} | ||
+ | |||
+ | {{:pm:prj2021:agrigore:micu_fl4.jpeg|}} | ||
+ | |||
+ | {{:pm:prj2021:agrigore:micu_fl5.jpeg|}} | ||
+ | |||
+ | {{:pm:prj2021:agrigore:micu_fl6.jpeg|}} | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
===== Download ===== | ===== Download ===== | ||
+ | Youtube link: | ||
https://youtu.be/r4IMYMR1bOk | https://youtu.be/r4IMYMR1bOk | ||
- | ===== Jurnal ===== | ||
+ | Arhiva: | ||
+ | {{:pm:prj2021:agrigore:flappy_bird_micu_vasile_adrian_334_cb.zip|}} | ||
+ | ===== Jurnal ===== | ||
+ | L-eam facut pe toate in ultima suta de metrii (un weekend )pentru ca piesele vin greu | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
+ | 1.8" TFT Color Display ST7735 128x160: | ||
+ | https://youtu.be/NAyt5kQcn-A | ||
+ | |||
+ | Accelerometru: | ||
+ | https://youtu.be/Mvn7_Vew12o | ||
+ | |||
+ | |||
+ | |||
<html><a class="media mediafile mf_pdf" href="?do=export_pdf">PDF</a></html> | <html><a class="media mediafile mf_pdf" href="?do=export_pdf">PDF</a></html> |