Table of Contents

Memory Game

Introducere

Proiectul consta in realizarea unui joc de testare a memoriei, avand doua nivele de dificultate.

Descriere generală

Testele constau in aprinderea unei secvente de leduri pe care jucatorul va trebui sa o reproduca prin apasarea butoanelor corespunzatoare ledurilor. Numarul ledurilor aprinse va creste odata cu nivelul la care jucatorul se afla. Cele doua nivele de dificultate difera prin intervalul de timp la care ledurile se vor aprinde unul dupa celalalt. Scorul va fi afisat pe un LCD text.

Hardware Design

Lista de pise:

Schema electrică

Software Design

Jocul incepe cu un singur led aprins (fiecare led are un buton care ii corespunde), iar butonul corespunzator este adaugat in vectorul de butoane care ar trebui apasate de jucator pentru o secventa corecta. Se verifica daca inputul jucatorului este corect si apoi se alege random urmatorul led ce urmeaza sa fie aprins si se adauga butonul corespunzator in vector.

Functia care se ocupa de adaugarea ledurilor in vector se numeste add_moves(), play_moves() afiseaza secventa care trebuie reprodusa, wait_for_button() asteapta inputul de la jucator checkButton() verifica carui led ii corespunde butonul apasat.

In functia play_moves() dupa ce se realizeaza alegerea urmatorului led din secventa, este parcurs fiecare buton ce trebuia apasat si se verifica daca inputul corespunde cu cel asteptat, daca inputul coincide se trece la nivelul urmator, altfel, jocul curent se termina si incepe unul nou de la 0.

Pentru afisarea scorului pe ecranul LCD am folosit biblioteca LiquidCrystal.

Rezultate

Download

memory_game.zip

Bibliografie/Resurse

Export to PDF