Silviu-George PANTELIMON (66986) - 2048 cu accelerometru

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Jocul 2048 este un joc puzzel arhicunoscut, acesta este format dintr-o tabela de 4×4 patrate in care apar aleator numerele 2 si 4 iar scopul este sa se ajunga la puteri ale lui doi cat mai mari prin insumarea a doua numere adiacente egale aflate pe tabela cand acestea sunt miscate intr-o directie sau alta. Mai multe detalii gasiti aici.

Descriere generală

Proiectul va presupune afisarea jocului pe un LCD aflat pe placa presupune ca jucatorul sa incline dispozitivul stanga-drepta, fata-spate ca numerele sa se miste pe tabela. Miscarile vor fi detectate de catre un accelerometru dar va exista un interval de timp pana cand se va efectua miscarea pe tabela ca jucatorul sa aiba timp sa actioneze.

ATmega324 va prelua informatiile de la accelerometru, va interpreta miscarea si va afisa noua configuratie pe LCD, asta se intampla pana cand nu s-a ajuns la 2048 sau jucatorul s-a blocat, in acest caz se va afisa ca el a castigat sau a pierdut. Va exista de asemenea si un buton de reset pentru a relua jocul.

Hardware Design

Piese Cantitate Distribuitor
Placa de baza PM 2017 1 Echipa de PM
LCD PCD8544 1 Optimus Digital
Accelerometru ADXL345 1 Optimus Digital

2048_2.jpg 2048_3.jpg 2048_4.jpg 2048_5.jpg 2048_6.jpg 2048_7.jpg 2048_8.jpg

Software Design

  1. Mediu de dezvoltare: Programers Notepad
  2. Librarii: WinAVR
  3. Incarcare aplicatie: Bootloader-ul din laborator

Comunicatia dintre placa si LCD se face prin SPI iar cea dintre placa si accelerometru prin I2C.

Rezultate obtinute

Joc functioneaza complet, numerele apar aleator in matricea jocului iar jucatorul inclina placa in directia in care doreste sa miste numerele. Jucatorului i se da un interval de 1 secunda intre inregistrarile miscarilor. Cand se termina jocul lumina LCD-ului se stinge si se aprinde de 5 ori in 10 secunde pana se afiseaza mesajul “You win!” daca s-a ajuns la 2048 sau “Game over!” daca nu se mai pot efectua miscari in nicio directie si continua sa alterneze lumina.

Concluzii

Sincer cred ca puteam sa fac un proiect mai bun dar semestrul acesta a fost destul de aglomerat. Nici macar eu nu sunt impresionat de proiectul meu dar consider ca asta a fost la indemana mea sa realizez.

Download

Bibliografie/Resurse

  • Datasheet PCD8544: Link
  • Datasheet ADXL345: Link
  • Biblioteca I2C: Link
  • Exemplu de impementare biblioteca pentru ADXL345: Link
  • Exemplu de impementare biblioteca pentru PCD8544: Link
  • Documentația în format PDF
pm/prj2017/mandrei/2048.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