This shows you the differences between two versions of the page.
pm:prj2021:cghenea:70 [2021/05/23 17:21] stefan.hoisan |
pm:prj2021:cghenea:70 [2021/05/26 19:27] (current) stefan.hoisan |
||
---|---|---|---|
Line 26: | Line 26: | ||
**2. Schema electrica:** | **2. Schema electrica:** | ||
- | Am realizat schema electrica in Fritzing si am incarcat propriul fisier .fzpz pentru importarea LCD-ului. | + | Am realizat schema electrica in Fritzing si am incarcat propriul fisier .fzpz (atat schema, cat si fisierul pentru import sunt disponibile in arhiva) pentru importarea LCD-ului. Intrucat LCD-ul functioneaza la o tensiune de 3.3V, am folosit rezistente de 1kOhm pentru legarea la placa Arduino UNO. |
{{:pm:prj2021:cghenea:schemaelectrica_hoisanstefan_snakepowerups.jpg?550|}} | {{:pm:prj2021:cghenea:schemaelectrica_hoisanstefan_snakepowerups.jpg?550|}} | ||
===== Software Design ===== | ===== Software Design ===== | ||
+ | * Ca mediu de dezvoltare am folosit Arduino Software IDE 1.8.15 pentru scrierea de cod si Fritzing pentru schema electrica | ||
+ | * Pentru interactionarea cu LCD-ul am instalat bibliotecile: Adafruit ILI9341 1.5.8, Adafruit GFX 1.10.7, TFT 1.0.6 | ||
+ | * Pentru implementare, m-am folosit si de biblioteca FreeRTOS | ||
+ | |||
+ | #include "SPI.h" | ||
+ | #include "Adafruit_GFX.h" | ||
+ | #include "Adafruit_ILI9341.h" | ||
+ | #include "Arduino_FreeRTOS.h" | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
+ | Am obtinut o varianta a jocului Snake in care scopul jucatorului este sa stranga cat mai multe puncte in timp ce incearca sa nu atinga peretii tabelei de joc sau obstacolele. Punctele sunt oferite la fiecare actualizare a frame-ului, dar si la colectarea de mancare. Tipurile de mancare sunt urmatoarele: mancarea verde dubleaza viteza de miscare pentru 2 secunde (timp in care si scorul este dublat), mancarea galbena adauga o viata bonus, iar mancarea maro este cea normala. | ||
+ | |||
+ | {{:pm:prj2021:cghenea:snakepowerups_1_.jpeg?400|}} | ||
+ | {{:pm:prj2021:cghenea:snakepowerups_7_.jpeg?400|}} | ||
+ | {{:pm:prj2021:cghenea:snakepowerups_2_.jpeg?300|}} | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
+ | Personal, tot proiectul in sine a fost o adevarata provocare, partea cea mai grea fiind asamblarea hardware. Am intampinat probleme la legatura dintre LCD si Arduino printr-un translator de nivel logic si am renuntat ulterior la aceasta abordare pentru a folosi rezistentele.\\ | ||
+ | In final, pot spune ca a meritat. Satisfactia completarii proiectului, dar si experienta unica de a lucra cu o placa Arduino mi-au adus un mare plus. | ||
===== Download ===== | ===== Download ===== | ||
+ | {{:pm:prj2021:cghenea:snake_powerups.zip|}} | ||
+ | ===== Jurnal ===== | ||
+ | * 24.04 - alegerea temei de proiect | ||
+ | * 25.04 - realizarea paginii proiectului | ||
+ | * 27.04 - strangerea tuturor componenetelor | ||
+ | * 15.05 - terminarea asamblarii hardware | ||
+ | * 18.05 - realizarea unei variante a jocului, dar fara obstacole, powerups, vieti | ||
+ | * 22.05 - definitivarea jocului | ||
+ | * 23.05 - definitivarea paginii proiectului | ||
===== Bibliografie/Resurse===== | ===== Bibliografie/Resurse===== | ||
+ | [[https://fritzing.org/|Fritzing]] | ||
+ | [[https://github.com/adafruit/Adafruit_ILI9341|Adafruit_ILI9341]] | ||
+ | [[https://github.com/adafruit/Adafruit-GFX-Library|Adafruit-GFX]] | ||
+ | [[https://drive.google.com/file/d/1jh8DkvOspJ7oyA_hPoRxqsp9t-BCR3zK/view?usp=sharing|Link Demo]] | ||
+ | [[https://www.youtube.com/watch?v=beyDkTBhpgs&t=147s|Tutorial schema electrica]] | ||
+ | [[https://ocw.cs.pub.ro/courses/pm/prj2021/cghenea/70?do=export_pdf|Pagina PDF]] |