This is an old revision of the document!


Tetris

  • Student: Giuglan Denisa-Cristina
  • Grupa: 334CD

Introducere

  • Proiectul meu aduce jocul Tetris din lumea virtuala intr-un format fizic, construit cu ajutorul unei placi Arduino. Ideea de baza este simpla: piese de diferite forme cad pe un ecran, iar jucatorul trebuie sa le potriveasca perfect pentru a crea linii orizontale. Atunci cand o linie este completa, ea dispare, lasand loc pentru noi piese.
  • Am pornit de la dorinta de a vedea cum pot transforma niste componente electronice obisnuite intr-o consola de jocuri functionala. Mi-am dorit sa vad daca pot sa fac toate aceste piese sa se miste fluid, sa afisez scorul in timp real si sa adaug muzica de fundal, totul dintr-un singur cod.
  • Pentru mine, acest proiect este cea mai buna metoda de a vedea cum teoria de la cursuri se aplica in realitate. Am invatat cum sa conectez corect senzorii (joystick, buton) si cum sa organizez codul software pentru a controla hardware-ul.

Descriere generală

  • Control (Input): Jucatorul foloseste un joystick pentru a muta piesele la stanga sau la dreapta si un buton separat pentru a le roti. Aceste miscari sunt trimise ca semnale catre placa Arduino.
  • Procesare (Logica): Placa Arduino Uno este “creierul” care ruleaza jocul. Ea decide cat de repede cad piesele, verifica daca s-a format o linie si calculeaza scorul.
  • Afisare (Output): Jocul se vede pe un modul format din 4 matrice de LED-uri (8×32 puncte in total), iar informatiile suplimentare, precum scorul, sunt afisate separat pe un ecran OLED.
  • Sunet (Feedback): Un buzzer reda muzica de fundal si scoate sunete scurte atunci cand jucatorul castiga puncte sau pierde jocul.

Hardware Design

Componente folosite:

  • Arduino Uno: Placa de baza pentru controlul intregului sistem.
  • Modul 4 matrice LED MAX7219: Suprafata principala de joc (8×32 pixeli).
  • Display OLED (I2C): Pentru afisarea scorului si a mesajelor.
  • Joystick: Pentru controlul directiei de deplasare a pieselor.
  • Buton (Push-button): Pentru functia de rotire a pieselor.
  • Buzzer: Pentru feedback sonor si melodia Tetris.
  • Rezistenta 220 Ω: Pentru protectia circuitului buzzer-ului.
  • Breadboard si fire de legatura: Pentru realizarea conexiunilor intre componente.

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

Rezultate Obţinute

Care au fost rezultatele obţinute în urma realizării proiectului vostru.

Concluzii

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/prj2026/theodor_ioan.buliga/denisa.giuglan.1777834228.txt.gz · Last modified: 2026/05/03 21:50 by denisa.giuglan
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