Digital Dice Game

Autor

Introducere

Proiectul isi propune implementarea unui joc jucat cu zaruri controlate pe baza unui accelerometru.

Scopul acestui proiect este creerea unui joc care poate fii jucat la petreceri si de a ma familiariza cu sistemele embedded.

Cum decurge jocul:

O descriere generala a jocului este urmatoarea. Incepem cu un numar N de jucatori. La inceput, ei stabilesc o pedeapsa pentru pierzatori, care va fi aplicata pe parcursul jocului. Acestia se aseaza intr-un cerc, si astfel incepe jocul.

Primul jucator da cu zarurile. Dupa ce vede rezultatul primei aruncari, jucatorul din dreapta (adica cel cu numarul 2) incearca sa ghiceasca daca dupa propria aruncare, va obtine o suma mai mica sau mai mare. Acesta arunca si el cu zarurile si se pot intampla doua lucruri:

1)El a avut dreptate, caz in care primul jucator pierde confruntarea.

2)El nu a avut dreptate, caz in care el este pierzatorul.

In ambele situatii, pierzatorul are de facut o provocarea aleasa la inceput de comun acord. Jocul continua, iar acum confruntarea are loc intre pierzator, care arunca primul, si urmatorul jucator din cerc (In cazul acesta din exemplu, jucatorul cu numarul 3).

Jocul continua dupa acelasi algoritm, pana cand jucatorii se decid sa il incheie.

Descriere Generala

Jucatorul va avea placuta cu un display pe ea si inca o placuta pe care va fi montat un accelerometru. El va misca placuta pentru a simula senzatia de aruncare a unor zaruri. La primirea acestui input, algoritmul din spate va genera niste numere aleatoare, pe baza carora se va genera rezultatul aruncarii.

Hardware Design

Listă de piese cumparate:

  • ATmega324 pe plăcuța PM2019
  • Modul LCD Nokia 5110
  • Accelerometru MPU6050
  • Fire
  • Cablu USB pentru alimentare

Schema Electrica:

Software Design

Pentru implementare, am folosit Atmel Studio 7.0

Biblioteci utilizate:

  • Nokia 5110
  • MPU6050 si toate bibliotecile necesare pentru folosirea acestuia.

Initial, programul asteapta ca jucatorul sa miste accelerometrul. Atunci cand acest lucru se intampla, se asteapta ca jucatorul sa se opreasca din miscat. Dupa ce se intampla si asta, jucatorul primeste rezultatul aruncarii, si se asteapta ca acesta sa apese un buton pentru intoarcerea la inceputul jocului.

Rezultate Obţinute

Concluzii

Dupa parerea mea, a fost un proiect interesant, care s-a dovedit a fii mult mai dificil decat ma asteptam. Ma bucur insa ca am putut sa il duc pana la capat.

Pentru mine, cea mai dificila parte a fost sa reusesc sa folosesc accelerometrul. Dupa aceea, totul a mers bine si fara probleme.

Jurnal

Initial, am adaugat LCD-ul pe placa si m-am asigurat ca acesta functioneaza. Dupa aceasta a urmat accelerometrul, care mi-a dat ceva dureri de cap, insa am reusit sa-l fac si pe el sa mearga, iar la final am adaugat butoanele, cu care nu am avut probleme.

Schema electrica s-a schimbat pe parcursul proiectului, datorita faputlui ca am ars primul accelerometru din greseala.

Bibliografie/Resurse

pm/prj2019/amocanu/133.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