Piedinatura ed uso RS-232 DB9

Panoramica RS-232 DB9

L' RS232C DE-9, è spesso riferito erroneamente come porta DB-9 usata nello standard industriale per la trasmissione dei dati seriali. Una porta seriale RS-232 era una funzione standard dei computers personali, dal momento che era la maniera preferita per connettere i modems, le tastiere, i mouse, dischi esterni e molte altre periferiche.

Interfaccia RS232

Lo sfondo della porta seriale a 9 piedini


Introdotto per primo negli anni 60, il protocollo RS-232 definisce il modo con cui i dati vengono trasferiti, bit per bit, da un Equipaggiamento del terminale dati (DTE) come un terminale computer, fino all' Equipaggiamento di comunicazione dati (DCE) come un modem.

RS-232 è lo standard comune usato nelle porte seriali. Definisce le proprietà elettriche della tempistica dei segnali, così come la loro interpretazione e le dimensioni fisiche con la configurazione della piedinatura di un connettore.

I computers moderni di rado hanno le porte RS-232. Bus seriale universale (USB) ha rimpiazzato l'interfaccia tradizionale RS-232. L'RS-232 ha molti difetti rispetto alle tecnologie successive come RS-422 , RS-485 e persino Ethernet. Queste carenze includono bassa velocità di trasmissione, lunghezza del cavo limitata, sostanziali fluttuazioni di tensione e limitate capacità di rilascio multiplo.

Ad ogni modo è possibile usare un convertitore da USB ad RS-232 od una scheda d'espansione con una o più porte seriali da connettere un dispositivo periferico seriale RS-233 al tuo computer. Molte schede madri hanno anche una porta COM che rende possibile installare una staffa con una porta DE-9.

Interfaccia di conversione per cavo adattatore seriale DB9 a 9 piedini da USB a COM RS232

Nonostante le carenze e i progressi tecnologici, le interfacce RS-232 sono ancora molto usate con le grandi macchine industriali, apparecchiature di rete e strumenti scientifici, in cui sono sufficienti connessioni dati cablate punto a punto ed a bassa velocità.

L'interfaccia della porta seriale del PC è single-ended. Ciò significa che è possibile collegare solo due dispositivi usando un cavo seriale RS232. I dati trasferiti tra questi due dispositivi vengono trasferiti a una velocità inferiore ai 20 kbps.

RS232 permette una comunicazione full-duplex – questo significa che entrambe i dispositivi possono interfacciarsi l'un l'altro simultaneamente. È obbligatorio avere un filo di terra comune tra il computer ed il dispositivo seriale. Questo è rappresentato dai livelli di tensione definiti dal protocollo RS232.

La comunicazione full-duplex offre la migliore modalità di trasmissione

Con l' RS232, il collegamento a caldo o lo scambio a caldo non sono supportati, sebbene a volte sia possibile collegare un dispositivo seriale e funzionerà mentre il computer è in esecuzione. Con la tecnologia attuale, solo un connettore a 9 piedini è in uso con la maggior parte dei computers personali.

Pacchetto dati RS232 standard


Una trasmissione RS232 inizia con un bit di avvio. Un bit di avvio notifica il computer ricevente di una trasmissione in ingresso. I pacchetti di dati consistono in parole di 7 od 8 bit. Il bit di avvio è generalmente un bit a basso voltaggio, tra i +3v ed i +15v. I bits di dati seguono poi il bit di avvio su di una base LSB basis (bit meno significativo) - questo è il bit con il valore numerico più basso. Un bit di parità va a seguire, in genere, i dati e poi la trasmissione finisce con un bit di arresto.

Un esempio di come la porta seriale RS232 funzioni con l'aiuto del mouse seriale

mouse con porta seriale

Un mouse seriale comprende sensori, controller del mouse, collegamenti alla comunicazione, interfaccia dati, driver e programma. Il movimento del mouse così come i clic dei pulsanti vengono rilevati dai sensori. Il controller del mouse prende nota della posizione attuale del mouse così come lo stato dei vari sensori.

Quando questa informazione cambia, un pacchetto di dati viene trasmesso dal controller del mouse al controller dell'interfaccia dei dati seriali. È il driver del mouse installato sul computer che riceve il pacchetto dati e lo decodifica, eseguendo quindi l'azione appropriata in base alle istruzioni ricevute.

