This is an old revision of the document!
Proiectul „Bomb Defusal Duel” reprezintă un joc embedded multiplayer realizat pe platforma ATmega328P Xplained Mini.
Jocul simulează dezamorsarea unei bombe prin introducerea unei secvențe corecte de butoane într-un timp limitat. Proiectul utilizează multiple periferice hardware și software pentru a crea o experiență interactivă completă:
Scopul principal al proiectului este utilizarea integrată a funcționalităților studiate în cadrul laboratoarelor PM pentru realizarea unui sistem embedded interactiv și modular.
Jocul funcționează în două faze principale:
La începutul fiecărei runde, unul dintre jucători introduce o secvență secretă formată din 4 culori folosind butoanele disponibile.
După confirmarea secvenței, celălalt jucător trebuie să reproducă secvența corectă înainte de expirarea timpului.
Sistemul oferă:
Jocul continuă până când unul dintre jucători ajunge la 5 victorii.
În etapa actuală au fost integrate și testate toate componentele hardware principale necesare funcționării jocului.
Au fost realizate:
Toate componentele funcționează simultan și au fost validate individual înainte de integrarea finală.
| Componentă | Rol |
|---|---|
| ATmega328P Xplained Mini | Microcontroler principal |
| Breadboard | Prototipare și interconectare |
| 4 x LED-uri | Feedback vizual pentru acțiuni |
| 4 x rezistențe 220Ω | Limitarea curentului pentru LED-uri |
| 5 x butoane | Introducerea comenzilor |
| buzzer pasiv | Generarea efectelor sonore |
| display OLED SSD1306 | Afișarea informațiilor |
| fire jumper | Realizarea conexiunilor |
| Componentă | Pin microcontroler |
|---|---|
| LED roșu | PB0 |
| LED galben | PB1 |
| LED albastru | PB2 |
| LED verde | PB3 |
| Buton roșu | PD2 |
| Buton galben | PD3 |
| Buton albastru | PD4 |
| Buton verde | PD5 |
| Buzzer | PD6 |
| Buton confirmare | PD7 |
| Buton onboard START/STOP | PB7 |
| OLED SDA | PC4 |
| OLED SCL | PC5 |
Pinii au fost aleși astfel încât să permită organizarea logică și eficientă a componentelor.
LED-urile au fost grupate pe PORTB pentru simplificarea controlului ieșirilor digitale.
Butoanele au fost grupate pe PORTD pentru utilizarea facilă a intrărilor digitale și activarea rezistențelor interne de tip pull-up.
Display-ul OLED utilizează protocolul I2C, fiind conectat la:
conform configurației hardware standard a microcontrolerului ATmega328P.
În cadrul proiectului au fost utilizate multiple concepte și funcționalități prezentate în laboratoare:
Implementarea software este complet funcțională și include:
Arhitectura proiectului este modulară, funcționalitățile fiind separate în funcții dedicate pentru:
| Bibliotecă | Rol |
|---|---|
| Wire.h | Comunicare I2C |
| Adafruit_GFX.h | Funcții grafice pentru display |
| Adafruit_SSD1306.h | Control display OLED SSD1306 |
Elementul principal de noutate al proiectului este implementarea unui joc multiplayer embedded complet interactiv, utilizând exclusiv resurse hardware limitate ale microcontrolerului.
Proiectul combină:
pentru a crea o experiență similară unui joc real de tip „bomb defusal”.
Fiecare componentă a fost testată individual înainte de integrarea finală:
Validarea finală a constat în rularea completă a jocului cu doi jucători.
Au fost realizate următoarele optimizări:
Proiectul demonstrează integrarea eficientă a mai multor periferice hardware și concepte software într-un sistem embedded interactiv.
În cadrul proiectului au fost utilizate noțiuni importante precum:
Rezultatul final este un joc multiplayer complet funcțional și extensibil.