This shows you the differences between two versions of the page.
pm:prj2021:dbrigalda:minesweeper [2021/06/03 19:48] luminita.ion [Software Design] |
pm:prj2021:dbrigalda:minesweeper [2021/06/04 11:10] (current) luminita.ion [Arhiva Codului] |
||
---|---|---|---|
Line 33: | Line 33: | ||
==== Lista de piese ==== | ==== Lista de piese ==== | ||
- | - rezistente; | + | - matrice de leduri; |
- | - leduri de culoare verde si rosu; | + | |
- placa Arduino Uno; | - placa Arduino Uno; | ||
- joystick; | - joystick; | ||
- buzzer; | - buzzer; | ||
- ultrasonic; | - ultrasonic; | ||
- | - cabluri; | + | - cabluri mama-tata; |
- breadboard; | - breadboard; | ||
Line 58: | Line 57: | ||
==== Functii utilizate ==== | ==== Functii utilizate ==== | ||
- | * setup : | + | * setup : |
- | * initializam matricea de leduri | + | * initializam matricea de leduri |
- | * configurarea melodiilor pentru buzzer | + | * configurarea melodiilor pentru buzzer |
- | * initializarea altor pini | + | * initializarea altor pini |
- | * | + | * loop : |
+ | * dam play la joc | ||
+ | * readUltrasonicDistance : | ||
+ | * functia de citire a unei prezente in preajma ultrasonicului | ||
+ | * initialiseBoard : | ||
+ | * initializam tabla | ||
+ | * placeMines | ||
+ | * plasam bombele | ||
+ | * isGreen : | ||
+ | * verificam daca ledul aprins este verde | ||
+ | * isBomb : | ||
+ | * verificam daca ledul aprins este rosu | ||
+ | * gameOver : | ||
+ | * daca am aprins un led rosu, jocul s-a terminat si am pierdut | ||
+ | * victory : | ||
+ | * daca am aprins toate ledurile verzi, jocul s-a terminat si am castigat | ||
+ | * printBoard: | ||
+ | * aprindem tabla in stadiul curent in functie de ce leduri au fost aprinse pana in momentul de fata | ||
+ | * play : | ||
+ | * aici initializam tabla si in functie de stadiul actual al jocului se vor intampla anumite lucruri | ||
+ | * daca am pierdut, atunci vom reda o anumita nota, mai grava, la buzzer | ||
+ | * daca putem continua, atunci folosind joystick-ul ne vom deplasa intre leduri si ne vom opri la acel led pe care dorim sa il aprindem si il vom aprinde cu ajutorul ultrasonic-ului | ||
+ | * tabla se va printa actualizata dupa fiecare led aprins | ||
+ | ==== Testele initiale ==== | ||
+ | Initial, totul era functional si matricea se aprindea, am testat-o si in alte moduri dupa cum se vede si in clipul atasat. | ||
+ | {{:pm:prj2021:dbrigalda:teste_initiale.jpeg|}} | ||
+ | [[https://drive.google.com/file/d/13KMrYSONsr68mAoAs_juhofAjjK4yFTx/view?usp=sharing]] | ||
+ | |||
+ | ===== Rezultate obtinute ===== | ||
+ | Codul de pana in prezent este scris astfel incat sa putem sa initializam tabla, sa plasam bombele si sa ne miscam printre leduri. Bombele sunt marcate ca fiind leduri rosii si atunci cand se aprindea un led rosu jocul se pierdea. Initial am gandit jocul ca atunci cand toate ledurile verzi sunt aprinse, jocul sa se termine si sa fie castigat, pe parcurs urma a fi ajustat si sa ajunga la o forma finala mai draguta si probabil mai usor de jucat. Rezultatele obtinute din pacate nu au fost cele dorite, din cauza unui accident (am dat peste un pahar cu apa care a cazut pe placa si cand am vrut sa il ridic, am lovit din greseala placa si a cazut si rezultatele se vad in poza) in urma caruia a fost distrusa placa Arduino si a fost prea tarziu sa procur una noua. | ||
+ | {{:pm:prj2021:dbrigalda:rezultate_finale.jpeg|}} | ||
+ | |||
+ | ===== Arhiva Codului ===== | ||
+ | Specific ca nu este inca testat pentru ca nu am avut pe ce sa il testez | ||
+ | [[https://drive.google.com/file/d/10JRL3Wq7uZrXtJnvncsL-fS06Nbo33dW/view?usp=sharing]] | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== |