Table of Contents

Florin STANCU - Snake

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul presupune realizarea unui joc “Snake” folosind un display de Nokia 3310.

Descriere generală

Vor exista 5 butoane (4 de directie si unul de selectare) care vor interactiona cu microcontrolerul. Acesta din urma, in functie de evenimente, va afisa pe ecran starea jocului si va folosi difuzorul pentru a reda sunete in momentul producerii unui eveniment.

Hardware Design

Piese Număr Preț Sursa
Display Nokia 3310 1 10Lei Okazii
Push Buton 5 0.7Lei Conex Electronic
Rezistenta 220Ohm 5 0.3Lei Conex Electronic
Condensator 100nF 1 0.5Lei Conex Electronic
Difuzor 1 5Lei Conex Electronic
Bareta 40 Pini 1 4Lei Conex Electronic
Total 24Lei
Placuta PM 1 60Lei

Software Design

Codul a fost scris în winAVR, iar ca librărie pentru display am folosit Nokia 3310 LCD Driver.

Pentru “desenarea” pe ecran s-a folosit o structură (Block) care avea rolul de a reține informații despre block-urile folosite de pe display, obiectele afișate fiind reprezentate ca vectori de această structură:

Pentru sunete am folosit un timer-ul 1 care generează semnal PWN pe portul PD5 timp de 0.5 secunde. Acestea din urmă sunt folosite la producerea unui eveniment:

Pe partea de game play avem 3 niveluri de dificultate:

Rezultate Obţinute

DEMO: watch

Concluzii

A fost un proiect interesant care m-a ajutat să îmi dezvolt un pic și capacitățile pe partea hardware. Proiectul a fost ușurel din punctul meu de vedere, dificultatea cea mai mare fiind dată de faptul că am vrut să îmi creez un shield (în stilul celora pentru Arduino) pentru a fi cât mai compact și de a scăpa de fire. Au mai fost ceva problema la lipirea pinilor pe display, dar aici am primit ceva ajutor din partea domnului Surpățeanu :-D, anul trecut la un proiect asemănător pentru Achiziții de Date.

Download

<WRAP center round download 60%> 334cb_stancuflorin_proiectpm.zip </WRAP>

Jurnal

  • 7 aprilie - am terminat de lipit piesele pe placuță
  • 15 aprilie - bootloader-ul a fost instalat cu succes
  • 17 aprilie - am ales tema proiectului
  • 22 aprilie - am facut rost de restul de piese
  • 26 aprilie - am creat tastatura
  • 8 mai - partea hardware este completa
  • 17 mai - primele teste pe display și pe difuzor
  • 18 mai - mi s-a stricat bootloader-ul de pe microcontroller
  • 20 mai - am rescris bootloader-ul
  • 21 mai - partea software este gata
  • 22 mai - proiectul este complet

Bibliografie/Resurse