Codificator/Decodificator Cod Morse

Introducere

Prezentarea pe scurt a proiectului vostru:

  • Proiectul constă într-un sistem care, în funcție de regimul ales, poate fie să convertească semnale introduse de la tastatură în cod Morse și să le transmită prin semnale sonore și vizuale, fie să recepționeze semnale în cod Morse (prin microfon sau buton) și să le decodeze, afișând literele corespunzătoare pe un ecran LCD.
  • Scopul proiectului este de a crea un instrument educativ și funcțional care să faciliteze învățarea și utilizarea codului Morse, oferind codificare și decodificare automată a mesajelor.
  • Am pornit de la ideea de a explora comunicația non-verbală și a învăța bazele codului Morse.
  • Proiectul poate fi util pentru noi ca să învățăm să integrăm senzori și concepte software într-un sistem complex.Pentru alții, acesta poate fi folosit în scop educativ, la fel și ca metodă alternativă de comunicare.

Descriere generală

Hardware Design

Aici puneţi tot ce ţine de hardware design:

Software Design

Mediu de dezvoltare: Arduino IDE Librării utilizate: LiquidCrystal_I2C.h Structuri și algoritmi implementați:

Codarea și decodarea codului Morse prin detectarea sunetului de la un microfon analogic

Algoritm de detecție frecvență prin măsurarea trecerilor prin zero pentru identificarea semnalelor valide

Temporizare non-blocantă folosind millis() pentru diferențierea semnalelor Morse (punct, linie, spațiu literă, spațiu cuvânt)

Debouncing software și praguri de intensitate pentru filtrarea zgomotului și recunoașterea corectă a impulsurilor sonore

Tabel static cu codurile Morse pentru litere (A-Z) și cifre (0-9)

Algoritmi pentru generarea semnalului sonor (beep-uri) pentru punct și linie folosind tone() și PWM pe buzzer

Interfață LCD 16×2 pentru afișarea codului Morse recepționat și transmis

Funcționalitate UART simplă pentru transmiterea și primirea textului

Detectare și afișare mesaje speciale (SOS, HELP) cu mod de alertă sonoră și vizuală (LED-uri)

Gestionare buffer și poziționare cursor pentru afișarea pe LCD cu împărțirea pe linii și resetarea textului

Funcții principale implementate:

setup() – inițializează LCD, buzzer, microfon, porturi și UART

loop() – buclă principală ce gestionează cele două moduri de operare (codare și decodare Morse)

detectFrequency() – măsoară frecvența semnalului audio de la microfon

flashSequence() – generează secvența de semnale sonore corespunzătoare unui cod Morse

playFrequency() – redă sunet pe buzzer la o frecvență dată și durată specifică

gestionare buffer cod Morse și decodare literă prin compararea secvenței de puncte și linii

afisare pe LCD și control cursor pentru o vizualizare clară a textului primit sau transmis

mod alertă cu tonuri și LED-uri pentru mesaje speciale

Rezultate Obţinute

Proiectul funcționează corect atât pentru codarea cât și decodarea mesajelor Morse cu sunet, oferind feedback vizual și sonor. Limitări identificate:

Sensibilitatea microfonului și pragurile de detecție pot fi afectate de zgomotul ambiental, ducând la erori de interpretare

Afișajul LCD 16×2 limitează cantitatea de text afișată simultan

Lipsa funcțiilor de editare sau ștergere a textului introdus

Necesitatea calibrării pragurilor pentru semnale lungi și spații precise între semnale

Posibile îmbunătățiri:

Implementarea unui mod automat de calibrare a pragurilor de sunet pentru o detecție mai robustă

Stocarea mesajelor în memorie EEPROM pentru salvare și recuperare

Utilizarea unui afișaj mai mare (ex: OLED) pentru afișarea textului complet

Indicator vizual suplimentar (LED sincronizat cu sunetul) pentru feedback în timp real

Adăugarea unei interfețe Bluetooth pentru transmiterea și recepția Morse pe dispozitive mobile

Concluzii

Download

Jurnal

Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului.

Bibliografie/Resurse

Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe Resurse Software şi Resurse Hardware.

Export to PDF

pm/prj2025/rnedelcu/artiom.pujleacov.txt · Last modified: 2025/05/30 12:44 by artiom.pujleacov
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