Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2022:apredescu:wordle [2022/05/13 17:47]
mihail.maracine0605 [Hardware Design]
pm:prj2022:apredescu:wordle [2022/05/25 19:09] (current)
mihail.maracine0605 [Concluzii]
Line 21: Line 21:
  
  
-{{:​pm:​prj2022:​screenshot_from_2022-04-21_13-34-38.png?​200|}}+{{:​pm:​prj2022:​screenshot_from_2022-04-21_13-34-38.png?​600|}} 
 + 
  
 ===== Hardware Design ===== ===== Hardware Design =====
Line 40: Line 42:
  
  
-<note tip> +{{:pm:prj2022:​apredescu:​circuit.png?600|}} 
-Aici puneţi tot ce ţine de hardware design: +
-  * listă de piese +
-  * scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri,​ e.g. http://​www.captain.at/​electronic-atmega16-mmc-schematic.png+
-  * diagrame de semnal  +
-  * rezultatele simulării +
-</​note>​+
  
 ===== Software Design ===== ===== Software Design =====
 +Mediu de dezvolatare:​ Arduino IDE.
  
 +Biblioteci:
 +
 +* ##<​Adafruit_GFX.h> ​    |
 +
 +* <​Adafruit_ST7735.h> ​ | -> Biblioteci pentru ecran LCD
 +
 +* <​Adafruit_ST7789.h> ​ |
 +
 +* <​SPI.h>​ -> Biblioteca pentru SPI
 +
 +* <​SD.h>​ -> Biblioteca pentru SD reader
 +
 +* <​IRremote.hpp>​ -> Biblioteca pentru telecomanda si receptor IR
 +
 +In acest algoritm, la fiecare apasare a butonului de enter ( aproximativ 5-6 ori per joc ),
 +este facuta o cautare printre toate cuvintele de 5 litere din dictionarul englez ( 12947 de cuvinte) pentru a se verifica daca cuvantul introdus exista.
 +Problema reala in implementarea proiectului este timpul pe care utilzatorul trebuie sa il
 +astepte pentru a se face cautarea ( minimum 1 secunda , avg. 1.53 s). Solutia la aceasta problema este impartirea dictionarului de cuvinte in mai multe fisiere, iar la introducerea ​
 +cuvantului cautat curent sa se aleaga fisierul in care se poate afla cuvantul. Numele fisierelor sunt de forma x.txt unde x este oricare litera din alfabetul englez. Scurtarea zonei
 +de cautare a cuvantului aduce timpul asteptat la 0.04 s. 
 +
 +Algoritmul implementat intializeaza toate piesele din componenta proiectului si se asteapta
 +o tasta apasata de la telecomanda IR. In functie de butonul apasat se apeleaza o functie asociata.
 +Butoanele responsabile cu scrierea literelor apeleaza `typeLetter()` care sterge litera deja
 +existenta in casuta prezenta si inlocuieste cu litera curenta.
 +Celelalte butoane sunt responsabile cu parcurgerea in patratele si cautarea unui cuvant in 
 +fisierele de pe cardul SD.
  
-<note tip> 
-Descrierea codului aplicaţiei (firmware): 
-  * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) 
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib) 
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi 
-  * (etapa 3) surse şi funcţii implementate 
-</​note>​ 
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +In urma realizarii ​proiectului, am obtinut un joc asememanator wordle, afisat pe un ecran LCD 1'8, care poate fi jucat prin telecomanda IR.
-Care au fost rezultatele obţinute în urma realizării ​proiectului ​vostru. +
-</​note>​+
  
 ===== Concluzii ===== ===== Concluzii =====
  
 +Proiectul a fost interesant de facut. A reprezentat o provocare eficientizarea unui algoritm de cautare folosind resursele Arduino.
 +
 +{{:​pm:​prj2022:​apredescu:​pozawordle1.jpg?​600|}}
 +
 +{{:​pm:​prj2022:​apredescu:​pozawordle2.jpg?​600|}}
 ===== Download ===== ===== Download =====
  
-<note warning>​ +SURSA:
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectuluisurse, 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**. +{{:pm:prj2022:apredescu:wordle.rar|}}
-</​note>​+
  
 ===== Jurnal ===== ===== Jurnal =====
pm/prj2022/apredescu/wordle.1652453247.txt.gz · Last modified: 2022/05/13 17:47 by mihail.maracine0605
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0