Autorul poate fi contactat la adresa: Login pentru adresa
Proiectul consta in implementarea unui joc de tetris pe LCD.
Scopul acestui proiect este unul de relaxare. Acum ceva timp am descoperit site-ul http://www.tetrisfriends.com/ unde te poti juca tetris online cu prietenii. Deoarece jocul mi s-a parut foarte interesant, m-am gandit sa implementez o versiune proprie a acestui joc.
Jocul va fi single-player.
Jocul consta in asezarea unor piese formate din 4 patratele, care se misca de sus in jos si pot fi deplasate staga-dreapta sau rotite. Jocul se termina, cand nu mai exista loc pentru asezarea pieselor.
Schema bloc a proiectului
Jocul va incepe cu un ecran de start.
Va aparea scorul curent si ce piesa urmeaza. Piesele vor fi alese random.
Pentru fiecare piesa pusa corect, jucatorul va primi un punctaj. Ultimul rand se elibereaza daca este complet. Se va adauga un punctaj bonus in functie de cate randuri complete sunt.
Jocul se termina in momentul in care scena s-a umplut si nu mai pot fi puse piese.
Scopul jocului este de a obtine un punctaj maxim.
Jucatorul va avea la dispozitie 4 butoane. 2 pentru mutare stanga-dreapta, 1 pentru rotirea piesei si 1 pentru inceperea jocului (in ecranul de start).
Va exista si un buzzer care creeaza diferite sunete pentru ca jocul sa fie si mai captivant.
Lista de piese
Nume | Numar bucati |
---|---|
LCD TFT SPI 1.44” | 1 |
Buzzer pasiv | 1 |
Butoane | 4 |
Fire mama-mama | 13 |
Lista componente de baza
Nume | Numar bucati |
---|---|
Microcontroller (ATMega324) | 1 |
Soclu microcontroller | 1 |
Diode ZENER | 2 |
Condensator 100nF | 2 |
Condensator 15pF | 2 |
Rezistenta 10K | 1 |
Rezistenta 1.5K | 1 |
Rezistente 100K | 2 |
Rezistente 470K | 3 |
Push Button | 2 |
Quartz | 1 |
Working at the project
Mediul de dezvoltare
Biblioteci
README + detalii despre implementare si cum se joaca
Driverul pentru LCD nu l-am scris eu, ci l-am folosit pe unul deja creat. De asemenea m-am folosit si de functii de la laborator.
De asemenea, in arhiva de download, se gaseste un README cu detalii despre implementare si logica jocului.
Proiectul a fost interesant si mi-a placut. Am intampinat destul de multe probleme pentru ca am rupt din greseala o placuta de test si a trebuit sa o iau de la 0, noroc ca stiam deja ce trebuie sa fac. M-am ars si de cateva ori cu letcon dar a macar am reusit sa am un proiect functional la sfarsit.