Table of Contents

X si O version 2

Introducere

Prezentarea pe scurt a proiectului:

  • Se implementeaza jocul clasic de X si O care presupune completarea unei matrice de dimensiune 3×3 cu caracterele X/O.
  • Proiectul ofera o simulare interactiva a jocului utilizand un LCD.

Descriere generală

Implementarea jocului este de tip multiplayer. Odata cu inceperea jocului, porneste un timer cu timpul alocat rundei respective. Cei doi jucatori completeaza alternativ casutele matricei, deplasandu-se pe ecran cu ajutorul a 4 butoane ce reprezinta directia. Odata selectata pozitia, se va apasa tasta X/O. In cazul in care nu exista niciun castigator pana cand timpul expira sau matricea se populeaza complet, avem remiza.

Hardware Design

Listă de piese:

  • Arduino UNO R3 ATMEGA328P
  • Display 1.8” SPI TFT 128*160
  • Breadboard
  • 6 x butoane - 4 x deplasare, 1 x X, 1 x O
  • Fire
  • Rezistente

Schema electrica

Software Design

Descrierea codului aplicaţiei (firmware):

  • Mediu de dezvoltare - Arduino IDE
  • Librării şi surse 3rd-party - SPI.h, TFT.h
  • Intreruperi hardware - Se foloseste o intrerupere externa care se activeaza la fiecare apasare de buton X/O verificand daca contorul elementelor din matrice a ajuns la 9. In acest caz, variabila is_full devine true si jocul se reseteaza considerandu-se remiza.
  • Intrerupere de timer - Se foloseste un timer care retine durata unei partide. Atunci cand ajunge la 45 secunde, jocul se reseteaza considerandu-se remiza.
  • SPI

Rezultate Obţinute

Concluzii

A fost un proiect interesant in care am implementat pentru prima data atat partea software, cat si hardware. Am invatat sa utilizez functiile specifice bibliotecii TFT, sa asamblez un circuit functional de la zero si sa folosesc notiunile din laboratoare.

Download

crinatararaceh_xsio.zip

Bibliografie/Resurse

Export to PDF