X si 0

Introducere

Proiectul reprezinta un joc de X si 0 controlat de un joystick si afisat pe o matrice de led-uri. Scopul proiectului este de a oferi studentilor o solutie rapida si usoara de a crea o alternativa a jocului X si 0 fata de varianta pe foaie.

Descriere generală

Proiectul are la baza un microcontroller Arduino la care se leaga toate celelalte componente, un joystick pentru controlul jocului, o matrice LED pentru display, un buton de reset al jocului, ce poate fi apasat oricand si o alta matrice LED pentru a afisa jucatorul care este la rand si la final, jucatorul care a castigat.

Hardware Design

Lista componente:

  • Arduino
  • Joystick
  • 4 * modul max7219 cu Matrice LED 8×8
  • Breadboard
  • Cabluri

detalii implementare hardware:

joystick: foloseste 2 pini analogici, 1 digital, 5V si GND

modul max7219: pini 5V, GND si 3 pini digitali, DIN, CS(cascade), CLK. Modulele vor fi inlantuite in serie, modulele max7219 avand atat pini de input cat si pini de output.

Software Design

Mediu de dezvolate: Arduino IDE

Librarie folosita: LedControl, link la bibliografie

Schema bloc: DrawIO

Codul functioneaza intr-un mod simpu: Intr-o matrice de 3×3 sunt retinute valorile casutelor de joc, dupa cum urmeaza: 0 pentru casuta goala, 1 pentru X si 2 pentru 0. Cand incepe turul unui jucator programul, incearca sa pozitioneze cursorul pe pozitia din mijloc, iar daca nu este libera itereaza prin casute pana o gaseste pe prima disponibila.

In afara de functiile din libraria LedControl am folosit doar analogRead si digitalRead.

Arhiva cod sursa → coming soon

Rezultate Obţinute

Rezultat obtinut: Jocul de X si 0 este functional si poate fi jucat la infinit fara ca programul sa esueze.

Concluzii

Acest proiect a fost unul interesant si relaxant de conceput si realizat. In urma realizarii proiectului am invatat cum sa folosesc o librarie 3rd party pentru arduino, cum se conecteaza diferite componente si cum se lipesc pinii in module.

Download

Arhiva cod sursa → x_si_0_sursa.zip

Jurnal

02.05.2022 → alegere tema proiect

05.05.2022 → prima comanda de piese

09.05.2022 → a doua comanda de piese

16.05.2022 → obtinere componente

20.05.2022 → versiune initiala cod

23.05.2022 → lipire componente la laborator

26.05.2022 → imbunatatire cod

29.05.2022 → scriere pagina wiki

Bibliografie/Resurse

Biblioteca LedControl https://github.com/wayoda/LedControl

Tutorial Max7219 controlat cu biblioteca LedControl: https://www.youtube.com/watch?v=R5ste5UHmQk

Export to PDF

pm/prj2022/rstanescu/xsi0.txt · Last modified: 2022/06/02 15:16 by tudor.niculescu0408
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