This is an old revision of the document!


Tetris

Autor: Verna Dorian-Alexandru

Grupa: 334CC

Introducere

Descriere

Proiectul consta intr-un joc Tetris realizat cu ajutorul unei matrice de LED-uri. Jucatorul trebuie sa aseze piesele care apar in matrice astfel incat aceasta sa nu fie acoperita de ele. Cu cat jucatorul poate sa amane completarea cu piese a spatiului pe care il are la dispozitie, cu atat acesta este mai aproape de a castiga. Jucatorul castiga atunci cand rezista o anumita perioada de timp data de dificultatea jocului. Scorul se afiseaza pe un display, iar dificultatea (viteza, timpul) se regleaza cu ajutorul unui potentiometru. Rasplata pentru castig consta intr-o surpriza data catre jucator prin intermediul unui servomotor.

Scop

Scopul este castigarea premiului si voia buna:)

Descriere generală

In momentul in care se pune in functiune ansamblul, pe display va aparea un mesaj care va spune ca se poate incepe jocul odata cu apasarea unui buton. Odata inceput jocul, jucatorul trebuie sa seteze dificultatea pe care o va avea pentru joc prin intermediul potentiometrului (timpul cat trebuie sa reziste si viteza cu care coboara piesele), dupa care se poate da start la joc de pe acelasi buton ca inainte. Piesele care trebuie asezate cat mai bine pe matricea de LED-uri sunt reprezentate prin LED-uri aprinse. Jucatorul le poate roti sau misca stanga-dreapta cu ajutorul a 4 butoane. Jocul se incheie atunci cand se termina timpul setat pentru joc sau cand jucatorul a pierdut. Daca acesta a castigat, atunci, prin intermediul servomotorului, jucatorului ii va fi acordat premiul.

Schema bloc

Hardware Design

Componente

  • Arduino ATMEGA 2560
  • Breadboard
  • 5 X Buton
  • Modul LCD 1602
  • 4 X Matrice LED 1088AS 8×8
  • Potentiometru
  • Rezistori
  • Fire
  • Servomotor

Software Design

  • Pentru dezvoltarea aplicatiei am folosit Arduino IDE
  • Bibliotecile pe care le-am folosit sunt: MD_MAX72xx.h si SPI.h pentru matricele de LED-uri, LiquidCrystal_I2C.h si Wire.h pentru LCD
  • Am folosit o matrice mare de 8×32 pentru a reprezenta matricele de LED-uri. Am folosit o structura de date pentru a retine pozitiile din matrice unde se regaseste o piesa care se afla in miscare.

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

Bibliografie/Resurse

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

Export to PDF

pm/prj2022/dene/tetris.1653630146.txt.gz · Last modified: 2022/05/27 08:42 by dorian.verna
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