This is an old revision of the document!
Whack a mole
Proiect realizat de: Voinea Miruna-Georgiana
Grupa: 334CB
Introducere
Proiectul are la bază faimosul joc Whack a mole: există mai găuri pe unde cârtițele pot scote capul, iar obiectivul jucătorului este de a le împiedica să iasă din ascunzătoare prin lovituri cu un ciocănel.
Descriere generală
Spre deosebire de jocul tradițional, în loc de cârtițe vom avea led-uri, iar în loc să folosim un ciocănel, vom apăsa pe butoane.
Apariția unei cârtițe va fi semnalată de aprinderea unui led, iar pentru a câștiga puncte, jucătorul trebuie să apese butonul din dreptul led-ului respectiv.
Intervalele la care se aprind led-urile vor fi controlate cu ajutorul unui timer.
Pe măsură ce jocul avansează, scorul se va modifica și va fi afișat pe un LCD.
Hardware Design
Listă de piese:
Aici puneţi tot ce ţine de hardware design:
listă de piese
-
diagrame de semnal
rezultatele simulării
Software Design
Mediul de dezvoltare folosit: Arduino IDE
Schemă electrică realizată cu Tinkercad
Bibliotecă externă: LiquidCrystal_I2C.h
Flow joc:
La început, jucătorul are 3 vieți.
Se aprinde unul dintre cele 4 LED-uri reprezentând cârtițele.
Jucătorul poate lovi o cârtiță apăsând pe butonul din dreptul LED-ului.
Dacă LED-ul se stinge înainte ca jucătoul să apese pe buton sau se apasă un buton greșit, jucătorul pierde o viață.
Jocul se termină atunci când numărul de vieți ajunge să fie 0.
Am folosit timer1 pentru a controla intervalul de timp în care un LED este aprins, astfel încât atunci când timpul expiră, jucătorul să piardă o viață.
Atunci când se apasă un buton, se declanșează o întrerupere, butonul fiind identificat cu ajutorul funcției checkBit. Se verifică dacă butonul corespunde ultimului buton aprins: în caz afirmativ, scorul este incrementat, iar în caz negativ, jucătorul pierde o viață.
Descrierea codului aplicaţiei (firmware):
mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR)
librării şi surse 3rd-party (e.g. Procyon AVRlib)
algoritmi şi structuri pe care plănuiţi să le implementaţi
(etapa 3) surse şi funcţii implementate
Rezultate Obţinute
Care au fost rezultatele obţinute în urma realizării proiectului vostru.
Concluzii
Download
O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună

.
Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.
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.
Export to PDF