This is an old revision of the document!


Maze Game

Introducere

Un puzzle de tip labirint în care jucătorul trebuie să găsească ieșirea înainte de expirarea timpului.

Descriere generală

Pentru afișarea labirintului se folosește o matrice de LED-uri 8×8, în timp ce punctul de start este reprezentat printr-un led, care luminează intermitent. Direcția de mișcare, în interiorul labirintului, poate fi controlată cu ajutorul unui joystick. Începutul jocului este redat printr-un mesaj și numărătoare inversă, care se afișează atât pe LCD, cât și pe matricea de LED-uri. Jocul are mai multe nivele și fiecare trebuie trecut într-un anumit interval de timp. Pe LCD sunt afișate timpul rămas, nivelul trecut, dar și diverse mesaje. Sfârșitul fiecărui nivel, indiferent dacă a fost trecut sau eșuat, este însoțit de un sunet al buzzer-ului și o imagine. Dacă ai trecut și de ultimul level, ești cool ;-).

Schema bloc

Hardware Design

Lista de piese

  • Arduino Uno
  • Modul Matrice LED 8×8
  • LCD 1602
  • Modul Joystick
  • Buzzer
  • Rezistori
  • Fire

Diagrama hardware

Circuitul fizic

Software Design

  1. Ca mediu de dezvoltare pentru crearea jocului am folosit Arduino IDE.
  2. Librăriile utilizate sunt <LedControl.h> și <LiquidCrystal.h> pentru a putea controla modulul cu matricea de LED-uri, respectiv LCD-ul.
  3. Funcțiile care le-am implementat sunt:
    • playerMove() - determină direcția de deplasare în cadrul labirintului
    • setup() - inițializează jocul
    • loop() - implementează logica jocului
    • printByte() - afișează pe matrice imaginile declarate

Rezultate Obţinute

Rezultatul obținut este un mini-joc de tip labirint cu toate funcționalitățile menționate în descriere.

Concluzii

Acest proiect a fost o provocare destul de plăcută pentru mine (mai puțin partea în care îl băgam în cutie). Mi-a fost interesant să lucrez la partea de hardware. Am învățat cât de importantă este rezistența pentru LCD :-D.

Download

Codul jocului: mazegame.zip.

Bibliografie/Resurse

pm/prj2023/avaduva/maze_game.1685538480.txt.gz · Last modified: 2023/05/31 16:08 by mihaela.dusa
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