Acest proiect se doreste a fi o platforma de jocuri. Aceasta platforma va fi compusa din jocuri care se vor juca doar single-player sau altele care se vor juca multi-player. Vor fi diferite jocuri cum ar fi:
Scopul jocului este unul de entertainment. Utilizatorul se poate juca X si 0 sau Follow This! impreuna cu prietenii sau sa ai parte de fun jucandu-te singur Symon Says.
Prezentarea pe scurt a proiectului vostru:
Schema bloc:
Input-ul este primit prin intermediul butoanelor.
Output-ul este pe LCD si pe modul in care LED-urile lumineaza.
Prin intermediul LCD-ului se comunica cu utilizatorul, asistandu-l pe acesta in deciderea jocului pe care il va juca si a mutarilor pe care acesta le va face in timp-ul jocului.
Lista piese:
Schema electrica:
Rezultatele simularii: Am fost foarte multumit de lucrul in Proteus. Implementare software a mers perfect pe configuratia facuta in acest program. Inconvenientul cel mare cel putin pe laptopul meu a fost faptul ca folosea foarte mult CPU-ul si din cand in cand am se oprea rularea. Totusi daca ii dadeam un delay mai mare intre instructiuni mergea mai bine. Acest lucru este important atunci cand vrei sa aprinzi un led in mod repetat. In rest pot sa zic ca mi-a fost folositoare aceasta simulare la partea de programare.
Am scris cod-ul in Notepad++.
Am folosit codul din laboratorul 2 pentru afisarea de mesaje pe LCD.
Pentru implementarea X si 0 nu a fost nimic special in afara de faptul ca am folosit o matrice pentru retinerea configuratiei temporare a jocului. De asemenea am avut grija ca player-ul curent sa nu poata selecta o pozitie deja selectata.
Aici sunt sursele:
Aici este si o diagrama a starilor prin care trece programul:
Am reusit sa implementez bine X si 0 putandu-se juca jocul de mai multe ori fara a reporni placa. Nu am mai implementat celelalte jocuri pentru ca m-am apucat de lipit si am avut niste probleme la aceasta parte.
La partea hardware am inceput sa lipesc led-urile si butoanele asa cum se vede in pozele urmatoare. M-am oprit in momentul in care mi-am dat seama ca in simulare aveam anodurile led-urilor la masa si ca eu aveam la ledurile mele catodul comun. De asemenea am intampinat niste probleme la scrierea programelor pe microcontroller si cred ca acest lucru s-a intamplat din cauza faptului ca m-am jucat putin la el si s-ar putea sa il fi scurt-circuitat sau sa se fi dezlipit ceva intre timp.
Astfel rezultatul final a fost doar un program functional la nivel de simulare.
Placuta de baza:
Cum ar fi trebuit sa arate:
In ceea ce priveste partea de lipit recomand sa se realizeze placuta de baza pe placa imprimata si nu pe placa de test. Placa de test implica cam 20 de ore de lipit spre deosebire de cea imprimata care necesita cam 10 ore.
In ceea ce priveste timpul recomand celor care din anii urmatori sa se apuce din timp pentru ca pot aparea tot felul de situatii cum ar fi cea descrisa mai sus in care am cumparat led-uri cu catod comun si de fapt era de nevoie de led-uri cu anod comun sau de alte tranzistoare.
De asemenea partea de software nu mi s-a parut prea grea mai ales daca te foloseste de Proteus.
Aici este arhiva cu tot ce a rezultat in urma proiectului:
Datasheet pentru demultiplexor 74HCT138: 74hc_hct138_cnv_2.pdf