Table of Contents

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

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

Export to PDF