This is an old revision of the document!
Proiectul propus consta in realizarea unei console simple de jocuri bazata pe microcontrollerul ATmega328P Xplained Mini. Consola va avea un meniu afisat pe un display LCD 16×2, unde utilizatorul poate selecta unul dintre cele 3 jocuri disponibile: Snake, Tetris si Connect 4. Navigarea in meniu se face folosind un joystick analogic stanga/dreapta, iar selectarea jocului se face printr-un buton. Dupa selectare, jocul va fi afisat pe o matrice de LED-uri controlata prin modulul MAX7219. Pe parcursul jocurilor vor exista si functii de pauza si revenire in meniu.
Componente principale:
Componente de suport:
Pentru acest proiect, numarul pinilor necesari este urmatorul:
Totalul pinilor se incadreaza in limitele microcontrollerului
La pornirea consolei se aprinde ecranul LCD si se afiseaza un meniu in care jucatorul va avea de selectat intre 3 jocuri: Snake, Tetris si Connect 4. Utilizatorul navigheaza printre optiuni cu ajutorul joystick-ului. Cand un joc a fost selectat, acesta este afisat pe matricea LED. Pentru jocul Snake, pe matrice vor aparea 3 led-uri aprinse ce vor reprezenta corpul sarpelui, led-uri cu o luminozitate puternica, iar cu o luminozitate mai slaba vor fi punctele pe care sarpele le va colecta pentru a se mari. Folosim luminozitati diferite deoarece matricea ne ofera doar o singura culoare, astfel se poate face mai usor diferenta dintre corpul sarpelui si puncte. Regulile sunt cele clasice: sa evite sa intre in corpul sau si in margini, iar miscarea se realizeaza cu ajutorul joystick-ului: sus – jos – stanga – dreapta. Pentru jocul Tetris, pe matrice, pe primul rand, va aparea o forma aleatoare predefinita care va cadea usor la baza. Utilizatorul va putea misca forma cu joystick-ul in stanga sau dreapta, o va putea roti cu butonul care in mod normal este de selectie joc, acesta avand mai multe roluri, iar la apasarea joystick-ului se va mari viteza de cadere. Scopul jocului este de a rezista cat mai mult timp si de a obtine un scor cat mai mare, conditia de pierdere fiind ca figurile sa ajunga la ultimele randuri de sus. De asemenea, vor exista aproximativ 5 niveluri de luminozitate pentru a simula culori diferite. Pentru Connect 4, va fi nevoie de 2 utilizatori. Fiecare jucator, pe rand, va alege pozitia bilei cu joystick-ul; se va aprinde led-ul cel mai de sus al coloanei selectate, iar la apasarea butonului de confirmare, cel de selectare joc, bila va cadea pe cel mai de jos led neaprins de pe coloana respectiva. Scopul jocului este de a conecta 4 bile vertical, orizontal sau diagonal. Pentru un jucator vor fi led-uri aprinse puternic, iar pentru celalalt mai slab aprinse.