This shows you the differences between two versions of the page.
pm:prj2022:robert:sudoku [2022/05/27 23:43] claudiu.axinia [Hardware Design] |
pm:prj2022:robert:sudoku [2022/05/27 23:56] (current) claudiu.axinia [Download] |
||
---|---|---|---|
Line 52: | Line 52: | ||
===== Software Design ===== | ===== Software Design ===== | ||
+ | Am implementat codul in Arduino IDE, folosind si biblioteca Ucglib(bibliografie) pentru afisarea pe ecranul LCD. | ||
- | <note tip> | + | Implementare: |
- | Descrierea codului aplicaţiei (firmware): | + | |
- | * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) | + | In setup(): Sunt afisate regulile scorului pe ecran, sunt scrise numerele initiale pe grila si scorul este initializat cu 0. |
- | * librării şi surse 3rd-party (e.g. Procyon AVRlib) | + | |
- | * algoritmi şi structuri pe care plănuiţi să le implementaţi | + | In resetGame(): Este desenata grila si sunt afisate numerele initiale, fiind initializata matricea de sudoku si pozitia jucatorului. Numerele initiale sunt colorate cu albastru, cele puse pe parcurs cu alb, iar casuta in care se afla jucatorul cu verde. |
- | * (etapa 3) surse şi funcţii implementate | + | |
- | </note> | + | In loop(): Este verificata starea LOW/HIGH a butoanelor si se executa actiuni pe baza acestei stari. |
+ | |||
+ | UP/DOWN - schimba pozitia pe axa Oy, iar LEFT/RIGHT pe axa Ox | ||
+ | |||
+ | DELETE - sterge numarul curent(nu unul din cele initiale!) | ||
+ | |||
+ | INCREMENT - incrementeaza valoarea numarului(maxim pana la valoarea admisa) | ||
+ | |||
+ | PLACE - scrie numarul selectat in celula curenta(respectand regulile de non-duplicate) | ||
+ | |||
- | Am implementat codul in Arduino IDE, folosind si biblioteca Ucglib(bibliografie) pentru afisarea pe ecranul LCD. | ||
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
Line 94: | Line 103: | ||
===== Download ===== | ===== Download ===== | ||
- | <note warning> | + | {{:pm:prj2022:robert:sudoku_axinia_arhiva.zip|}} |
- | 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**. | + | |
- | </note> | + | |
===== Jurnal ===== | ===== Jurnal ===== | ||