This is an old revision of the document!


Tetris Matrix

Introducere

Scopul acestui proiect este de a reda jocul clasic Tetris prin intermediul unei matrici de LED-uri NeoPixel folosind biblioteca cunoscută Fastled. Pe lângă LED-uri, proiectul va încorpora și diferite componente periferice menite să îmbunătățească experiența de joc, cum ar fi: buzzer audio, ecran LCD, butoane.

Descriere generală

Matricea de LED-uri va funcționa ca un ecran low-pixel pentru jocul nostru, fiecare LED putând fi controlat individual la orice moment de timp. Interacțiunea I/O cu jocul se va desfășura exclusiv prin intermediul mai multor butoane prin care jucătorul poate să pornească jocul, să rotească Tetrominoes-urile pe ecran, să restarteze jocul sau să închidă sesiunea. Prin intermediul unui ecran LCD, jucatorul va putea naviga prin meniu sau va putea vizualiza scorul în timp real. Unul sau mai multe buzzere audio vor cânta în permanență sountrack-ul Tetris

Hardware Design

Lista de componente

  • Arduino Uno
  • BreadBoard
  • 80~ LED-uri WS2812B RGB
  • Pushbuttons
  • Rezistențe
  • Fire
  • Stație de cositorit
  • Buzzer audio
  • Materiale auxiliare pentru realizarea matricii (carton, sticlă acrilică etc.)

Schema electrica

Software Design

Descrierea codului aplicatiei:

Codul se foloseste de bilbioteca FastLED.h pentru a comunica cu matricea de leduri. Pentru a spatializa functiile jocului, am realizat mai multe fisiere de tip header pe care le-am reunit in fisierul tetris-fastled.ino :

  • Tetris.h - contine toate functiile logice ale jocului
  • Paint.h - contine toate functiile care se ocupa cu colorarea LED-urilor
  • Music.h - contine toate functiile si notele muzicale pentru coloana sonora
  • Constants.h - contine toate constantele jocului (ex. inaltimea si lungimea matricii de joc)

Bibliografie

pm/prj2021/avaduva/tetrismatrix.1622499057.txt.gz · Last modified: 2021/06/01 01:10 by stefan_andrei.popa
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