This is an old revision of the document!


2048 PE LCD

Autor: Blaj Alexandru Dragos

Introducere

Proiectul consta in implementarea jocului 2048 folosind o placuta Arduino si un ecran LCD. In implementare voi folosi butoane. Jocul trebuie sa permita player-ului sa ajung la numarul 2048 prin adunari succesive. Am gasit un proiect asemanator in anii trecuti si mi-a atras atentia. Voi putea folosi cunostintele invatate la PM construind un joc distractiv si antrenant.

Descriere generala

Jocul va contine 4 butoane, 4 pentru deplasarea pe tabla de joc. La intalnirea a doua patrate cu numar identic se formeaza un singur patrat purtand ca numar suma celor 2 patrate din care a fost format. Jocul se termina cand jucatorul ajunge la numarul 2048 sau nu mai are mutari valide.

Hardware Design

Lista de piese

  • Arduino UNO
  • LCD 7920
  • Breadbord
  • 4 x rezistente 1k ohm
  • Fire tata-tata si tata-mama
  • 4 x Butoane Push

Schema Electrica

Am folosit un LCD ST7920 pe care l-am conectat astfel:

GND → GND

VCC → 5V

RS → D10

R/W → D11

E → D13

PSB → GND

RST → D8

BLA → 3.3V

BLK → GND

Pentru cele 4 butoane am folosit pinii DB3, DB4, DB5, DB6.

Software Design

Jocul porneste direct si putem selecta directia de deplasare a numerelor folosind cele 4 butoane.

  • Primul buton il folosim pentru a deplasa numerele in stanga.
  • Al doilea buton il folosim pentru a deplasa numerele in sus.
  • Al treilea buton il folosim pentru a deplasa numerele in jos.
  • Al patrulea buton il folosim pentru a deplasa numerele in drepta.

Tabla de joc este o matrice de 4×4 si la inceput doar 2 patrate din 16 au numar si sunt selectate aleatoriu.

La o mutare valida se alege aleatoriu un patrat din tabela, care nu contine numar, si i se atribuie o valoare de 2 sau 4.

Cand jucatorul ajunge la numarul 2048 jocul se termina afisand mesajul “Game Won” si se reinitializeaza tabela de joc.

Daca jucatorul nu mai are mutari valide jocul se termina afisand mesajul “Game Lost” si se reinitializeaza tabela de joc.

Mediu de dezvoltare

Arduino IDE

Biblioteci folosite

U8g2lib - pentru ecranul LCD ST7920

Rezultate obtinute

Concluzii

Download

Bibliografie/Resurse

pm/prj2021/apredescu/2048pelcd.1622653441.txt.gz · Last modified: 2021/06/02 20:04 by alexandru.blaj1404
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