Differences

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

Link to this comparison view

pm:prj2022:cristip:memorygame [2022/05/31 12:08]
florin_catalin.dicu [Concluzii]
pm:prj2022:cristip:memorygame [2022/05/31 14:34] (current)
florin_catalin.dicu [Rezultate Obţinute]
Line 41: Line 41:
  
  
-<​note ​tip> +<​note>​
-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+
 Pentru a scrie codul am folosit Arduino IDE. Pentru a scrie codul am folosit Arduino IDE.
 Pentru a lucra cu un ecran LCD I2C am folosit libraria LiquidCrystal_I2C,​ iar pentru modulul cu ceas in timp real libraria ds3231. Pentru a lucra cu un ecran LCD I2C am folosit libraria LiquidCrystal_I2C,​ iar pentru modulul cu ceas in timp real libraria ds3231.
  
-In funtia de setup am initializat ledurile, butoanele, LCD-ul si modulul cu ceas in timp real. Functia de loop  aprinde pe rand ledurile atata timp cat jucatorul nu a apasat pe niciun buton. Dupa ce a fost apasat pe un buton, se afiseaza nivelul curent, scorul, si se vor apela functiile care genereaza secventa, o afiseaza si o citeste pe cea primita de la jucator. Functia generare_secventa va genera o secventa de culori, corespunzatoare nivelului curent. ​Functie ​show_secventa va afisa secventa de culori generata, iar functia get_secventa asteapta sa primeasca de la jucator o secventa de culori, si verifica daca aceasta este cea corecta. De altfel, functia get_secventa cronometreaza timpul trecut de la afisarea secventei, iar in cazul in care trec 30 de secunde, jucatorul pierde.+In funtia de setup am initializat ledurile, butoanele, LCD-ul si modulul cu ceas in timp real. Functia de loop  aprinde pe rand ledurile atata timp cat jucatorul nu a apasat pe niciun buton. Dupa ce a fost apasat pe un buton, se afiseaza nivelul curent, scorul, si se vor apela functiile care genereaza secventa, o afiseaza si o citeste pe cea primita de la jucator. Functia generare_secventa va genera o secventa de culori, corespunzatoare nivelului curent. ​Functia ​show_secventa va afisa secventa de culori generata, iar functia get_secventa asteapta sa primeasca de la jucator o secventa de culori, si verifica daca aceasta este cea corecta. Daca secventa de culori este cea corecta, scorul si nivelul vor creste, precum si dificultatea. Dificultatea jocului vine din numarul de culori afisate si timpul pentru care o culoare este afisata. De altfel, functia get_secventa cronometreaza timpul trecut de la afisarea secventei, iar in cazul in care trec 20 de secunde, jucatorul pierde. Daca jucatorul introduce o secventa gresita sau i se termina timpul, se va afisa scorul acestuia pentru cateva secunde, dupa care se asteapta apasarea unui buton pentru reinceperea jocului.
  
 </​note>​ </​note>​
Line 56: Line 51:
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<​note ​tip+<​note>​ 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru.+{{:​pm:​prj2022:​cristip:​memorygame3.png?​500|}} 
 +{{:​pm:​prj2022:​cristip:​memorygame4.png?​500|}} 
 +{{:​pm:​prj2022:​cristip:​memorygame1.png?​300|}} 
 +{{:​pm:​prj2022:​cristip:​memorygame2.png?​500|}}
 </​note>​ </​note>​
  
Line 65: Line 63:
  
 <note warning> <note warning>
-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ă ;-). +{{:pm:prj2022:cristip:memory_game.zip|}}
- +
-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**.+
 </​note>​ </​note>​
  
-===== Jurnal ===== 
- 
-<note tip> 
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. 
-</​note>​ 
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
 <​note>​ <​note>​
-Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**.+Datasheet ATmega328P https://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​Atmel-7810-Automotive-Microcontrollers-ATmega328P_Datasheet.pdf 
 + 
 +Datasheet LCD I2C http://​eprints.polsri.ac.id/​4642/​9/​18_DATASHEET%20LCD.pdf 
 + 
 +Datasheet DS3231 https://​datasheets.maximintegrated.com/​en/​ds/​DS3231.pdf 
 + 
 +Laboratoare PM
 </​note>​ </​note>​
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
pm/prj2022/cristip/memorygame.1653988135.txt.gz · Last modified: 2022/05/31 12:08 by florin_catalin.dicu
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