This shows you the differences between two versions of the page.
|
pm:prj2026:bianca.popa1106:alexandra.misloschi [2026/05/18 17:04] alexandra.misloschi |
pm:prj2026:bianca.popa1106:alexandra.misloschi [2026/05/25 11:08] (current) alexandra.misloschi [5. Rezultate Obţinute] |
||
|---|---|---|---|
| Line 12: | Line 12: | ||
| * **Modul PRACTICE:** Un mediu de antrenament liber unde utilizatorul poate exersa alfabetul Morse, primind feedback instantaneu pentru fiecare caracter. Se accesează din ecranul principal prin apăsarea butonului NEXT. | * **Modul PRACTICE:** Un mediu de antrenament liber unde utilizatorul poate exersa alfabetul Morse, primind feedback instantaneu pentru fiecare caracter. Se accesează din ecranul principal prin apăsarea butonului NEXT. | ||
| - | * **Modul EXAM:** Un mod de testare structurat unde sistemul solicită scrierea unui cuvânt cheie (ex: „SOS”) și oferă un verdict final de tip Pass/Fail bazat pe acuratețea mesajului. Se accesează din ecranul principal prin apăsarea butonului DONE. | + | * **Modul EXAM:** Un mod de testare structurat unde sistemul solicită scrierea unui cuvânt selectat aleatoriu dintr-un dicționar de 10 cuvinte. Sistemul oferă un verdict final de tip Pass/Fail bazat pe acuratețea mesajului introdus orbește. Se accesează din ecranul principal prin apăsarea butonului DONE. |
| Interacțiunea dintre modulele proiectului este organizată astfel: | Interacțiunea dintre modulele proiectului este organizată astfel: | ||
| Line 40: | Line 40: | ||
| | **LED-uri(3x)** | Verde, Roșu, Galben | Semnalizare vizuală pentru Pass (PB0), Fail (PB1) și înregistrare (PB3). | | | **LED-uri(3x)** | Verde, Roșu, Galben | Semnalizare vizuală pentru Pass (PB0), Fail (PB1) și înregistrare (PB3). | | ||
| | **Rezistențe** | 220 Ohm / 10k Ohm | Protecția componentelor (LED/Buzzer) și limitarea curentului. | | | **Rezistențe** | 220 Ohm / 10k Ohm | Protecția componentelor (LED/Buzzer) și limitarea curentului. | | ||
| - | | **Placă prototipare** | PCB FR4 4x6 cm | Suportul mecanic și electric final pentru cositorirea componentelor periferice. | | ||
| | **Cabluri** | Jumper Wires | Realizarea conexiunilor electrice între periferice și placa de dezvoltare. | | | **Cabluri** | Jumper Wires | Realizarea conexiunilor electrice între periferice și placa de dezvoltare. | | ||
| Line 77: | Line 76: | ||
| * **WELCOME:** Starea inițială de repaus ce afișează meniul principal și așteaptă selecția utilizatorului. | * **WELCOME:** Starea inițială de repaus ce afișează meniul principal și așteaptă selecția utilizatorului. | ||
| * **PRACTICE:** Modul de antrenament liber în care caracterele sunt decodificate și concatenate la mesaj în urma confirmării manuale (Butonul NEXT). | * **PRACTICE:** Modul de antrenament liber în care caracterele sunt decodificate și concatenate la mesaj în urma confirmării manuale (Butonul NEXT). | ||
| - | * **EXAM:** Modul de testare cu cerință predefinită (scrierea cuvântului „SOS”) și evaluare finală strictă. | + | * **EXAM:** Modul de testare cu cerință extrasă dinamic și evaluare finală. |
| * **RESULT:** Starea de calcul și afișare a statisticilor de performanță. | * **RESULT:** Starea de calcul și afișare a statisticilor de performanță. | ||
| * **Algoritmul de Decodificare (String Matching):** Semnalele (puncte și lines) sunt colectate într-un buffer de caractere (morse_buffer). La apăsarea butonului NEXT, acest buffer este comparat prin funcția strcmp cu șabloanele standard din alfabetul internațional Morse. | * **Algoritmul de Decodificare (String Matching):** Semnalele (puncte și lines) sunt colectate într-un buffer de caractere (morse_buffer). La apăsarea butonului NEXT, acest buffer este comparat prin funcția strcmp cu șabloanele standard din alfabetul internațional Morse. | ||
| Line 83: | Line 82: | ||
| $$WPM = \frac{char\_count \times 12}{t\_total}$$ | $$WPM = \frac{char\_count \times 12}{t\_total}$$ | ||
| + | |||
| + | (Notă: Formula derivă din standardul internațional Paris (standardul Morse), unde un cuvânt standard are o lungime medie de 5 caractere. Constanta 12 reprezintă simplificarea matematică a raportului dintre cele 60 de secunde dintr-un minut și cele 5 caractere per cuvânt ($\frac{60}{5} = 12$), asigurând un calcul rapid pe 8 biți). | ||
| ==== (Etapa 3) Surse şi funcţii implementate ==== | ==== (Etapa 3) Surse şi funcţii implementate ==== | ||
| Line 102: | Line 103: | ||
| ===== 5. Rezultate Obţinute ===== | ===== 5. Rezultate Obţinute ===== | ||
| + | În urma implementării hardware și software, sistemul DashDot Morse Coach este complet funcțional și rulează conform specificațiilor, oferind o experiență interactivă și fluidă. | ||
| + | |||
| + | Mai jos sunt prezentate imaginile cu cele trei stări principale ale proiectului (Meniul de pornire, Afișarea erorilor în caz de FAIL și Validarea succesului în caz de PASS): | ||
| + | |||
| + | {{:pm:prj2026:bianca.popa1106:cori_demo1.jpeg?350|}}{{:pm:prj2026:bianca.popa1106:cori_demo2.jpeg?357|}} | ||
| + | {{:pm:prj2026:bianca.popa1106:cori_demo3.jpeg?350|}} | ||
| ===== 6. Concluzii ===== | ===== 6. Concluzii ===== | ||
| + | A fost un proiect foarte tare de realizat și chiar mi-a plăcut mult să lucrez la el și să mă joc cu el. Pe parcursul dezvoltării, am aprofundat implementarea unei mașini de stări (FSM) și lucrul direct cu timerele și întreruperile pe microcontrolerul ATmega328P. | ||
| ===== 7. Jurnal ===== | ===== 7. Jurnal ===== | ||
| - | * **Data: 09.05.2026** - Milestone 1: Finalizarea conceptului "DashDot Morse Coach", stabilirea listei de hardware necesar și structurarea documentației. | + | * **09.05.2026** - Milestone 1: Finalizarea conceptului "DashDot Morse Coach", stabilirea listei de hardware necesar și structurarea documentației. |
| + | * **16.05.2026** - Milestone 2: Asamblarea circuitului pe breadboard, testarea individuală a perifericelor (comunicația I2C pentru LCD, semnalul PWM pentru Servo) și implementarea primei versiuni a decodificatorului Morse. | ||
| + | * **24.05.2026** - Milestone 3: Optimizarea majoră a software-ului prin eliminarea codului blocant de debounce la butoanele de control. Adaugarea dicționarului de examen cu 10 cuvinte dinamice și adăugarea diagnosticului de erori direct pe ecranul LCD. | ||
| + | * **25.05.2026** - Milestone 4: Calibrarea finală a formulei pentru WPM și a pragurilor nivelurilor de viteză, testarea integrată a tuturor funcționalităților și finalizarea paginii de documentație pe OCW. | ||
| ===== 8. Bibliografie/Resurse ===== | ===== 8. Bibliografie/Resurse ===== | ||