This shows you the differences between two versions of the page.
pm:prj2021:abasoc:connect4 [2021/06/02 17:15] stefan.popa99 [Software Design] |
pm:prj2021:abasoc:connect4 [2021/06/02 19:38] (current) stefan.popa99 [Bibliografie/Resurse] |
||
---|---|---|---|
Line 37: | Line 37: | ||
* **Ecranul de final** - Apare textul "Congrats Player X, Press any button to start", ale cărui culori se schimbă o dată pe secundă. | * **Ecranul de final** - Apare textul "Congrats Player X, Press any button to start", ale cărui culori se schimbă o dată pe secundă. | ||
\\ | \\ | ||
- | Arduino Slave se ocupă de ținutul scorului și al timer-ului de 10 secunde pentru timeout. El anunță master-ul atunci când a trecut timpul sau dacă jucătorul care a câștigat ultima rundă a câștigat și meciul. Scorul este ținut cu ajutorul a 2 LED-uri în format binar, iar atunci când un jucător câștigă meciul, LED-urile sale pâlpâie. | + | Arduino Slave se ocupă de ținutul scorului și al timer-ului de 10 secunde pentru timeout. El anunță master-ul atunci când a trecut timpul sau dacă jucătorul care a câștigat ultima rundă a câștigat și meciul. Scorul este ținut cu ajutorul a 2 LED-uri în format binar, iar atunci când un jucător câștigă meciul, LED-urile sale pâlpâie.\\ |
\\ | \\ | ||
- | Biblioteca TFT.h expune un obiect TFT ce conține metodele necesare folosirii ecranului: scriere text, desenare dreptunghiuri si cercuri. Aceste funcții se apelează doar atunci când se produc schimbări în starea jocului, codul neefectuând astfel instrucțiuni inutile. | + | Biblioteca TFT.h expune un obiect TFT ce conține metodele necesare folosirii ecranului: scriere text, desenare dreptunghiuri si cercuri. Aceste funcții se apelează doar atunci când se produc schimbări în starea jocului, codul neefectuând astfel instrucțiuni inutile.\\ |
+ | \\ | ||
+ | [[https://youtu.be/MX2fN1sgkDs|Demo Joc]] | ||
====== Rezultate Obținute ====== | ====== Rezultate Obținute ====== | ||
- | TODO | + | {{:pm:prj2021:abasoc:cristip1.png?200|}}{{:pm:prj2021:abasoc:cristip2.png?200|}} |
+ | |||
+ | {{:pm:prj2021:abasoc:cristip4.png?200|}}{{:pm:prj2021:abasoc:cristip3.png?200|}} | ||
====== Concluzii ====== | ====== Concluzii ====== | ||
- | TODO | + | * Este primul proiect la care a trebuit să folosesc piese hardware și totodată unul dintre cele mai "fulfilling", întrucât am avut libertatea să creez singur toate elementele acestuia, de la interfața jocului și pana la așezarea butoanelor, LED-urilor si a ecranului. \\ |
+ | * Am înteles mai bine cum funcționează timer-ele și am aprofundat comunicarea I2C | ||
+ | * Am aflat modalități de a face anumite acțiuni să aștepte fără a folosi delay() și am întâmpinat și bug-uri din cauza folosirii acestuia, care sunt destul de anevoios de depistat având în vedere limitarea folosirii unei singure seriale o dată de către Arduino IDE | ||
+ | * Lucrul cu plăcuța Arduino este foarte ușor și biblioteca pentru folosirea ecranului dispune de destul de multe facilități, motiv pentru care se pot implementa o mulțime de alte jocuri, de exemplu X si 0, Snake, șah, sau chiar ceva asemanător [[https://chromedino.com/ | chrome dino game]]. | ||
====== Download ====== | ====== Download ====== | ||
<note tip> | <note tip> | ||
- | Link pagină: [[pm:prj2021:abasoc:connect4 | Connect4]]\\ | + | Pagina în format [[https://ocw.cs.pub.ro/courses/pm/prj2021/abasoc/connect4?do=export_pdf | PDF]]\\ |
- | Pagina în format PDF: [[https://ocw.cs.pub.ro/courses/pm/prj2021/abasoc/connect4?do=export_pdf | PDF]]</note>\\ | + | Arhiva: {{:pm:prj2021:abasoc:connect4.zip|}} |
+ | </note>\\ | ||
====== Bibliografie/Resurse ====== | ====== Bibliografie/Resurse ====== | ||
- | [[https://ocw.cs.pub.ro/courses/pm/prj2021/abasoc/connect4?do=export_pdf | PDF]] | + | Link pagină: [[pm:prj2021:abasoc:connect4 | Connect4]]\\ |
+ | Demo youtube: https://youtu.be/MX2fN1sgkDs \\ | ||
+ | Funcții Arduino: https://www.arduino.cc/reference/en/ \\ | ||
+ | https://randomnerdtutorials.com/guide-to-1-8-tft-display-with-arduino/ \\ | ||
+ | https://ardushop.ro/ro/home/865-modul-lcd-spi-128x160.html?search_query=Modul+LCD+SPI+128x160&results=392 \\ | ||
+ | https://github.com/lcdwiki/LCDWIKI_SPI \\ | ||
+ | Software schema electrică: https://www.autodesk.com/ \\ | ||
+ | Schema bloc: https://creately.com/ |