Simon Says - LEONTE COSMIN FLORIN 331CB

Introducere

Prezentarea pe scurt a proiectului vostru:

  • Simon Says este un joc interactiv ce presupune obținerea aceleaiasi secvențe de butoane precum se aprind culorile pe led
  • Scopul lui este de a reuși cât mai multe secvențe corecte pentru a aduna un scor cât mai mare
  • M-am inspirat în alegerea ideii de la joculetul Șimon Says din Keep Talking and Nobody Explodes
  • este util întrucât este un joc interactiv și foarte provocator întrucât trebuie sa reții secvențe destul de lungi la un moment mai avansat

Descriere generală

Schema Bloc:

Implementarea jocului Șimon Says folosind LCD, 4 butoane și trei LED-uri de culoare rosie, galbena si verde. La inceput pe LCD apare scris Simon Says. Apasa Reset pentru Start. Dupa apaseara butonului de RESET(Butonul Alb) incepe runda si se vor lumina in secventa cele trei LED-uri. Apoi apare pe ecran scorul jucatorului si mesajul Randul tau. Jucatorul trebuie sa realizeze aceeasi secventa ca cea afisata mai devreme prin LED-uri. Daca a reusit se incepe o noua runda. Altfel apare pe LCD Ai gresit. Apasa Reset pentru resetare. Daca doreste sa inceapa din nou jocul trebuie apasat reset.

Hardware Design

Aici puneţi tot ce ţine de hardware design:

  • listă de piese:
  1. Placuta Arduino Uno R3
  2. BreadBoard
  3. fire tata-tata
  4. fire mama-tata pentru conectarea modului I2C al led-ului la breadboard si placuta
  5. 4 butoane, cu culori diferite atasate(ALB, VERDE, GALBEN, ROSU)
  6. LCD cu modul I2C
  7. buzzer
  8. 3 LED-uri de culori diferite(VERDE, GALBEN, ROSU)
  • Schema Electrica, realizata pe site-ul ThinkerCad Circuits:

Software Design

Librării utilizate

  • LiquidCrystal_I2C.h – pentru afișarea mesajelor pe un LCD 16×2 conectat prin I2C (adresă 0x27)

Structura aplicației

  1. Inițializare (setup)
    • Configurarea pin-urilor pentru LED-uri, butoane și buzzer
    • Inițializarea LCD-ului și activarea iluminării
    • Generarea secvenței aleatoare și pornirea jocului
  1. Start joc (resetGame)
    • Afișarea instrucțiunilor pe LCD
    • Așteptarea apăsării butonului de reset
    • Inițializarea secvenței cu 3
  1. Derulare joc (loop)
    • Afișarea scorului curent
    • Redarea vizuală și sonoră a secvenței
    • Citirea inputului de la utilizator
    • Verificarea răspunsului
    • Avansare în joc sau restart în caz de greșeală

Funcționalități principale

  • Control prin 3 butoane colorate + 1 buton de reset
  • Feedback audio pentru fiecare apăsare
  • LED-uri pentru culorile: roșu, galben, verde
  • LCD cu mesaje (scor, instrucțiuni, eșec)
  • Joc continuu până la greșeală
  • Resetare prin butonul reset

Comportamente cheie

  • Redare secvență: LED + ton pentru fiecare pas
  • Citire input: detectarea apăsării și feedback
  • Verificare: compararea secvenței introduse cu cea generată
  • Pierderea: afișarea mesajului și așteptare restart

Rezultate Obţinute

Am implementat proiectul cu succes. Functioneaza asa cum a fost intentionat si cum este descris in descrierea generala.

Link videoclip youtube: https://www.youtube.com/shorts/MOuBq3q616s

Concluzii

Download

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.

proiectpmsimonsayscod.zip

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2025/rnedelcu/cosmin.leonte1201.txt · Last modified: 2025/05/28 13:40 by cosmin.leonte1201
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