This is an old revision of the document!


X si O

Nume : Stefan Andreea Bianca

Grupa : 334CB

Introducere

X si O este un joc clasic apreciat de oameni de toate varstele. Este un joc pentru doi jucatori, jucat pe o matrice de 3×3. Scopul jocului este sa fii primul jucător care obține de trei ori simbolul sau într-o linie, fie orizontal, vertical sau diagonal. În acest proiect, vom implementa X si O pe o placă Arduino folosind un LCD, joystick si buton. Jocul va fi afișat pe LCD, iar jucătorii vor folosi butonul si joystickul pentru a face mutările.

Descriere generală

Jucatorii vor utiliza pe rand joystickul pentru a naviga tabla de joc 3×3 si vor folosi butonul pentru a confirma mutarea (dizpozitivul tine cont de numarul rundei si introduce automat simbolul corect). Tabla de joc este verificata la sfarsitul fiecarei runde daca a fost jucata o mutare castigatoare (jucatorul a completat un rand de 3 cu ultima sa mutare) si de asemenea se verifica daca mai exista spatii goale, in cazul in care nu s-a detectat o victorie, iar tabla este plina, partida va fi declarata remiza. La finalul partidei se va afisa un mesaj care corespunde modului de incheiere (jucatorul 1 / 2 a castigat sau a avut loc o remiza).

Hardware Design

Aici puneţi tot ce ţine de hardware design:

Lista de piese

  • Arduino Uno
  • Breadboard
  • LCD
  • Fire de legatura
  • Joystick
  • Buton
  • Rezistente

Software Design

Descrierea codului aplicaţiei (firmware):

  • mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
  • librării şi surse 3rd-party (e.g. Procyon AVRlib)
  • algoritmi şi structuri pe care plănuiţi să le implementaţi
  • (etapa 3) surse şi funcţii implementate

The game logic is implemented in the code using a 2D array to represent the game grid. Each cell in the grid can have one of the following values:

  1. 1: Empty cell

0: Player O's mark

  1:  Player X's mark
  2:  Temporary mark (used during player X's turn)

The game checks for a winning condition by examining each row, column, and diagonal. If a winning condition is found, the game displays the winner and resets the grid for a new round. If all cells are filled and no winner is found, the game declares a draw and resets.

Rezultate Obţinute

Concluzii

În etapele următoare… stay tuned!

Download

O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-).

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.

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2023/drtranca/x_si_o.1685307218.txt.gz · Last modified: 2023/05/28 23:53 by andreea.stefan1110
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