Differences

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

Link to this comparison view

pm:prj2021:amocanu:nintendo_switch_de_buget [2021/04/25 18:41]
constantin.brabete created
pm:prj2021:amocanu:nintendo_switch_de_buget [2021/06/03 08:39] (current)
constantin.brabete
Line 1: Line 1:
- 
 ====== Nintendo Switch de buget ====== ====== Nintendo Switch de buget ======
  --- //​[[constantin.brabete@stud.acs.upb.ro|Constantin-Adrian BRABETE (101569)]] 2021/04/25 17:41//  --- //​[[constantin.brabete@stud.acs.upb.ro|Constantin-Adrian BRABETE (101569)]] 2021/04/25 17:41//
Line 6: Line 5:
 ===== Introducere ===== ===== Introducere =====
  
-Proiectul propune realizarea unei console retro care pune la dispozitie utilizatorului ​jocuri. Acestea pot fi jucate de unul sau 2 jucatori.+Proiectul propune realizarea unei console retro care pune la dispozitie utilizatorului ​jocuri. Acestea pot fi jucate de unul sau 2 jucatori.
  
 Scopul acestui proiect este familiarizarea cu Arduino si crearea unei jucarii nostalgice interesante care sa aduca bucuria unor jocuri clasice. Scopul acestui proiect este familiarizarea cu Arduino si crearea unei jucarii nostalgice interesante care sa aduca bucuria unor jocuri clasice.
Line 13: Line 12:
  
 Consola este prevazuta cu 3 jocuri: Consola este prevazuta cu 3 jocuri:
-  - Snake - Singel ​Player +  - Snake - Single ​Player 
-  - Pong - Multiplayer +  - Tetris - Single Player - WIP 
-  - TBD -TBD+  - Pong - Multiplayer ​- WIP 
 +  - Doodle - Single Player 
 +  - Maze - Single Player 
 + 
 +La aceasta sunt conectate 2 controllere,​ unul format din 4 butoane iar altul format dintr-un joystick. 
 + 
 +Consola prezinta de asemenea 2 display-uri,​ un ecran LCD cu 2 randuri care arata meiul consolei si lista de jocuri, iar in timpul jocului arata informatii aditionale cum ar fi numarul de vieti si scorul. Al doilea display este o matrice Led de 8x8 pe care se ruleaza jocul in sine. 
 + 
 +Consola porneste in modul de meniu cu matricea stinsa, si ecran ul in modul de meniu. In modul de meniu pe ecran ul led sunt 3 tab uri, navigarea prin meniu se face cu joystick ul, iar pentru selectie se apas pe joystick.  
 + 
 +Taburile din meniu sunt: 
 +  * Games - Lista de jocuri de unde se selecteaza ce joc poate fi rulat  
 +  * Highscores - Lista cu cele mai mari punctaje pentru fiecare joc 
 +  * Settings ​Setari pentru consola (momentan poate fi setata o variabila)
  
-La aceasta sunt conectate 2 controllere formate din 4 butoane fiecare. 
 ===== Hardware Design ===== ===== Hardware Design =====
 +==== Diagrama ====
  
 +{{:​pm:​prj2021:​amocanu:​budgetswitch.png |}}
  
 +
 +==== Schema Eagle ====
 +
 +{{:​pm:​prj2021:​amocanu:​proiectpm_nintendoswitchdebuget.png?​700 |}}
 +
 +==== Lista piese ====
 +
 +  * Ecran LCD
 +  * Placa Arduino UNO
 +  * 5 butoane
 +  * joystick
 +  * 3 breadboard-uri
 +  * Matrice LED 8x8
 +  * fire
 ===== Software Design ===== ===== Software Design =====
  
 +Functionalitatea poate fi descrisa aproximativ cu un state machine, startea principala este loop ul de meniu in care se asteapta dupa update uri sus jos de la joystick, sau selectii ale unui tab din meniu. ​
 +
 +La selectarea unui joc se modifica o variabila de stare care face sa se selecteze un alt loop, unul dintre loop urile de joc care ruleaza logica jocului si porneste matricea.
 +
 +Pentru display ul de joc si afisarea si deplasarea led urilor se foloseste bibloteca Led Control, iar pentru ecran ul lcd folosesc bibloteca LiquidCrystal.h.
 +Logica jocurilor actuale este asemataore din punct de vedere al deplasarii, core gameplay ul pentru fiecare este deplasarea unui led pe matrice. ​
 +
 +In cazul lui snake dificultatea mai mare a fost miscarea cozi dupa capul sarpelui, aceasta se face intr-un mod asemanator cu o stiva in care se deplaseaza capul iar apoi coada urmeaza locurile eliberate.
 +
 +Pentru Maze se creeaza o matrice de start cu pereti apoi se genereaza o capcana intr-o pozitie random.
 +Iar pentru doodle se curata matricea si apoi se deplaseaza led ul si in momentul apasari pe joystick se lasa led ul aprins pana la inchiderea matricii.
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
 +{{:​pm:​prj2021:​amocanu:​rezultatenintendoswitch.jpeg?​700 |}}
  
 ===== Concluzii ===== ===== Concluzii =====
  
 +Executia proiectului a fost cea mai interesanta activitate didactica din acest semestru, achizitionarea pieselor, prototiparea si faptul ca la final ramai cu o mica jucarie au facut efectuarea proiectului mai usoara comparativ cu temele de la alte materii. As dori sa continui proiectul pe vara si sa termin si celelate idei care le am pentru proiect
  
 ===== Download ===== ===== Download =====
  
- +[[https://​github.com/​SexySparrow/​ProiectPM_NintendoSwitch/​blob/​main/​led_blink.ino|Cod sursa]] 
-===== Jurnal ===== +[[https://​www.youtube.com/​watch?​v=3b5d_-yoxJY&​ab_channel=AdrianBrabete|Video prezentativ]]
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
 +{{:​pm:​prj2021:​amocanu:​nintendo_switch_de_buget_1_.pdf|}}
 +Pentru logica jocurilor am folosit mai multe tutoriale si alte resurse online.
pm/prj2021/amocanu/nintendo_switch_de_buget.1619365269.txt.gz · Last modified: 2021/04/25 18:41 by constantin.brabete
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