This shows you the differences between two versions of the page.
pm:prj2024:rvirtan:sudoku [2024/05/16 21:05] alicuriceanu [Implementare] |
pm:prj2024:rvirtan:sudoku [2024/05/20 16:07] (current) alicuriceanu [Decizii luate] |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | <note tip> | ||
+ | * Nume: Alexandru Licuriceanu | ||
+ | * Grupa: 332CD | ||
+ | </note> | ||
+ | |||
====== Sudoku ====== | ====== Sudoku ====== | ||
{{ :pm:prj2024:rvirtan:header_sudoku.png?800 |}} | {{ :pm:prj2024:rvirtan:header_sudoku.png?800 |}} | ||
Line 33: | Line 38: | ||
==== Schema electrica ==== | ==== Schema electrica ==== | ||
{{ :pm:prj2024:rvirtan:sudoku_schema_electrica.png?700 |}} | {{ :pm:prj2024:rvirtan:sudoku_schema_electrica.png?700 |}} | ||
+ | |||
+ | ==== Decizii luate ==== | ||
+ | * Pentru ecranul LCD, am ales sa pun VCC la 5V pentru alimentare, iar pe LED l-am pus la pinul D6 pentru a regla luminozitatea ecranului folosind PWM. Am conectat restul pinilor conform datasheet-ului ecranului. | ||
+ | * Pentru VRX si VRY ale joystick-ului, puteam sa aleg oricare doi pini analogici, si le-am legat la A0 si A1, ground la ground si VCC la 5V. | ||
+ | * Pentru tastatura, la fel, aveam de ales oricare 4 pini digitali si 4 pini analogici. | ||
+ | |||
+ | ==== Imagini ==== | ||
+ | {{:pm:prj2024:rvirtan:sudoku_image5.jpeg?300}} {{:pm:prj2024:rvirtan:sudoku_image6.jpeg?300}} | ||
+ | |||
+ | |||
===== Software Design ===== | ===== Software Design ===== | ||
Line 52: | Line 67: | ||
* Pentru a cronometra timpul de la inceputul jocului si pana la castigarea acestuia, am folosit timer-ul intern al microcontroller-ului. Prin functia **millis** am calculat diferenta de timp intre fiecare executie a functiei **loop** iar la final am scazut momentul de start din momentul curent, pentru a calcula durata totala. | * Pentru a cronometra timpul de la inceputul jocului si pana la castigarea acestuia, am folosit timer-ul intern al microcontroller-ului. Prin functia **millis** am calculat diferenta de timp intre fiecare executie a functiei **loop** iar la final am scazut momentul de start din momentul curent, pentru a calcula durata totala. | ||
- | ==== Download ==== | + | |
- | * {{:pm:prj2024:rvirtan:pmsudoku.zip|}} | + | |
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
+ | Rezultatul proiectului este un dispozitiv hand-held pe care se poate juca Sudoku. | ||
- | <note tip> | + | {{:pm:prj2024:rvirtan:sudoku_image1.jpeg?300|}} |
- | Care au fost rezultatele obţinute în urma realizării proiectului vostru. | + | {{:pm:prj2024:rvirtan:sudoku_image2.jpeg?300|}} |
- | </note> | + | |
+ | {{:pm:prj2024:rvirtan:sudoku_image4.jpeg?300|}} | ||
+ | {{:pm:prj2024:rvirtan:sudoku_image3.jpeg?300|}} | ||
===== Concluzii ===== | ===== Concluzii ===== | ||
- | + | * Proiectul a fost interesant de realizat, am invatat sa lucrez cu functiile din bibliotecile pentru LCD si keypad, dar si cum sa aranjez componentele astfel incat la final sa am un produs functional si util. Pe partea de software, provocarea a fost sa scriu cod care ocupa cat mai putin spatiu, dar in acelasi timp sa fie calitatativ si lizibil. | |
- | ===== Download ===== | + | ==== Download ==== |
- | + | * {{:pm:prj2024:rvirtan:pmsudoku.zip|}} | |
- | <note warning> | + | |
- | 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 ===== | ||
Line 77: | Line 89: | ||
* 29/04/2024 - Pagina de wiki initiala. | * 29/04/2024 - Pagina de wiki initiala. | ||
* 09/05/2024 - Hardware design. | * 09/05/2024 - Hardware design. | ||
+ | * 16/05/2024 - Software design. | ||
+ | * 18/05/2024 - Finalizare pagina. | ||
===== Bibliografie/Resurse ===== | ===== Bibliografie/Resurse ===== | ||
<note> | <note> | ||
- | Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. | + | * Desenare de forme, text pe ecran: https://www.arduino.cc/reference/en/libraries/tft/ |
+ | * Conectarea ecranului: https://youtu.be/boagCpb6DgY?si=3Q-0dxi9h8yn5iBe | ||
+ | * Utilizarea tastaturii numerice: https://arduinogetstarted.com/tutorials/arduino-keypad | ||
+ | * Utilizarea joystick-ului: https://arduinogetstarted.com/tutorials/arduino-joystick | ||
</note> | </note> | ||