Differences

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

Link to this comparison view

pm:prj2023:dene:minienigmamachine [2023/05/29 18:52]
catalin.ripanu [Concluzii]
pm:prj2023:dene:minienigmamachine [2023/08/05 18:14] (current)
catalin.ripanu [Download]
Line 86: Line 86:
 Operare: Operare:
  
-1. Pornire:+**1. Pornire:**
  
 - din ecranul de pornire, se poate atinge oriunde LCD-ul TFT pentru a merge spre simularea Enigmei. - din ecranul de pornire, se poate atinge oriunde LCD-ul TFT pentru a merge spre simularea Enigmei.
Line 102: Line 102:
 curentă (ordinea alfabetică). curentă (ordinea alfabetică).
  
-2. Configurare:​+**2. Configurare:​**
  
 - simulatorul permite următoarele configurații standard: - simulatorul permite următoarele configurații standard:
Line 164: Line 164:
 - literele legate prin fire vor fi colorate în mov și, pentru fiecare literă, se va afișa perechea sa (în partea de jos a literei respective). - literele legate prin fire vor fi colorate în mov și, pentru fiecare literă, se va afișa perechea sa (în partea de jos a literei respective).
  
-3. Bluetooth+**3. Bluetooth**
  
 - acest simulator suportă și operarea cu protocolul de comunicație Bluetooth. - acest simulator suportă și operarea cu protocolul de comunicație Bluetooth.
Line 172: Line 172:
 - dacă se alege varianta clasică, mașina poate primi date de intrare doar prin intermediul tastaturii. - dacă se alege varianta clasică, mașina poate primi date de intrare doar prin intermediul tastaturii.
  
