Ioan-Graţian CIUTA - X si 0
Contact: Login pentru adresa
Introducere
Proiectul constă în implementarea jocului X și 0 folosind o matrice de LED-uri pentru a reprezenta pozițiile posibile și LED-uri bicolore pentru a asocia fiecărui jucător o culoare diferită. Deplasarea jucătorului și selecția poziției se realizează prin intermediul a 5 butoane. În momemtul în care jucătorul se decide asupra poziției, dacă aceasta este validă, o va putea selecta, urmând ca LED-ul respectiv să preia culoarea jucătorului.
Descriere generală
Hardware Design
Componente folosite:
9 led-uri bicolore cu 3 picioare
9 rezistențe x 100 Ohmi
baretă 40 de pini
5 butoane
cabluri conectoare mamă-mamă 24 bucăți
cablu multilițat pentru lipituri aprox. 1 m
E bine să știi exact piesele de care ai nevoie pentru a nu fi nevoit să faci multe drumuri până la magazine.
Pentru lipituri recomand cablul multilițat - elastic, ușor de lipit; am încercat cu fire de UTP, dar e rigid și greu de lipit!
E indicat să ai o rezervă sau 2 pentru fiecare piesă. You never know! Mie mi-au prins bine! :)
Led-urile bicolore au 3 picioare, cel mai lung fiind anodul.
Am folosit fire de culori diferite pentru a fi mai ușor de diferențiat porturile
Recomand testarea pas cu pas!
Pentru butoane, e sufcient să conectezi un port la masă, iar un altul la un pin de control.
Mi-a prins super bine faptul că am lăsat câțiva pini liberi pe baretă. Firele au fost mult mai ușor de manevrat!
Schema de mai jos e doar orientativă
Software Design
Am scris codul în Sublime, pornind de la scheletul laboratorului 0
Pentru compilare - winAVR și HIDBootFlash pentru transferul .hex-ului
Informațiile despre led sunt reținute în structura LED ~ port, pin green, pin red
Mi-am definit funcții pentru aprinderea/stingerea led-ului, pentru fiecare culoare
Rezultate Obţinute
Concluzii
A fost o experiență utilă și interesantă, uneori distractivă, alteori terifiantă.
Recomand începerea proiectului din timp
Multimetrul îți e cel mai bun prieten!
Download
O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului: surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună

.
Fişierele se încarcă pe wiki folosind facilitatea Add Images or other files. Namespace-ul în care se încarcă fişierele este de tipul :pm:prj20??:c? sau :pm:prj20??:c?:nume_student (dacă este cazul). Exemplu: Dumitru Alin, 331CC → :pm:prj2009:cc:dumitru_alin.