Comunicazione Seriale EIA RS-232

Parliamo di comunicazione seriale. Nonostante questo standard sia piuttosto anzianotto (l’ultima revisione risale al 1997) e in alcuni suoi utilizzi sia stato soppiantato da USB ha ancora dei vantaggi su quest’ultimo.

Infatti implementare questo standard con microcontrollori o fpga e’ discretamente semplice anche nel caso questi componenti non abbiano gia’ integrato dell’hardware che faciliti il compito: di solito e’ sufficiente includere nel proprio progetto un integrato, ad esempio il MAX232, per essere in grado di gestire una comunicazione seriale secondo lo standard EIA-RS232.

Inoltre si tratta di uno standard molto semplice (la maggiore complessita’ riguarda i connettori) e ben supportato: creare un programma che utilizzi la porta seriale di un personal computer non e’ un compito difficile.

E’ proprio di quest’ultima parte che voglio parlare, lasciando per un’altra volta una discussione piu’ approfondita riguardante le caratteristiche elettriche e meccaniche dello standard e di un suo esempio di utilizzo.

Scrivere un programma che utilizzi la porta seriale e’ in linea teorica abbastanza semplice sia che si programmi sotto Windows che sotto GNU/Linux (o OpenBSD, NetBSD, FreeBSD, Solaris, etc.).

In sostanza si tratta di “impostare” la porta seriale, aprirla quasi come si trattasse di un file, leggere/scrivere i dati, chiudere la porta seriale.

Per quanto riguarda programmare la porta seriale sotto Microsoft Windows, io mi sono trovato bene con le seguenti due guide:

Serial Communications in Win32

Windows Serial Port Programming

Mentre la prima guida ha l’utilita’ aggiuntiva di mostrare un esempio di utilizzo di thread, la seconda guida va dritta al sodo senza fronzoli.

Per quanto riguarda GNU/Linux ovver un sistema *nix in generale, la guida di riferimento e’:

Serial Programming Guide for POSIX Operating Systems

Anche questa va dritta al sodo e permette di avere qualcosa di funzionante in un tempo ragionevole.

Rolling_bean

This entry was posted in C, Digitale, Elettronica, Programmazione, Solaris 10, Windows. Bookmark the permalink.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *