This shows you the differences between two versions of the page.
pm:prj2022:alaura:2-player-pong [2022/05/27 19:17] andrei.neagu1612 [Introducere] |
pm:prj2022:alaura:2-player-pong [2022/05/27 19:47] (current) andrei.neagu1612 [Descriere generală] |
||
---|---|---|---|
Line 8: | Line 8: | ||
===== Descriere generală ===== | ===== Descriere generală ===== | ||
- | Am ales sa implementez jocul pong ,jocul are ca scop mentinerea mingiei in spatiul ecranului cu ajutorul a | + | Am ales sa implementez jocul pong, jocul are ca scop mentinerea mingiei in spatiul ecranului cu ajutorul a |
- | doua bari controlate de 2 jucatori,odata ce mingea trece de o bara a unui jucator celalalt jucator primeste un punct | + | doua bari controlate de 2 jucatori, odata ce mingea trece de o bara a unui jucator celalalt jucator primeste un punct |
{{ pm:prj2022:alaura:pmist.png |}} | {{ pm:prj2022:alaura:pmist.png |}} | ||
Line 21: | Line 21: | ||
* arduino uno | * arduino uno | ||
* 4 butoane | * 4 butoane | ||
+ | {{ pm:prj2022:alaura:schemadinberceni.png |}} | ||
===== Software Design ===== | ===== Software Design ===== | ||
Descrierea codului aplicaţiei (firmware): | Descrierea codului aplicaţiei (firmware): | ||
- | verificam daca butonul e apasat,daca e apasat miscam bara playerului corespunzator | + | verificam daca butonul e apasat,daca e apasat miscam bara playerului corespunzator. |
+ | Castiga primul jucator care acumuleaza 8 puncte. | ||
+ | Bibliotecile folosite sunt : | ||
+ | #include <SPI.h> | ||
+ | #include <Wire.h> | ||
+ | #include <TFT.h> | ||
+ | |||
+ | Folosim lcd -ul cu ajutorul functiilor specifice TFTscreen. | ||
+ | Desenam tot ecranul cu negru apoi desenam cu alb barile si mingea. | ||
+ | La fiecare pas tinem cont de coordonatele barilor si a mingiei. | ||
+ | Miscarea mingiei este cauzata de 2 variabile in care am stocat directia acesteia pe axele xoy. | ||
+ | Daca mingea atinge valoarea maxima sau cea minima pe axa OX atunci inmultim valoarea lui direction cu -1,identic pentru axa OY. | ||
+ | Am folosit 4 butoane pentru miscarea barilor astfel:cate 2 butoane pentru fiecare player(unul pentru deplasarea barii la stanga si unul pentru deplasarea barii la dreapta). | ||
+ | Tinem cont de pozitia anterioara a fiecarei componente iar daca aceasta se schimba scriem cu negru | ||
+ | peste pixelii unde obisnuiau sa fie componentele. | ||
+ | |||
https://github.com/Voievodsky/PM/blob/main/cod%20pong%20pm | https://github.com/Voievodsky/PM/blob/main/cod%20pong%20pm | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
{{ pm:prj2022:alaura:terogiomergi.jpg |}} | {{ pm:prj2022:alaura:terogiomergi.jpg |}} | ||
+ | {{ pm:prj2022:alaura:terogiomergi2.jpg |}} | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
- | in concluzie jocul si a indeplinit scopul recreational | + | In concluzie,a fost o experienta placuta unde am putut sa creez un lucru palpabil de care sa ma bucur si care poate ajuta oamneni scop recreational. |
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== |