Imparare a leggere il codice Morse con il Python

codice morse python

Il codice morse è stato introdotto per facilitare le comunicazioni; con una manciata di righe di Python è possibile scriverne un traduttore.

Il codice Morse, detto anche alfabeto Morse, è un sistema per trasmettere lettere, numeri e segni di punteggiatura per mezzo di un segnale in codice a intermittenza e fu uno dei primi metodi di comunicazione a distanza. Fu oggetto di studio di Samuel Morse dal 1835, ma venne realizzato dal tecnico Alfred Vail, suo collaboratore dal settembre 1837.

Il codice Morse è una forma ante litteram di comunicazione digitale. Tuttavia, a differenza dei moderni codici binari che usano solo due simboli (comunemente rappresentati con 0 e 1), il Morse ne usa quattro: punto seguito da un intervallo intersimbolo (•), linea seguita da un intervallo intersimbolo (—), intervallo corto (tra lettere) e intervallo lungo (tra parole).

Per questa ragione, oltre che per rispolverare concetti che hanno fatto la storia della comunicazione, oggi presenteremo un semplice script Python (una conquantina di righe in totale) che trasforma una stringa di caratteri nella caratteristica sequenza di punti e linee.

Il programma

Il listato per tradurre il codice Morse in Python importa il metodo sleep() dal modulo time, e potrebbe importare il pilotaggio dei pin del GPIO (ad esempio un Raspberry Pico) per gestire l’accensione e lo spegnimento di un LED. In fase di test tale importazione, e le linea che fanno riferimento al pilotaggio del LED, sono tutte commentate.

Viene poi definita la tabella delle durate degli intervalli (una linea dura quanto tre punti, un intervallo quanto sette punti) e la tabella dei codici di traduzione.

Vengono quindi definite due funzioni: send_morse_for(carattere), che codifica il carattere, e send_pulse(punti_e_linee), che emette o scrive la codifica come output.

Il programma utilizza un ciclo infinito che legge in input la stringa da codificare ed emette in output il risultato tradotto in codice Morse.

Estensioni

E’ possibile utilizzare la tabella su Wikipedia per estendere i codici ai numeri ed ai simboli di interpunzione. (o fare riferimento al Manuale delle Giovani Marmotte, che pubblicava tale elenco).

E’ anche possibile collegare LED o buzzer al pin di trasmissione, per avere disponibile un sistema di codifica utilizzabile anche per scopi non dichiaratamente didattici.

Utilizzare il codice Morse con Python è davvero una passeggiata…

 

Iscriviti ai nostri gruppi Telegram

Link utili

Seguici per non perdere le prossime novità!

 

Definire ciò che si è non risulta mai semplice o intuitivo, in specie quando nella vita si cerca costantemente di migliorarsi, di crescere tanto professionalmente quanto emotivamente. Lavoro per contribuire al mutamento dei settori cardine della computer science e per offrire sintesi ragionate e consulenza ad aziende e pubblicazioni ICT, ma anche perche’ ciò che riesco a portare a termine mi dà soddisfazione, piacere. Così come mi piace suonare (sax, tastiere, chitarra), cantare, scrivere (ho pubblicato 350 articoli scientfici e 3 libri sinora, ma non ho concluso ciò che ho da dire), leggere, Adoro la matematica, la logica, la filosofia, la scienza e la tecnologia, ed inseguo quel concetto di homo novus rinascimentale, cercando di completare quelle sezioni della mia vita che ancora appaiono poco ricche.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.