This shows you the differences between two versions of the page.
pm:prj2024:rvirtan:snakecube3d [2024/05/22 14:46] radu.florea [Software Design] |
pm:prj2024:rvirtan:snakecube3d [2024/05/26 22:33] (current) radu.florea [Jurnal] |
||
---|---|---|---|
Line 30: | Line 30: | ||
* 1 Joystick Module (Pe A0 si A1) | * 1 Joystick Module (Pe A0 si A1) | ||
* 1 ecran lcd 1602 cu I2C (pe pinii de SCL si SDA 20 si 21) | * 1 ecran lcd 1602 cu I2C (pe pinii de SCL si SDA 20 si 21) | ||
+ | * 1 buzzer pasiv conectat pe portul 56 (A2) | ||
- | {{:pm:prj2024:rvirtan:snake3d:schemav2.png?700|}} | + | {{:pm:prj2024:rvirtan:snake3d:schema_final_final.jpeg?700|}} |
- | + multe alte beculete pe pinii 21-53 | + | + multe alte beculețe pe pinii 21-53 |
- | Am inceput prin lipirea led-urilor intre ele. (dupa multe incercari de a le lipi pe o sarma, am trecut la rezistente pentru structura de rezistenta=). Am lipit catodul fiecarui beculet intre ele si le-am conestat la arduino prin becurile din colturi astfel incat rezistentele folosite pentru sustinere, nu influenteaza=) | + | Am început prin lipirea led-urilor între ele. (după multe încercări de a le lipi pe o sârmă, am trecut la rezistențe pentru structura de rezistență=). Am lipit catodul fiecărui beculeț între ele și le-am conectat la arduino prin becurile din colturi astfel incât rezistențele folosite pentru susținere, nu influențează=) |
{{:pm:prj2024:rvirtan:snake3d:cub_lipit.jpeg?500|}} | {{:pm:prj2024:rvirtan:snake3d:cub_lipit.jpeg?500|}} | ||
- | Apoi am facut cablajul si le-am pus fiecaruia dintre ele cate o rezistenta , | + | Apoi am fâcut cablajul si le-am pus fiecăruia dintre ele câte o rezistență , |
- | apoi am conectat la mega si lcd-ul cu joystick-ul pentru a incepe sa pot scrie software-ul | + | apoi am conectat la mega si lcd-ul cu joystick-ul pentru a începe sa pot scrie software-ul |
{{:pm:prj2024:rvirtan:snake3d:circuit_dubla_1.jpeg?500|}} | {{:pm:prj2024:rvirtan:snake3d:circuit_dubla_1.jpeg?500|}} | ||
- | M-am decis ulterior sa pun o singura rezistenta pentru toate led-urile | + | M-am decis ulterior să pun o singură rezistență pentru toate led-urile |
{{:pm:prj2024:rvirtan:snake3d:proba_cub.jpeg?450|}} | {{:pm:prj2024:rvirtan:snake3d:proba_cub.jpeg?450|}} | ||
{{:pm:prj2024:rvirtan:snake3d:schema_completa_fizic.png?450|}} | {{:pm:prj2024:rvirtan:snake3d:schema_completa_fizic.png?450|}} | ||
+ | |||
+ | Am pus pe un breadboard separat joystick-ul si 2 butoane pentru a simula un controller | ||
+ | |||
+ | {{:pm:prj2024:rvirtan:snake3d:controller.jpeg?500|}} | ||
---- | ---- | ||
Line 58: | Line 63: | ||
Am început cu un joc clasic de Snake, la care am adăugat două butoane pentru a permite jucătorului să comute între trei niveluri ale cubului. De asemenea, am integrat melodia iconică Nokia, care se redă atunci când jucătorul pierde. | Am început cu un joc clasic de Snake, la care am adăugat două butoane pentru a permite jucătorului să comute între trei niveluri ale cubului. De asemenea, am integrat melodia iconică Nokia, care se redă atunci când jucătorul pierde. | ||
- | În ceea ce prhttps://ocw.cs.pub.ro/courses/lib/images/toolbar/hequal.pngivește logica jocului, jucătorul începe cu un șarpe de lungime 2. Obiectivul este să caute și să consume mere, care apar pe hartă. De fiecare dată când șarpele consumă un măr, lungimea acestuia crește cu 1 unitate. Jocul se încheie atunci când capul șarpelui intră în coliziune cu oricare parte a corpului său. Scorul, care reprezintă numărul de mere consumate, este afișat pe ecranul LCD. | + | În ceea ce privește logica jocului, jucătorul începe cu un șarpe de lungime 2. Obiectivul este să caute și să consume mere, care apar pe hartă. De fiecare dată când șarpele consumă un măr, lungimea acestuia crește cu 1 unitate. Jocul se încheie atunci când capul șarpelui intră în coliziune cu oricare parte a corpului său. Scorul, care reprezintă numărul de mere consumate, este afișat pe ecranul LCD |
- | |||
- | ===== Rezultate Obţinute ===== | ||
<note tip> | <note tip> | ||
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | Biblioteci folosite: |
- | </note> | + | |
- | ===== Concluzii ===== | + | * LiquidCrystal_I2C.h Aceasta bibliotecă este folosită pentru a inițializa și controla afișajul LCD. |
- | ===== Download ===== | + | * Wire.h: În acest cod, Wire.h este inclusă, dar nu este folosită direct. Aceasta este necesară deoarece LiquidCrystal_I2C.h depinde de ea pentru a funcționa. Bibliotecile care folosesc I2C utilizează în mod implicit Wire.h pentru a gestiona comunicația I2C. |
- | <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ă ;-). | ||
- | 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 ===== | + | |
+ | |||
+ | ===== Rezultate Obţinute ===== | ||
<note tip> | <note tip> | ||
- | Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. | + | **DEMO** |
+ | |||
+ | |||
+ | https://www.youtube.com/shorts/L2x6yMSIZvQ | ||
</note> | </note> | ||
+ | |||
+ | |||
+ | ===== Download ===== | ||
+ | |||
+ | [[https://github.com/Vulturul2k/proiect-pm|Link repository GitHub]] | ||
+ | |||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
<note> | <note> | ||
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | Listă cu documente, datasheet-uri, resurse Internet folosite: |
+ | |||
+ | **Resurse Software** | ||
https://github.com/robsoncouto/arduino-songs/blob/master/nokia/nokia.ino | https://github.com/robsoncouto/arduino-songs/blob/master/nokia/nokia.ino | ||
+ | |||
+ | **Resurse Hardware** | ||
+ | |||
+ | |||
https://www.youtube.com/watch?v=TesnKjba0l0 | https://www.youtube.com/watch?v=TesnKjba0l0 | ||
https://ocw.cs.pub.ro/courses/pm/prj2015/ddragomir/the_dude | https://ocw.cs.pub.ro/courses/pm/prj2015/ddragomir/the_dude | ||
Line 96: | Line 113: | ||
<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> | ||
+ | |||
+ | |||
+ | |||
+ | |||