Livelli di tensione del mouse seriale PC RS232:


Un mouse standard si aspetta un segnale d'uscita RS-232C con un livello approssimativo di 12V come segnale di ingresso. La porta RS-232C avrà un numero di linee d'uscita da cui il mouse può prendere corrente (10mA circa). Il mouse invia quindi i dati al chip del ricevitore del computer. I dati inviati devono essere a un livello comprensibile dal chip ricevente. Le uscite medie del mouse variano tra +5V, -.5V e +12V. In media, un mouse userà circa +5 volts per lavorare.

Implementazione fisica del dispositivo seriale


Un mouse seriale fa uso delle linee DTR (Data Terminal Ready) ed RTS (Request to send) per generare 5V circa di potenza, per il suo circuito di microcontrollo. Un mouse optomeccanico (uno che faccia uso dei sensori ottici) che abbia dei LED, richiederanno dell'alimentazione per illuminare quei LED.

I diodi vengono spesso usati per prendere corrente dalle linee DTR ed RTS – intercettando diodi e resistenze. L'alimentazione negativa per il trasmettitore è presa dal piedino TD. Il piedino TD è quello che trasporta i dati dal DTE al DCE.

Un mouse seriale standard drena 10 mA totali di corrente, operante ad una tensione tra i 6 e 15 volts. I dati vengono inviati usando uno formato seriale RS-232C standard asincrono:

Grafico di un rs-232c standard asincrono

Una spiegazione della piedinatura del mouse di un RS-232 seriale


Quando il collegamento DTR è attivato, il mouse dovrebbe identificarsi inviando un byte di dati contenente la lettera M ( ASCII 77). Affinché il mouse funzioni correttamente, sia le linee RTS che DTR devono essere positive.

Assicurati che le linee DTR-DSR ed RTS-CTS non sono in cortocircuito. Per implementare l'interruttore RTS, imposta la linea RTS su negativo e poi di nuovo su positivo. L'ampiezza dell'impulso negativo è di almeno 100 ms.

Questo è un avvio a freddo, dopo il quale la linea RTS verrà impostata su negativa. Impostare la linea RTS su livello positivo, viene considerato una levetta RTS. Ecco la stesura e funzione dei 9 piedini:

Interfaccia della piedinatura DB9

Piedino

Segnale

Descrizione

shellProtezione terra
3TDDati seriali dall'host al mouse (solo per alimentazione)
2RDDati seriali dal mouse all'host
7RTS(Richiesta d'invio)Tensione positiva al mouse
8CTS(Pronto all'invio)
6DSR (Pronto all'impostazione dati)
5Segnale di terra
4DTR (Terminale dati pronto)Voltaggio positivo al mouse e reimpostazione/rilevamento

Formati del pacchetto e parametri dei dati dell'RS232

I parametri dei dati seriali sono 1200bps, 7 bits di dati, 1 bit di stop.

Un pacchetto di dati consiste di 3 bytes. Ogni volta che lo stato del mouse cambia, il mouse invia quel pacchetto al computer.

Panoramica dei parametri dei pacchetti dati

Nota: X denota uno 0 quando il mouse ha ricevuto un formato di 7 bits di dati e 2 di stop. È possibile anche 8 bits di dati ed 1 di stop. Quando questo accade, allora X è 1.
Le opzioni più sicure sono di usare il formato di 7 bits di dati ed 1 di stop, quando il mouse sta ricevendo l'informazione. Per l'invio dell'informazione usa il formato 7 bits di dati e 2 di stop.

Il byte segnato con 1 viene inviato per primo, (valore numerico più basso) poi seguono gli altri. In caso di trasmissione dati fuori sincronia, il bit D6 è il primo byte per la sincronizzazione del programma con i pacchetti del mouse.

LB rappresenta il pulsante sinistro del mouse dove 1 denota la pressione del tasto.

RB è il pulsante destro.

X7 - X0 descrive il movimento in una direzione X dall'ultima trasmissione del pacchetto dati (byte firmato)

Y7 - Y0 è il movimento in una direzione Y dall'ultima trasmissione del pacchetto dati (byte firmato)