This is an old revision of the document!
Battleship
Introducere
Proiectul consta in crearea unui joc multiplayer (2 jucatori) ce simuleaza un joc de Battleship, iar de-a lungul jocului se va auzi o coloana sonora. Fiecarui jucator ii sunt asignate 5 nave de lupta de dimensiuni diferite asezate fie vertical, fie orizontal, iar scopul jocului este sa distrugi in totalitate toate navele inamicului. Jucatorii interactioneaza cu celalalt pe runde: jucatorul care trebuie sa faca o decizie vede tabla pe care loviturilor pe care le-a dat ce pot fi de doua tipuri HIT sau MISS in cazul in care lovitara a nimerit o unitate a unei nave. O nava este alcatuita dintr-un numar de 2, 3, 4 sau 5 unitati si este considerata distrusa in momentul in care toate unitatile au fost nimerite. Jocul se opreste in momentul in care unul dintre jucatori reuseste sa distruga toate navele celuilalt jucator.
La nivelul interactiunii cu proiectul in momentul in care un jucator trebuie sa aleaga o pozitie (coordonata x si y) a unui atac apasa pe butonul de ATTACK, iar pe ecran se vor afisa un mesaj de tipul “X: N Y: N”, jucatorul trebuind sa aleaga o pozitie a atacului prin apasarea butoanelor LEFT, RIGHT, UP, DOWN si apoi sa apese butonul HIT. Celor doi jucatori li se vor afisa mesaje ce vor sugera daca aceasta actiune a avut un impact.
Descriere generală
Schema bloc ce contine interactiunea intre modulele folosite in proiect. Pentru interactiunea jucatorilor folosesc doua ecrane LCD, un potentiometru pentru reglarea luminozitatii ecranelor si butoanele cu care jucatorii pot lua decizii. De asemenea folosesc un Modul SD Card pentru a incarca o melodie ce va fi redata in timpul jocului, folosindu-ma de un amplificator de sunet si un difuzor, iar pentru reglarea volumului folosesc un potentiometru.
Schema electrica ce contine legaturile intre componente. Cele doua placi Arduino interactioneaza intre ele prin intermediul interfetei seriale (RX si TX). O placuta Arduino gestioneaza semnalele transmise catre cele doua LCD-uri, pe langa alimentare (5V pentru tensiune, 3.3V pentru pinul BLA si Ground) mai transmite semnale pe pinii de Enable(E - pinii 12 si 13), Register Select(RS - pinii 9 si 10) si Read/Write(R/W - pinii 7 si 11). Cealalta placuta se ocupa de getionarea input-ului provenit de la butoane (pinii 2, 3, 4, 5, 6, 7) cat si a input-ului catre DFPlayer. Player-ul MP3 este conectat la pinii 8 si 9, si are conectat un difuzor pentru a reda semnalele audio, volumul melodiei redate este controlate de catre potentiometru.
Pentru schema electrica am folosit Tinkercad in care am simulat interactiunea dintre componente. De mentionat este ca am folosit un LCD16X2 (LCD-ul 12864 are un potentiometru integrat, nu a mai fost nevoie sa folosesc unul separat), iar pentru a reda sunet am folosit in schema electrica un buzzer Piezzo (nu exista modulele folosite DFPlayer si Difuzor 3W4Ohm).
Hardware Design
Componentele hardware folosite în cadrul proiectului:
ARDUINO UNO
LCD 12864
Potentiometru WH148
MP3 DFPLayer
Card MicroSD
LED-uri
Rezistente
Difuzor 3W4Ohm
Breadboard
Fire
Butoane
Software Design
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