2048

Horodnic Gheorghe Marian, 333CC

Introducere

2048 este un joc de tip grid de 4×4 (in versiunea clasica), care are initial 2 numere pe tabla (2 si 2 sau 2 si 4). Scopul este de a obtine intr-o celula 2048, prin deplasari stanga, dreapta, sus si jos. La fiecare deplasare, numerele alaturate si egale se aduna in functie de directie (de exemplu: |4|4| prin deplasare stanga, va deveni |8| |) si intr-o celula libera (aleatoare) va aparea un 2. Jocul se termina atunci cand jucatorul castiga sau cand toate celulele sunt ocupate si nu se mai pot face mutari.

Descriere generala

Jocul va fi implementat pe microcontroller, folosind un accelerometru pentru a afla directia de deplasare a celulelor (ex: placuta va fi rotita usor spre dreapta pentru a deplasa elementele la dreapta), 2 butoane (unul pentru a incepe un joc nou si celalalt pentru a opri sau porni muzica de fundal), un buzzer (pentru a reda sunete) si un LCD grafic pe care se va afisa configuratia.

Schema bloc

Hardware design

Lista piese

  • LCD grafic
  • 2 butoane
  • Accelerometru
  • Cabluri
  • Placa PM
  • Componente de baza
  • Slot card SD

Software design

Pentru dezvoltarea si testarea programului, am folosit compilatorul avr-gcc, o biblioteca pentru desenarea pe un display SPI, una pentru utilizarea accelerometrului si utilitarul bootloadHID.

La inceput, board-ul contine 2 patrate cu elemente de 2 dispuse aleator. La fiecare mutare, se va adauga valoarea 2 aleator intr-un patrat gol. Jocul va incepe din nou la apasarea butonului PB2 sau cand un patrat de pe board contine valoarea 2048.

Rezultate obtinute

Download

Bibliografie/Resurse

Biblioteca accelerometru: quadcopter

Biblioteca display: spi_tft_display.zip

pm/prj2019/ctranca/2048-game.txt · Last modified: 2021/04/14 17:07 (external edit)
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