This is an old revision of the document!
Proiectul constă într-un joc arcade realizat pe baza unui microcontroller ATmega328P. Jocul funcționează pe ideea generării aleatoare de simboluri pe mai multe linii, asemănător unui slot machine simplificat. La fiecare tură, jucătorul consumă o cantitate de scor pentru a genera o nouă combinație de simboluri. Dacă pe o linie apar mai multe simboluri de același tip, jucătorul primește scor înapoi, iar câștigul este semnalizat prin aprinderea unui LED și activarea unui buzzer.
Scopul proiectului este realizarea unui joc interactiv care combină mai multe concepte studiate în laborator: citirea butoanelor, folosirea întreruperilor, debounce pentru input stabil, controlul LED-urilor, generarea de sunete pe buzzer și afișarea informațiilor pe un display LCD.
Ideea de la care am pornit a fost crearea unui joc simplu, ușor de înțeles de către utilizator, dar suficient de complex din punct de vedere tehnic pentru a integra mai multe componente hardware și module software. Un joc de tip arcade este potrivit deoarece oferă feedback vizual și sonor imediat, iar utilizatorul poate interacționa direct cu sistemul prin butoane.
Proiectul este alcătuit dintr-o parte hardware și o parte software. Componenta centrală este microcontrollerul ATmega328P, care primește input de la butoane, rulează logica jocului, actualizează informațiile afișate pe display și controlează LED-ul și buzzerul.
Sistemul este prototipat pe breadboard pentru a permite testarea rapidă a conexiunilor și modificarea ușoară a circuitului în timpul dezvoltării jocului. Toate componentele sunt conectate la microcontrolerul ATmega328P, care gestionează logica jocului, input-ul de la butoane, afișarea pe display și semnalizarea prin LED și buzzer.
Lista de componente:
Microcontroler: ATmega328P / Arduino UNO compatibil ATmega328P Afișaj: Ecran LCD 2004 + Modul Interfață I2C Input: 4 butoane tactile 6x6x6 mm / butoane tactile pentru breadboard Sunet: Buzzer pasiv 3V / 5V pentru efecte sonore Semnalizare vizuală: LED simplu sau LED RGB pentru indicarea câștigului Prototipare: Breadboard pentru realizarea conexiunilor fără lipire Fire: Fire jumper tată-tată pentru conexiuni pe breadboard Fire module: Fire jumper mamă-tată pentru conectarea LCD-ului I2C și a modulelor externe Pasive: Rezistențe 220Ω / 330Ω pentru LED și 10kΩ pentru butoane, dacă nu se folosește INPUT_PULLUP Alimentare: Baterie de 9V cu adaptor DC Jack 5.5 x 2.1 mm pentru alimentarea plăcii Arduino Suport alimentare: Conector pentru baterie de 9V cu mufă DC compatibilă Arduino
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.