Table of Contents

Joculet Tetris pe matrice de leduri 8x8

Introducere

Descriere generală


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:


Diagrama UML a jocului

Hardware Design

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

Piese folosite:

Descriere componente

Placuta etapa I

Schema ATmega16

=Matricea de leduri 8×8=

Matricea are urmatoarea scheme a legarii ledurilor:

Schema circuitului

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.

Software Design

Detalii de implementare:

Rezultate Obţinute

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.

Film demo

Concluzii

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.

Download

Arhiva cu sursele si datasheet-ul matricei

dinescu_andrei333cb_proiect_pm.zip

Bibliografie/Resurse

Exemplu cod

Filmulet demonstrativ

Getting started

Atmega16 datasheet (vezi documentatie laborator)

8×8 DOT MATRIX LED DISPLAY UVP-2×88 SERIES datasheet (vezi arhiva)