Autorul poate fi contactat la adresa: Login pentru adresa
Proiectul consta in reproducerea jocului X si O (Tic-Tac-Toe) → playtictactoe.org
(2) Jocul va avea 2 protagonisti: fiecare jucator isi va alege o culoare a led-ului pe care o va folosi.
(3) Led-urile vor lumina in functie de fiecare jucator, pentru a reflecta starea jocului.
(4) Pentru a muta alternativ pe matricea de led-uri, se vor utiliza 4 butoane de selectie (sus ↑, jos ↓, stanga ←, dreapta →) ce vor simula deplasarea pe coloane si linii.
(5) Pentru aprinderea led-ului dorit se va folosi un buton de acceptare a selectiei - 'OK'.
(6) Cand jocul s-a terminat, se va lumina led-ul corespunzator castigatorului.
(7) Scopul jocului consta in completarea cu trei semne proprii (culori) pe o linie, coloana sau diagonala.
(8) Cand s-a ocupat toata matricea, respectiv unul dintre jucatori nu mai are unde sa puna un simbol, jocul va fi incheiat cu remiza.
Utilizatorii sa se debaraseze de jocul pe hartie sau Internet si sa-si testeze abilitatile unul impotriva celuilalt intr-un mod mai ingenios - ingineresc.
'Life's crazy enough so I like to keep things simple!'
Am ales sa merg pe simplitate si sa readuc jocul mult iubit din copilarie, “X & 0”, intrucat este cotat unul dintre cele mai cunoscute jocuri de logica (testeaza noi strategii pentru a castiga).
[Mine]: familiarizarea cu jocul in alta forma decat cea actuala (pe placuta);
[Utilizatori]: entuziasmul de a dezbate noi strategii, respectiv aplicarea lor pentru a castiga jocul;
1. BUTOANE : Cel mai simplu mod de interactiune al utilizatorului cu un microcontroller;
→ folosite pentru a naviga pe matricea de led-uri (4 butoane pentru selectie - sus ↑, jos ↓, stanga ←, dreapta →);
→ folosite la setarea led-ului ales de fiecare jucator (un buton pentru acceptarea selectiei - OK);
2. ATMEGA324A-PU: Preia semnalele primite de la butoane si pe baza unui algoritm, modifica starea matricii de led-uri - va realiza jocul de lumini pe led-uri;
3.MATRICE 3×3 DE LED-URI BICOLORE: Dispozitive de mici dimensiuni, ce emit lumina trecand un curent printr-un material semiconductor (jonctiune p-n);
→ compusa din 9 led-uri bicolore ce se aprind in functie de jucator (rosu - X & verde - O);
→ pastreaza led-urile alese de fiecare jucator aprinse;
NUME COMPONENTA | CANTITATE |
---|---|
LED-URI Bicolore de 3 mm Rosu si Verde cu Catod Comun | 9 |
Butoane (sus, jos, stanga, dreapta, selectie) 6x6x6 | 5 |
Placa de test | 1 |
Rezistente 1kΩ (cate 2 rezistente pentru fiecare led - o rezistenta pentru fiecare culoare) | 18 |
Fire colorate mama-mama (conectare placa de baza cu placa de test: 2 fire x led, 1 fir x buton, 1 fir alimentare leduri, 1 fir alimentare butoane) | 25 |
Header de pini tata 40p (18p - 9 led-uri [2p pentru fiecare led], 5p - 5 butoane, 1p - alimentare leduri, 1p - alimentare butoane) | 1 |
Placa de baza | 1 |
Fire de legatura (2 fire x led (9 leduri) = 18 fire, 2 fire x buton (5 butoane) = 10 fire, 1 fir alimentare leduri, 4 fire aditionale, 1 fir alimentare butoane) | 34 |
PA-uri + PB-uri + PC-uri pentru leduri, PD-urile pentru butoane;
Descrierea codului aplicaţiei (firmware):
Fiecare led a fost retinut intr-o structura “led” in care retin pinii si adresa porturilor atat pentru culoarea rosie, cat si pentru verde. Pentru a tine minte tabla dupa fiecare alegere a jucatorilor, ledurile au fost organizate intr-o matrice de 3×3. In momentul in care un jucator executa o miscare - se deplaseaza pe placa, led-ul, pe care se gaseste “cursorul”, va licari in culoarea jucatorului care trebuie sa selecteze, urmand a se colora si ramane aprins la apasarea butonului de “select”.
Jocul incepe mereu cu randul player-ului <fc #FF0000>rosu</fc>. Se va aprinde primul led liber de pe matricea 3×3, urmand sa fie mutat in punctul dorit de jucator. Matricea initiala are elementele egale cu 'N' (none). Cand primul jucator a selectat un element, acel element din matrice va deveni 'R', respectiv 'G' pentru al doilea jucator.
[EGALITATE] - jocul ingheata si raman afisate pe placa toate miscarile jucatorilor
[VICTORIE] (intorc index-ul combinatiei castigatoare) - led-urile de pe linia/coloana/diagonala castigatoare se vor aprinde pe rand in culorile player-ului invingator
Jocul este reluat la apasarea butonului de reset pe placuta de baza!
Nivel de dificultate pentru proiect scazut. Timp mult alocat pentru lipirea corecta a componentelor pe placuta aditionala + gandirea implementarii.