Cezar-Alin ENE - Snake pe LCD Nokia 3310

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Prezentarea pe scurt a proiectului vostru:

  • ce face

Voi implementa clasicul joc Snake, pe un LCD de Nokia 3310.

  • care este scopul lui

Scopul proiectului este de a crea un joc interactiv care poate fi jucat de toti userii.

  • care a fost ideea de la care aţi pornit

Am vrut sa folosesc neaparat un LCD deoarece mi se pare interesant si aceasta a fost prima idee care mi-a venit si am mers pe primul instinct :)

  • de ce credeţi că este util pentru alţii şi pentru voi

Pentru mine este util deoarece ma familiarizez cu folosirea diferitelor componente (ecran,leduri,butoane) si cu scrierea algoritmului pentru snake, care mi se pare unul interesant, iar pentru altii poate fi distractiv sa isi aduca aminte de jocurile copilariei si sa se poate juca acest joc.

Descriere generală

Userul va controla sarpele din cele doua butoane, scopul lui fiind de a strange cat mai multe puncte.Aceste puncte vor aparea random pe ecran imediat dupa ce sarpele trece printr-un punct.Trecand prin aceste puncte, lungimea sarpelui se va mari iterativ. Ca sa nu moara, acesta va trebui sa nu intre in corpul lui, iar daca trece prin zid acesta va putea aparea pe partea cealalta.

Hardware Design

Schema EAGLE:

Piese folosite:

  • Placuta impreuna cu componentele de baza
  • 5 Butoane
  • 5 Rezistente 3k3
  • 1 Rezistenta 1k
  • 2 Diode 1N4841
  • 1 Condensator polarizat de 10uF
  • 1 LCD Nokia
  • 1 Placuta de test
  • 20 de fire mama-mama
  • 1 m de fir subtire
  • O bareta de 40 de pini

Am legat cele 5 butoanele la pinii portului C si display-ul la pinii portului A cu ajutorul unor fire foarte subtiri ( ca in schema de mai sus ).

Faza intermediara a proiectului ( 80% din partea hardware e gata + api-ul pentru LCD de Nokia 3310 ) :

Software Design

Am folosit urmatoarele programe:

  Eagle 7.3.0 - pentru realizarea schemei electrice
  WinAVR
  Programmer's Notepad
  bootloadHID - pentru a incarca codul si a testa rezultatele pe placuta

Am implementat algoritmul joucului de Snake, urmarind regulile cunoscute:

- am initializat pozitia sarpelui si a hartii
- sarpele isi schimba directia in functie de butoanele apasate ( sus,jos,stanga si dreapta )
- am adaugat random pe harta un punct ce reprezinta mancarea
- atunci cand sarpele ajunge in punctul in care se afla mancare el se mareste cu o unitate
- daca sarpele intra in corpul lui moare
- celelalte puncte ale corpului, exceptand capul sarpelui, urmeaza directia capului
- afisez scor,game over,mesaj de pornire in functie de starea jocului

Pentru folosirea LCD-ului de Nokia 3310 am folosit un API - lcd.c/lcd.h

Rezultate Obţinute

Am terminat partea Software, din punctul meu de vedere, deoarece inca nu am putut sa testez intregul proiect din cauza placutei. Teoretic, partea Hardware ar fi trebuit sa fie si ea Ok, deoarece din discutia purtata cu asistentii schema electrica e buna, iar implementarea ei propriu-zisa a fost conform schemei.
S-ar putea insa sa existe un scurt circuit undeva, pe care nu-l observ, deoarece pinii LCD-ului sunt foarte mici si foarte apropiati.

Concluzii

Download

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

pm/prj2015/amusat/cezu8932.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