-- dacă se alege varianta Bluetooth, mașina poate primi date și prin intermediul interfeței seriale ​folosite ​de orice aplicație Bluetooth pentru +- dacă se alege varianta Bluetooth, mașina poate primi date și prin intermediul interfeței seriale ​ce este folosită ​de orice aplicație Bluetooth pentru Android (se recomandă aplicația [[https://​play.google.com/​store/​apps/​details?​id=de.kai_morich.serial_bluetooth_terminal&​hl=ro&​gl=US|Serial Bluetooth Terminal 1.43]] disponibilă pe **Play Store** întrucât a fost testată în cadrul dezvoltării proiectului). Conectarea se realizează cu ajutorul modulului HC-05.
-Android (se recomandă aplicația [[https://​play.google.com/​store/​apps/​details?​id=de.kai_morich.serial_bluetooth_terminal&​hl=ro&​gl=US|Serial Bluetooth Terminal 1.43]] disponibilă pe **Play Store** întrucât a fost testată în cadrul dezvoltării proiectului). Conectarea se realizează cu ajutorul modulului HC-05.+
  
 - evident, și în acest mod, mașina poate primi date prin intermediul tastaturii. - evident, și în acest mod, mașina poate primi date prin intermediul tastaturii.
Line 180: Line 179:
  
 - dacă se încearcă transmiterea de date prin intermediul Bluetooth-ului atunci când acest mod este dezactivat, mașina nu va cripta / decripta - dacă se încearcă transmiterea de date prin intermediul Bluetooth-ului atunci când acest mod este dezactivat, mașina nu va cripta / decripta
-ceea ce s-a introdus, dar va păstra intr-o zonă de memorie informația (adică, dacă se va activa modul Bluetooth imediat după transmiterea datelor, mașina o să pornească procesul de prelucrare).+ceea ce s-a introdus, dar va păstra intr-o zonă de memorie informația (cu alte cuvinte, dacă se va activa modul Bluetooth imediat după transmiterea datelor, mașina o să pornească procesul de prelucrare).
  
 - pentru a curăța banda prin Bluetooth, se folosește caracterul '​*'​. - pentru a curăța banda prin Bluetooth, se folosește caracterul '​*'​.
Line 196: Line 195:
 ===== Concluzii ===== ===== Concluzii =====
  
-A fost o experiență interesantă,​ evident, având în vedere că proiectul a reprezentat,​ de fapt, o dualitate Hardware & Software, care necesita+A fost o experiență interesantă,​ evident, având în vedere că proiectul a reprezentat,​ de fapt, o dualitate Hardware & Software, care necesită
 o anumită abordare (biblioteci compatibile cu resursele Hardware, componente compatibile cu alte componente, etc). La începutul proiectului am schimbat ecranul LCD TFT (luasem un model din China) întrucât, efectiv, nu mergeau bibliotecile cu suport grafic de la **Adafruit**. De o anumită abordare (biblioteci compatibile cu resursele Hardware, componente compatibile cu alte componente, etc). La începutul proiectului am schimbat ecranul LCD TFT (luasem un model din China) întrucât, efectiv, nu mergeau bibliotecile cu suport grafic de la **Adafruit**. De
 asemenea, formarea cutiei din lemn a reprezentat o problemă pe parcurs, am avut puțin noroc spre final întrucât am găsit un tâmplar care a asemenea, formarea cutiei din lemn a reprezentat o problemă pe parcurs, am avut puțin noroc spre final întrucât am găsit un tâmplar care a
-acceptat lucrarea propusă. ​Partea cea mai dificilă a reprezentat montarea tuturor modulelor în cutie (a trebuit să fac niște lipituri ​pentru ca +acceptat lucrarea propusă ​în urma vizualizării fișei tehnice oferiteO etapă ​dificilă a reprezentat montarea tuturor modulelor în cutie (a trebuit să fac niște lipituri ​astfel încât ​LCD-ul 1602 și modulul I2C să funcționeze,​ un vecin cunoscut mi-a oferit pistolul său de lipit). 
-LCD-ul 1602 și modulul I2C să funcționeze,​ un vecin cunoscut mi-a oferit pistolul său de lipit). +Partea cea mai provocatoarea a fost scrierea Software-ului,​ în fișierul din arhiva .zip sunt, aproximativ,​ în jur de 3500 de linii de cod (nu am 
-Mă bucur că am reușit să obțin propria variantă de mașină Enigma.+putut reduce cu mult acest număr, mai mult, am avut probleme și cu etapa de compilare uneori întrucât IDE-ul îmi tot spunea că depășesc cei 32KB 
 +destinați memoriei Flash de pe placă, în prezent implementarea ocupă o memorie de ~ 32212 bytes din 32256 bytes).  
 + 
 +În final, mă bucur că am reușit să obțin propria variantă de **mașină Enigma**.
 ===== Download ===== ===== Download =====
  
 <​note>​ <​note>​
-{{:​pm:​prj2023:​dene:​proiectpm-catalin_ripanu.zip|}}.+Pentru permisiunea accesului codului sursă, puteți trimite un mesaj la adresa de email <catalin.ripanu@stud.acs.upb.ro>​.
 </​note>​ </​note>​
  
Line 222: Line 224:
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<note> +- http://​people.physik.hu-berlin.de/​~palloks/​js/​enigma/​index_en.html -cel mai important linkconține aplicația care m-a ajutat cu **Proiectarea Algoritmilor** din spatele ​**Enigmei**. 
-Listă cu documentedatasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. + 
-</note>+- https://​www.stephenpeek.co.uk/​enigma_machines.htm 
 + 
 +- https://​lastminuteengineers.com/​i2c-lcd-arduino-tutorial/​ 
 + 
 +- https://​github.com/​adafruit/​Adafruit-GFX-Library 
 + 
 +- https://​learn.adafruit.com/​adafruit-2-8-tft-touch-shield-v2/​overview 
 + 
 +- https://​cdn-shop.adafruit.com/​datasheets/​STMPE610.pdf 
 + 
 +- https://​cdn-shop.adafruit.com/​datasheets/​ILI9341.pdf 
 + 
 +- https://​cdn-shop.adafruit.com/​datasheets/​MI0283QT-11%20V1.1.PDF 
 + 
 +- https://​ocw.cs.pub.ro/​courses/​pm -laboratoarele de PM. 
  
 {{:​pm:​prj2023:​dene:​enigma_logo.png?​300|}} {{:​pm:​prj2023:​dene:​enigma_logo.png?​300|}}
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
pm/prj2023/dene/minienigmamachine.1685375552.txt.gz · Last modified: 2023/05/29 18:52 by catalin.ripanu
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