This is an old revision of the document!
Joc X si 0
Introducere
Tema proiectului consta in implementarea jocului X si 0 pe un ecran LCD cu touchscreen. Am ales aceasta tema deoarece imi doresc sa utilizez notiunile acumulate deja in cadrul laboaratoarelor pentru a realiza un joc cunoscut de toata lumea.
Descriere generala
Jocul este de tipul SinglePlayer. Acesta va juca contra Arduino.
La inceputul jocului, playerul este pus sa aleaga cu ce va juca. In cazul in care alege sa joace cu X acesta va face prima mutare, iar daca alege 0 va astepta ca prima mutare sa fie facuta de catre Arduino.
Jocul va continua pana cand cineva castiga sau pana cand se ajune la remiza. Dupa terminarea jocului exista posibilitatea de a juca din nou, acest lucru facandu-se prin apasarea butonului “Play Again”.
Schema bloc
Hardware Design
Componente:
Nume | Numar |
Arduino Uno | 1 |
Modul LCD SPI de 2.8'' cu Touchscreen | 1 |
Breadboard | 1 |
Rezistente 2.2kOhm | 7 |
Rezistente 5.1kOhm | 7 |
Fire | 25 |
Conectare ecran LCD cu Touchscreen
Am conectat GND si VCC de pe ecran la pinii GND, respectiv 5V de pe Arduino, iar restul pinilor i-am conenctat astfel:
CLK → pinul 13
MISO → pinul 12
MOSI → pinul 11
CS1 → pinul 10
DC → pinul 9
RES → pinul 8
CS2 → pinul 7
Software Design
Mediul de dezvoltare
Librarii:
SPI.h - librarie pentru comunicare SPI
Adafruit_GFX.h - librarie pentru desenarea pe ecran
Adafruit_ILI9341.h - librarie pentru ecran tft
XPT2046_Touchscreen.h - librarie pentru touchscreen
Rezultate obtinute
Daca playerul alege 0 atunci pe ecran va fi afisat primul mesaj, adica Arduino va incepe jocul, iar daca alege X, atunci va fi afisat cel de-al doilea mesaj.
Este afisat mesajul “GAME OVER”, alaturi de catigator, sau mesajul “DRAW” in caz de egalitate. De asemenea, exista posibilitatea de a relua jocul apasand pe butonul “Play Again”.
Concluzii
Din punctul meu de vedere, acest proiect a fost unul interesant, din urma caruia am invatat lucruri noi.
Ca si functionalitati suplimentare, poate fi implementat un algoritm mai inteligent care sa joace, si de asemenea, la jocuri repetate poate fi adaugat un scor care sa contorizeze cate meciuri au fost castigate de fiecare player.
Download
Jurnal
26.04: alegere tema
04.05: comadare piese
14.05: conectarea componentelor
17.05: realizarea soft-ului
29.05: finalizare proiect
30.05: documentatie
Bibliografie/Resurse