Cristian-Mihai NICULAE (25336) - Snake - matrice leduri (8x8)

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Am ales sa implementez cunoscutul joc Snake. Directia sarpelui o sa poata fi controlata folosind patru butoane ( sus, jos, stanga, dreapta) pentru a acoperi toate posibilitatile. Sarpele va putea sa treaca prin pereti, iar mancarea acestuia va fi generata aleator. De asemenea, dimensiunea sarpelui va creste cu o unitate imediat ce acesta va manca. Butoanele vor trimite comenzi catre microcontroler si astfel se va modifica starea matricii de leduri in functie de comenzile primite.

Descriere generală

Schema EAGLE :

Hardware Design

Componente pentru placa de baza :

  • ATMEGA324PA-PU, COD: ATMEGA324PA-PU
  • USB-B, COD: USB B-PCB-R
  • 16MHZ QMIM016, COD: Q16.000 MHz
  • HC-49S 2 DIODE ZENER, COD: BZX55C3V3
  • 2 LED-uri EL333, COD: CLL-50221
  • K1X10 WSL040, COD: HN1X40
  • K2X10, COD: HN2X10
  • 2 PUSHBUTTON, COD TS-06E (TS-3)
  • Rezistenţe 100R, 470, 1K5, 10K, 1K
  • Condensator ceramic 100nF, 15pF
  • Soclu DIP40 dil40emf, COD: LC40
  • Jumper

Alte componente specifice proiectului :

  • Matrice de leduri 8×8
  • 5 PushButtons , COD: TS-06E(TS-3)
  • Fire de legatura de tip mama-mama

Software Design

Descrierea codului aplicaţiei (firmware):

  • WinAVR
  • Programmer's Notepad
  • bootloaderHID
  • Eagle 7.5.0

Implementare:

 
 * Configuratia matricii de leduri este pastrata intr-o matrice de 8 linii si 8 coloane.Semnificatia fiecarui led din matrice este : 0-stins , 1-aprins
 * Corespondenta dintre matricea din cod si matricea de leduri se realizeaza cu ajutorul functiei draw_matrix().
 * Jocul se desfasoara conform regulilor jocului Snake , hrana generandu-se aleator cu ajutorul functiei gen_food() , iar lungimea sarpelui se mareste cu o unitate de fiecare data cand acesta mananca hrana.

Rezultate Obţinute

Concluzii

A fost un proiect destul de interesant , care a necesitat foarte multa atentie si calm. Am avut ceva probleme cu matricea, dar cu ajutorul laborantilor si al multimetrului am reusit sa o rezolv. Ca si concluzie , m-a atras faptul ca pot implementa de la 0 un joc atat de cunoscut si jucat in copilarie. Rezultatul a fost unul pe masura si tot efortul nu a fost in zadar.

Download

Sursa C, Makefile , Schema Eagle - mihai.zip

Jurnal

  Cumpărare componente si placa de baza: 18.04.2016
  Lipire componente si testare placa de baza:25.04.2016
  Cumparare componente etapa 2: 02.05.2016
  Lipire componente si crearea legaturii intre placute:09.05.2016
  Implementare, testare, finalizare pagina de wiki:23.05.2016

Bibliografie/Resurse

          Datasheet matrice de leduri : http://oomlout.com/8X8M/8X8M-Guide.pdf
          Laborator 0 : http://cs.curs.pub.ro/wiki/pm/lab/lab0

pm/prj2016/aconstantinescu/1923.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