This is an old revision of the document!
Implementarea jocului X si 0 cu 2 jucatori reprezentati de cate o culoare diferita. Pozitia se poate alege prin intermediul a 5 butoane, dintre care 4 de selectare a pozitiei si unul de confirmare. La sfarsitul jocului se va afisa castigatorul sau “DRAW” in caz de remiza.
Jocul va fi transpus pe o matrice 8×8 de leduri. Pe ecranul LCD va fi afisat scorul si atunci cand se termina un joc se va afisa castigatorul. Mutarile se vor face cu cele 2 telecomenzi cu infrarosu. Un jucator poate folosi telecomanda doar cand este randul sau.
Lista de piese:
Schema electrica
Descrierea codului aplicaţiei (firmware):
In urma implementarii proiectului am folosit urmatoarele functii:
Se folosesc butoanele de la 1 la 9 de pe telecomanda si butonul OK pentru inceperea unui joc. Fiecare mutare valida (pe pozitii care nu au fost folosite) incrementeaza numarul de mutari totale si se modifica variabila start (poate avea 3 valori: 0 cand nu a inceput jocul, 1 daca urmeaza jucatorul 1 si 2 daca urmeaza jucatorul 2). Functia checkWin se apeleaza dupa ce numarul total de mutari trece de 5 (nu se poate castiga pana atunci). La sfarsitul unui joc se afiseaza pe LCD castigatorul sau “DRAW” in caz de remiza si se reseteaza matricea de LED-uri. De asemenea, se tine cont si de scor, care va fi afisat in timpul jocului. Am ales un model pentru X si unul pentru 0, modele care se vor afisa pe matrice in functie de inputul primit de la telecomanda, pe pozitia corespunzatoare. Inputul de la telecomanda este prelucrat intr-un switch cu toate codurile de care avem nevoie de la ea.
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.