This is an old revision of the document!


2048 Sounds

Introducere

Scopul proiectului este implementarea jocului 2048 folosind Arduino UNO. Input-ul utilizatorului va fi receptionat prin butoane, iar output-ul, starea curenta a jocului, va fi afisata pe un ecran LCD. Jocul va fi acompaniat de diverse efecte sonore si melodii in stil retro emise de un modul buzzer pasiv, in functie de starea in care se afla jocul.

Descriere generala

Scopul jocului 2048 este ca, prin translatarea unor patrate numerotate cu multipli de 2 si situate intr-o matrice 4×4, sa se obtina un patrat care sa contina numarul 2048, fara ca toata matricea sa fie in totalitate ocupata si nicio miscare disponibila ramasa.

Input-ul jucatorului va fi captat folosind 4 butoane, care vor reprezenta directiile in care se vor misca patratele in matrice: stanga, sus, jos si dreapta.

Output-ul jocului va fi afisat folosind un ecran LCD grafic, iar buzzer-ul va emite sunete la apasarea butoanelor si in fiecare ecran al jocului.

Schema bloc 2048Sounds: 2048Sounds schema bloc

Hardware Design

Schema Electrica 2048Sounds

Lista componentelor folosite pentru proiect:

Componente Nr. bucati
Placă de dezvoltare UNO compatibilă Arduino - DIP 1
Cablu USB A-B 1m Arduino Mega, UNO, imprimanta 1
Breadboard 830 puncte MB-102 2
65 x fire jumper 1
Buton MIC-Push Button-trough hole Negru 4
Rezistor 1/4W - Valoare rezistenta : 10K 4
Rezistor 1/4W - Valoare rezistenta : 220 1
Display LCD 128*64 pixeli 5V iluminat Albastru 1
Modul Buzzer - Tip : Pasiv 1
Fire Dupont mama-tata 20cm 6
Fire Dupont tata-tata 20cm 10


Primul lucru pe care l-am facut a fost sa sudez/lipesc o bareta de 20 pini la display pentru a-l putea conecta la breadboard si respectiv la Arduino. Nu a fost prima oara cand lucrez cu asta, dar a fost foarte rewarding cand am vazut cum se aprindea display-ul, mai ales ca nu prea am avut contact pana acum cu componente hardware la un nivel atat de low.

Dupa aceea, am conectat cele 4 butoane cu rezistente 10k de pull-down pentru a capta input-ul jucatorului.

Initial, am comandat 3 buzzere: 1 buzzer simplu activ, 1 buzzer simplu pasiv si 1 modul de buzzer pasiv. Dupa testarea acestora, am decis sa folosesc modulul de buzzer pasiv, avand cel mai bun sunet si fiind cel mai facil de folosit.

Modulul buzzer pasiv functiona anormal sau chiar prost, fiind conectat direct la 5V. Dupa ce am adaugat o rezistenta de 200 ohmi, modulul a functionat perfect.


Am ales sa folosesc 2 breadboard-uri MB-102 pentru integritatea fiecarei componente hardware si pentru a avea mai mult spatiu la dispozitie pentru a actiona cele 4 butoane. Pe primul breadboard am legat display-ul si modulul buzzer-ului pasiv, iar pe cel de-al doilea breadboard am pus in centru butoanele care vor actiona, in aceasta ordine, miscarile stanga, sus, jos si dreapta (de la stanga la dreapta pe breadboard).
 Design Hardware 2048Sounds

Software Design

Rezultate obtinute

Concluzii

Download

Jurnal

  1. 25.04.2021 : Creare pagina + prima editare
  2. 26.04 - 08.05.2021 : Research in vederea design-ului hardware
  3. 08.05.2021 : Plasare comanda Ardushop
  4. 10.05.2021 : Obtinere componente
  5. 10.05 - 12.05.2021 : Research in vederea design-ului software
  6. 14.05.2021 : Sudare display
  7. 15.05.2021 : Finalizare hardware
  8. 16.05 - 18.05.2021 : Finalizare in proportie de 85% software
  9. 20.05 - 31.05.2021 : Refactoring cod, hardware updates, bug fixes
  10. 01.06.2021 : Finalizare 100%

Bibliografie si Resurse

pm/prj2021/avaduva/2048sounds.1622578704.txt.gz · Last modified: 2021/06/01 23:18 by mihai_daniel.radu99
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