This is an old revision of the document!


Jocuri Interactive de Memorie

Introducere

Proiectul consta intr-un sistem interactiv inspirat de jocurile de pe HumanBenchmark, bazat pe o matrice 3×3 de butoane iluminate. Utilizatorul poate selecta unul dintre cele doua jocuri folosind un display LCD I2C si doua butoane de meniu.

Primul joc presupune memorarea unei secvente de LED-uri aprinse intr-o anumita ordine, pe care utilizatorul trebuie sa o reproduca folosind butoanele corespunzatoare. Lungimea secventei creste progresiv pe masura ce dificultatea creste.

Al doilea joc testeaza memoria vizuala. Mai multe LED-uri se aprind simultan pentru o perioada limitata de timp, iar utilizatorul trebuie sa retina pozitiile acestora si sa le reproduca. Timpul de afisare scade progresiv folosind o functie exponentiala de dificultate.

Sistemul include scor, vieti, highscore si feedback sonor prin buzzer.

Descriere generala

Modulele proiectului si modul in care interactioneaza:

  • ATmega328P controleaza logica jocurilor si interactioneaza cu toate modulele
  • Matricea 3×3 de butoane iluminate afiseaza secventele si permite introducerea raspunsurilor utilizatorului
  • Display-ul LCD I2C afiseaza meniul, scorul, vietile si highscore-ul
  • Cele doua butoane de meniu permit selectarea jocului si navigarea prin interfata
  • Buzzerul ofera feedback audio pentru raspunsuri gresite si evenimente importante

La pornire, utilizatorul vede pe LCD cele doua jocuri disponibile si poate selecta unul dintre ele folosind butoanele laterale. Dupa selectare, sistemul afiseaza highscore-ul pentru jocul ales si permite pornirea jocului.

In timpul jocului, LCD-ul afiseaza scorul si numarul de vieti ramase. Utilizatorul are initial 3 vieti, iar la fiecare raspuns gresit pierde o viata si buzzerul emite un semnal sonor. Dificultatea jocurilor creste progresiv prin marirea lungimii secventelor si reducerea timpului de afisare.

Hardware Design

Lista de componente

Nr. Componenta Cantitate Rol in proiect Interfata folosita
1 ATmega328P Xplained Mini 1 buc Unitatea centrala de procesare -
2 Display LCD 1602 cu modul I2C 1 buc Afisarea meniului, scorului si vietilor I2C (SDA, SCL)
3 Butoane iluminate cu LED (verde) 9 buc Matricea 3×3 pentru introducerea raspunsurilor GPIO
4 Butoane simple PCB 12x12mm 2 buc Navigarea in meniu si selectarea jocului GPIO
5 Buzzer pasiv 5V 1 buc Feedback audio pentru raspunsuri si evenimente PWM
6 Rezistoare 220 ohm 9 buc Limitarea curentului pentru LED-urile butoanelor -
7 Breadboard 830 puncte MB-102 1 buc Distributia alimentarii si conexiunilor -
8 Fire jumper tata-tata si mama-tata 1 set Realizarea conexiunilor intre componente -

Conexiuni si schema de cablare

Matricea de butoane: Cele 9 butoane sunt organizate intr-o matrice 3×3 folosind 6 pini in loc de 9. Trei pini (PD2, PD3, PD4) controleaza randurile, iar alti trei (PD5, PD6, PD7) controleaza coloanele. La scanare, microcontrollerul pune pe rand fiecare linie la LOW si citeste cele 3 coloane. Daca o coloana citeste LOW, butonul de la intersectia dintre linia activa si acea coloana este apasat. Pinii de coloana folosesc rezistenta pull-up interna a ATmega328P (INPUT_PULLUP).

LED-urile butoanelor: Fiecare LED este controlat individual printr-un pin digital dedicat. Curentul este limitat printr-o rezistenta de 220 ohm montata pe breadboard intre pinul ATmega si pinul LED al butonului.

Alimentare: VCC (5V) si GND de pe placa sunt conectate la liniile de alimentare ale breadboard-ului, de unde sunt distribuite catre toate componentele.

Descrierea pinilor folositi

Alocarea pinilor s-a bazat pe arhitectura interna a ATmega328P, rezervand pinii dedicati pentru perifericele hardware specifice.

Pin ATmega328P Rol
PC4 (SDA) Display LCD I2C - linia de date
PC5 (SCL) Display LCD I2C - linia de ceas
PC3 Buzzer pasiv
PD0 Buton meniu 1
PD1 Buton meniu 2
PD2 Matrice butoane - Rand 1
PD3 Matrice butoane - Rand 2
PD4 Matrice butoane - Rand 3
PD5 Matrice butoane - Coloana 1
PD6 Matrice butoane - Coloana 2
PD7 Matrice butoane - Coloana 3
PB0 LED buton (1,1)
PB1 LED buton (1,2)
PB2 LED buton (1,3)
PB3 LED buton (2,1)
PB4 LED buton (2,2)
PB5 LED buton (2,3)
PC0 LED buton (3,1)
PC1 LED buton (3,2)
PC2 LED buton (3,3)

Schema electrica

(screenshot Tinkercad)

Vedere de ansamblu hardware

(poza fizica)

Software Design

Concluzii

Download

Bibliografie/Resurse

pm/prj2026/cezar.zlatea/vlad.vlasceanu2901.1778974680.txt.gz · Last modified: 2026/05/17 02:38 by vlad.vlasceanu2901
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