Am ales sa implementez jocul X si 0 pe un ecran LCD pentru proiectul la PM.
Va avea doi jucatori care vor actiona in ture si vor completa cate o casuta dintr-o matrice 3×3 cu simbolul lor specific. Selectia casutei
se va face folosind 4 butoane (up, down, left, right) si selectia unei casute cu un al 5-lea buton care va si ceda tura celuilalt jucator.
Schema bloc a proiectului:
Componente de input: butoane
Componente de output: LCD
Codul jocului este scris in C folosind ca IDE Visual Studio Code. Am folosit o biblioteca gasita pe github pentru ecranul LCD Nokia 5110. Laboratorul mi-a fost de folos in majoritatea proiectului, de la tool-urile de dezvoltare bootloaderHID pana la aranjarea butoanelor si functionalitatea microcontroller-ului. Am compilat codul cu avr-gcc si l-am incarcat pe placa folosind bootloaderHID.
Jocul se comporta ca un X si O obisnuit. Selectia casutei are culorile inversate. Jocul este turn-based, jucatorii navigand
harta 3×3 si apasa butonul de select pentru a marca o casuta. Jocul tine scorul pana cand cineva ajunge la 10, fiind declarat castigator.
La fiecare iteratie a while-ului se verifica apasarea vreunui buton si se fac modificarile necesare in cazul unei apasari valide, dupa
care se trimite imaginea la render.
Am invatat multe lucruri de pe urma acestui proiect, majoritatea fiind legate de hardware si cum se leaga componentele acestea de partea
de software. A fost o experienta foarte buna.
Am atasat arhiva proiectului.
gmp_pm2019.zip
25.04 - Finalizarea PCB.
5.05 - Finalizare schema electrica.
23.05 - Finalizarea componentei software.