Differences

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

Link to this comparison view

pm:prj2021:abasoc:colorsequencegame [2021/05/26 12:56]
tudor.gaina [Hardware Design]
pm:prj2021:abasoc:colorsequencegame [2021/06/02 21:35] (current)
tudor.gaina [Bibliografie/Resurse]
Line 6: Line 6:
  
 ====== Introducere ====== ====== Introducere ======
-Color Sequence Game este un joc in care trebuie sa urmărești atent ledurile și sa reții ordinea in care s-au aprins, pentru ca mai apoi sa reproduci aceasta o secvența de culori folosind butoanele ​colorate.+Color Sequence Game este un joc in care trebuie sa urmărești atent ledurile și sa reții ordinea in care s-au aprins, pentru ca mai apoi sa reproduci aceasta o secvența de culori folosind butoanele ​corespunzătoare ledurilor.
  
 ====== Descriere generală ====== ====== Descriere generală ======
-Jocul contine 4 butoane, ​leduri ​si un buzzer.+Jocul conține 3 butoane, ​leduri ​și un LCD.
  
-O data ce jucatorul apasa unul din cele 4 butoane ​jocul va incepe.+Urmărind indicațiile date către jucător cu ajutorul LCD-ului, acesta va putea știi in ce stare se afla jocul
 +  * Starea de așteptare a jucătorului in care se așteaptă apăsarea unui buton pentru a trece mai departe. 
 +  * Starea de redare a secvenței unde se va afișa cu ajutorul ledurilor secvența ce trebuie memorata. 
 +  * Starea de așteptare a introduceri secvenței unde jucătorul ​va apasă butoanele in ordinea in care au fost aprinse ledurile.
  
-Inainte si dupa ce s-a afisat complet secventa ​se vor aprinde toate butoanele pentru ​atentiona jucatorul cu privire la aceste evenimente.+Initial ​se începe de la nivelul 1, adică secvențconține un singur led.
  
-Dupa ce butoanele au fost apasate ​in ordinea ​corespunzatoare ​se va trece la urmatorul ​nivel. Fiecare nivel va fi din ce in ce mai greu, deoarece ​secventa ​va fi incrementata cu 1 fata de nivelul anterior.+După ce butoanele au fost apăsate ​in ordinea ​corespunzătoare ​se va trece la următorul ​nivel. Fiecare nivel va fi din ce in ce mai greu, deoarece ​secvența ​va fi incrementata cu 1 fata de nivelul anterior.
  
-Daca Secventa ​va fi introdusa ​gresit ​de catre jucator ​tot jocul se va reseta, ​pentru a porni un nou joc se va apasa orice buton.+Dacă Secvența ​va fi introdusa ​greșit ​de către jucător ​tot jocul se va reseta, va reîncepe de la nivelul 1.
  
-De fiecare data cand se produce o actiune a jucatorului,​ buzzerul se va activa si va scoate un sunet specific.+Schema Bloc:
  
 +{{:​pm:​prj2021:​abasoc:​schema_bloc_gainatudor.png|}}
 ====== Hardware Design ====== ====== Hardware Design ======
 Componente: Componente:
Line 36: Line 40:
  
 ====== Software Design ====== ====== Software Design ======
-Pentru ​implementarea codului ma voi folosi de mai multe stări ale programului:​ +Pentru ​dezvoltarea software am folosit Tinkercad.
-  - Waiting for Player - Se va aștepta unui buton pentru a semnala ca playerul este gata sa joace +
-  - Generating Sequence - Se va genera o secvența aleatoare de culori, timp in care inputul playerului nu va conta +
-  - Waiting for Sequence - Se așteaptă secvența introdusa de către player și se validează dacă este la fel cu cea originală.+
  
-Programul va merge la infinit intre stările 2 și 3 pana când jucătorul va introduce ​secvența greșita, caz in care programul ​se va întoarce ​in starea 1.+Initial am legat componentele ​la placa Arduino. 
 + 
 +După aceea am început sa generez semnale IO pentru a ma asigura ca totul merge bine.  
 + 
 +Am folosit următoarele biblioteci:​ 
 +  * LiquidCrystal.h pentru afișarea textului pe LCD 
 + 
 +Într-un final am început sa stabilesc logica programului ​și sa codez. 
 + 
 +Codul și explicațiile sale se afla in comentariile din acesta.
 ====== Rezultate Obținute ====== ====== Rezultate Obținute ======
-TODO+Într-un final jocul obținut arata in felul următor:
  
 +{{:​pm:​prj2021:​abasoc:​arduino1_gainatudor.jpeg?​400|}}
 +{{:​pm:​prj2021:​abasoc:​arduino2_gainatudor.jpeg?​400|}}
 ====== Concluzii ====== ====== Concluzii ======
-TODO+In concluzie a fost un proiect in care am învățat cum sa conectez mai multe componente intre ele și sa meargă pe o logica mai complexă.
  
 +Consider ca a fost un proiect interesant in care am reușit sa îmbin legarea componentelor hardware și comunicarea cu acestea in software.
 ====== Download ====== ====== Download ======
-Proiect PDF:​{{:​pm:​prj2021:​abasoc:​color_sequence_game_tudor.pdf|}}+Proiect PDF:​{{:​pm:​prj2021:​abasoc:​color_sequence_game_gainatudor.pdf.pdf|}} 
 + 
 +Codul in C:​{{:​pm:​prj2021:​abasoc:​colorsequencegame.zip|}}
  
 ====== Jurnal ====== ====== Jurnal ======
-TODO+  * 25 aprilie - Descrierea jocului 
 +  * 25 aprilie - Adăugarea Componentelor necesare 
 +  * 26 mai - Modificarea schemei 
 +  * 2 iunie - Adăugarea Pozelor cu proiectul
  
 ====== Bibliografie/​Resurse ====== ====== Bibliografie/​Resurse ======
-TODO+  * Laboratoarele de PM: https://​ocw.cs.pub.ro/​courses/​pm 
 +  * Conectarea unui LCD: https://​core-electronics.com.au/​tutorials/​use-lcd-arduino-uno.html 
 +  * Demo Youtube: https://​www.youtube.com/​watch?​v=7i45q6ZYXM8 
 +  * Pagina Proiectului:​ https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​abasoc/​colorsequencegame
pm/prj2021/abasoc/colorsequencegame.1622022988.txt.gz · Last modified: 2021/05/26 12:56 by tudor.gaina
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