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 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**. +{{: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