Table of Contents

Andrei Ciprian APRODU - X si O

Autorul poate fi contactat la adresa: Login pentru adresa

Introducere

Proiectul consta in implementarea pe placuta a unui joc de X si 0 ce poate fi jucat impotriva unui alt jucator sau impotriva unui AI. De asemenea vor exista 3 led-uri pentru a tine scorul si un difuzor ce v-a anunta cand se termina jocul.

Descriere generală

Input-ul jocului va veni de la butoane care vor avea rol de miscare prin matrice de led-uri si de selectare a pozitiei. In functie de input, output-ul se va afisa pe matricea de led-uri, iar daca este cazul pe led-urile ce tin scorul.

Hardware Design

Piese obligatorii:

Piese X si 0:

Schema Electrica:

Software Design

Pentru dezvoltarea codului am folosit Atmel Studio, respectiv Programmer's Notepad.

Fiecare led este considerat un patratel din jocul de X si 0. Led-ul ce marcheaza pozitia de miscare este rosu, led-urile selectate de jucator sunt albastre, iar cele selectate de AI verzi.

Led-urile nu sunt tinute aprinse in permanenta deoarece am folosit rezistente foarte mici, astfel la fiecare moment de timp (10 ms) este activa o singura coloana.

Deoarece rezistenta este pusa pe catod-ul comun, led-urile vor folosi doar culorile de baza, RGB, fara a le combina.

Evidenta scorului este tinuta astfel: in momentul victoriei, fie a player-ului fie a ai-ului, se vor aprinde led-urile playeru-ului si buzzer-ul va scoate un sunet de N ori, unde N este numarul meciurilor castigate de acesta, iar dupa o scurta pauza, se va intampla similar si pentru AI.

Rezultate Obţinute

Concluzii

Proiectul a fost interesant, insa nu din punct de vedere software, ci hardware.

Download

Arhiva cu fisier sursa, makefile si schema electrica: pm_aproduc.zip.