This is an old revision of the document!
Am implementat popularul joc 2048. Suprafata de joc este reprezentata de o matrice 4 X 4 in care jucatorul trebuie sa uneasca puteri ale lui 2 pentru a ajunge la numarul 2048. Acesta este un joculet simplu si distractiv, dificultatea acestuia crescand odata cu numarul de mutari ale jucatorului.
Schema Bloc
Jucatorul se foloseste de 4 butoane pentru mutarea numerelor, plus de inca un buton pentru a reseta jocul. Placuta Arduino primeste semnale de la butoane, afiseaza matricea de numere pe ecranul OLED si reda sunete la buzzer.
M-am folosit de bibliotecile Adafruit_GFX.h si Adafruit_SSD1306.h pentru a realiza conexiunea si afisarea pe ecranul OLED. Am conectat butoanele si buzzerul la pinii digitali, setand butoanele drept input si activand rezistenta interioara de pull up, iar buzzerul ca output. Afisajul se realizeaza prin desenarea liniilor matricei si a numerelor. Se asteapta ca butoanele sa fie apasate, caz in care se efectueaza functia corespunzatoare. Dupa o mutare se verifica daca s-a castigat jocul (s-a ajuns la 2048) sau s-a pierdut (nu mai exista mutari posibile). Se redau diverse sunete la buzzer, mai precis atunci cand apar noi numere (2 sau 4) in matrice, cand se apasa un buton dar mutarea nu are niciun efect, precum si scurte melodii in caz de castigare sau pierdere a jocului.
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.