Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2021:avaduva:memorygame [2021/05/21 16:15]
andreea.zarioiu
pm:prj2021:avaduva:memorygame [2021/05/26 01:19] (current)
andreea.zarioiu
Line 10: Line 10:
 ===== Descriere generală ===== ===== Descriere generală =====
  
-Jocul incepe prin a genera prima secventa de culori, aceasta ramane pe ecranul aplicatiei Android cateva secunde dupa care dispare. Din acest moment utilizatorul are o limita de timp in care trebuie sa o reproduca apasand butoanele din dreptul ledurilor culorilor respective. Cand se termina timpul si utilizatorul e gata de sa inceapa ​sa introduca culorile, apasa pe butonul "​Ready"​. Culorile introduse apar pe telefon in timp real, la apasarea butoanelor de pe breadboard. La apasarea butonului gresit buzzerul produce o melodie de fail si jocul se opreste. Daca introduce corect culorile scorul creste si trece la nivelul urmator ​altfel, jocul se termina. In aplicatie sunt afisate culorile si scorul jucatorului.+Jocul incepe prin a genera prima secventa de culori, aceasta ramane pe ecranul aplicatiei Android cateva secunde dupa care dispare. Din acest moment utilizatorul are o limita de timp in care trebuie sa o reproduca apasand butoanele din dreptul ledurilor culorilor respective. Cand se termina timpul si utilizatorul e gata sa introduca culorile, apasa pe butonul "​Ready"​. Culorile introduse apar pe telefon in timp real, la apasarea butoanelor de pe breadboard. La apasarea butonului gresit buzzerul produce o melodie de fail si jocul se opreste. Daca introduce corect culorile scorul creste si trece la nivelul urmator. In aplicatie sunt afisate culorile si scorul jucatorului.
  
 ===Schema bloc=== ===Schema bloc===
Line 37: Line 37:
 ===== Software Design ===== ===== Software Design =====
  
-Am folosit Android Studio pentru a dezvolta aplicatia ​ce comunica cu placuta ​Arduino+Codul aplicatiei ​ce comunica cu placuta ​este scris in Java in Android Studio
-La deschiderea aplicatiei se realizeaza un socket intre telefon si modulul HC-05 prin identificarea acestuia ​ +La deschiderea aplicatiei se realizeaza un socket ​(ce este de fapt un obiect de tip BluetoothSocket din API.ul Android) ​intre telefon si modulul HC-05 prin cautarea dispozitivelor disponibile si identificarea acestuia ​prin adresa MAC. Comunicarea are loc dupa conectarea socketului ​ prin clasele InputStream si OutputStream fiind de tipul full-duplex. La apasarea butonului "​Start"​ se genereaza o secventa de culori si se porneste un Timer. La terminarea timpului culorile ​dispar ​iar la apasarea butonului "​Ready"​ se asteapta input de la modulul HC-05. Dupa fiecarea culoare trimisa se verifica daca este cea corecta iar daca nu este se trimite un mesaj de eroare la placuta si se porneste buzzerul. ​Culorile sunt codificate prin caractere si pastrate intr-un hashmap. ​Pentru codul incarcat pe placuta m-am folosit de IDE-ul dedicat Arduino si de interfata seriala. ​
-cu adresa MAC. La apasarea butonului "​Start"​ se genereaza o secventa de culori si se porneste un Timer. La terminarea timpului +
-culorile ​se sterg iar la apasarea butonului "​Ready"​ se asteapta input de la modulul HC-05. Dupa fiecarea culoare trimisa se verifica +
-daca este corecta iar daca nu este se trimite un mesaj de eroare la placuta si se porneste buzzerul. +
- +
-Pentru codul incarcat pe placuta m-am folosit de IDE-ul dedicat Arduino si de interfata seriala. ​+
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
Line 71: Line 66:
 ===== Concluzii ===== ===== Concluzii =====
  
 +Mi-a placut sa imbin dezvoltarea de aplicatii mobile cu informatiile acumulate in cadrul laboratorului de PM. Comunicarea dintre telefon si microcontroller prin modulul HC-05 de Bluetooth este cu siguranta partea cea mai interesanta si o regasesc in multe deviceuri pe care le folosesc in viata de zi cu zi.
  
  
Line 77: Line 73:
  
 Cod: {{:​pm:​prj2021:​avaduva:​memory_game.zip?​600 }} Cod: {{:​pm:​prj2021:​avaduva:​memory_game.zip?​600 }}
 +
 +<​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
  
 ===== Jurnal ===== ===== Jurnal =====
Line 88: Line 86:
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
 +
 +https://​developer.android.com/​reference/​android/​bluetooth/​BluetoothSocket
  
 https://​developer.android.com/​reference/​java/​io/​InputStreamReader - citire date primite prin Bluetooth https://​developer.android.com/​reference/​java/​io/​InputStreamReader - citire date primite prin Bluetooth
pm/prj2021/avaduva/memorygame.1621602937.txt.gz · Last modified: 2021/05/21 16:15 by andreea.zarioiu
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