Pentru iubitorii de jocuri, Tetris e un joc foarte frumos si interesant din categoria jocuri puzzle si jocuri de indemanare. Regulile acestui joc sunt foarte simple si cunoscute: trebuiesc unite cuburile astfel incat sa formeze o linie continua si sa fie eliminate, pentru a ramane cat mai putine cuburi in joc. Cand o linie este eliminata, celelalte coboara. Tetris, la fel ca si multe alte jocuri, este un joc vechi, clasic, dar care nu s-a demodat peste timp, el fiind cautat si la ora actuala.
Pentru a juca jocul tetris se folosesc tastele directionale (cele 3 butoane), pentru a invarti piesa, astfel incat ea sa se potriveasca cu cele din joc.
In jocul clasic, piesele sunt formate din 4 cuburi.
Din cauza afisajului disponibil redus (doar 8×8 leduri), am simplicat putin piesele si acum folosesc urmatoarele figuri:
Aici puneţi tot ce ţine de hardware design:
Piese folosite:
Pinii corespunzatori liniilor matricei se leaga la pinii C ai microcontrolerului, in timp ce pinii matricei corespunzatori coloanelor se leaga la pinii A ai microcontrolerului. Pentru a evita arderea ledurilor, am pus cate o rezistenta pe fiecare anod (liniile matricei). Cele 3 butoane se leaga astfel:
=Simulare in Proteus=
=Schema reala=
Dupa cum se observa din imagini, circuitul este alimentat prin USB la 5V.
Detalii de implementare:
Jocul este complet functional. Jocul incepe cu mesajul “TETRIS - THE ULTIMATE GAME”. La apasarea oricarui buton, jocul debuteaza. La inceput, scorul este 0. Fiecare linie stearsa aduce un punct. in cazul in care se ajunge in varful matricei, jocul se incheie si este afisat rezultatul final si scorul maxim facut pana atunci. in cazul in care este batut scorul maxim, se updateaza acesta si este afisat un mesaj specific.
Am atasat un filmulet cu o demonstratie a jocului.
Proiectul a fost interesant in sensul ca am dobandit noi cunostinte. Am intampinat unele probleme in realizarea lui, dar per ansamblu a fost o experienta din care am avut ce invata.
Arhiva cu sursele si datasheet-ul matricei
Atmega16 datasheet (vezi documentatie laborator)
8×8 DOT MATRIX LED DISPLAY UVP-2×88 SERIES datasheet (vezi arhiva)