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

  • Arduino IDE

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

Detalii Implemetare

Rezultate obtinute

  • Pentru inceput pe ecran este afisat numele jocului.

  • Jucatorul este pus sa aleaga cu ce doreste sa joace.

  • 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 careul de joc, apoi se marcheaza casute pana cand cineva castiga sau pana se ajunge la egalitate.

  • 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 mai 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

  • TBD

Jurnal

Bibliografie/Resurse

pm/prj2021/agrigore/joc_x_si_0.1622416985.txt.gz · Last modified: 2021/05/31 02:23 by irina.grigore0702
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0