Table of Contents

Emilia-Elena PALAGHIŢĂ (78278) - Connect4

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul presupune realizarea jocului Connect4 folosind un LCD grafic. Scopul acestuia este familiarizarea cu realizarea unui proiect care integrează atât partea hardware, cât și software. Jocul este implementat avand modurile singleplayer si multiplayer, cu posibilitatea de a alege culoarea preferata si dificultatea jocului.

Descriere generală

Hardware Design

Lista de componente:

Denumire Număr
Placa de bază PM 2018 1
Microcontroller ATmega 324 1
Modul LCD SPI ILI9163 1
LED 2
Buton 3
Buzzer 1

Software Design

Proiect a fost realizat in C++, deoarece am gasit biblioteca pentru LCD doar sub aceasta forma.

Continut surse:

  1. digitalpin - Folder ce contine DigitalPin.cpp
  2. ili9163 - Folder ce contine ii9163lcd.cpp, colors.h in care sunt definite culorile si font5x8.h
  3. spi - Folder ce contine spi.cpp
  4. main.cpp - sursa proiectului
  5. Makefile
  6. README

Biblioteca folosita pentru LCD a fost descarcata de aici: spi

Functii folosite din cadrul bibliotecii:

Functii implementate in sursa principala:

Rezultate Obţinute

Jocul presupune implementarea modurilor Singleplayer si Multiplayer, in fiecare din cadrul acestora putand fi aleasa culoarea dorita a jucatorului.

In cazul in care se alege modul multiplayer, player 1 va avea posibilitatea de a alege o culoare si automat player 2 va primi cea de-a doua culoare. Pe parcursul turei unui jucator, un LED de culoare rosie sau galbena se va aprinde pentru a evidentia care jucator este cel curent. La fiecare miscare de disc, buzzer-ul va scoate un sunet iar atunci cand un disc este lansat pe o coloana, se verifica daca aceasta este plina si daca nu se pozitioneaza in prima casuta disponibila apoi buzzer-ul iar va scoate un sunet.

In modul singleplayer jucatorul poate alege dificultatea jocului: easy sau normal. Modul de joc este acelasi ca cel de mai sus.

Concluzii

A fost un proiect din care am avut multe de invatat: cum se programeaza un microcontroller, cum se trateaza intreruperi pe butoane, cum se foloseste un buzzer sau cum se citeste un datasheet. La proiect am lucrat cu drag si consider ca efortul depus a meritat, rezultatul fiind un joc functional Connect4 cu mici imbunatatiri fata de cel clasic.

Download

Sursa proiect: pm_emiliapalaghita_334ca.zip

Jurnal

  • 22 Aprilie - Crearea paginii si alegerea proiectului, realizarea schemei bloc si descrierea pe scurt a proiectului ales
  • 6 Mai - Realizarea schemei electrice
  • 23 Mai - Documentatia finala
  • 25 Mai - Prezentare proiect

Bibliografie/Resurse

  1. Datasheet microcontroller - doc8272.pdf
  2. Datasheet LCD ILI9163 - ILI9163.pdf
  3. Biblioteca LCD ILI9163 - spi