RS232: Convertitore TTL

Convertitore RS232-TTL

RS232 e la logica TTL non sono compatibili. Per connettere un cavo RS232 ad un circuito TTL bisogna usare un convertitore in grado di presentare ±12V (lato RS232) e 0-5V (lato microcontrollore).

Convertire i segnali RS232 da ±12V a 0-5V e viceversa è un operazione abbastanza semplice, e fondamentale per poter connettere un cavo RS232 ad un microcontrollore.
Infatti molte schede elettroniche riportano in uscita i segnali TXD e RXD della UART. Questi però operano a 0V ed a 5V (on-off) quindi NON possono essere connessi direttamente all’RS232 del PC.

Devono essere convertiti (in alcuni casi anche isolati).
Della RS232 ne abbiamo già parlato in vari articoli come “Convertitore Seriale”, “Cavo RS232″, “DB9″,”Convertitore USB RS232″ e anche del più famoso driver per RS232 abbiamo parlato: il MAX232.
Se avete poca familiarità con l’RS232 vi consiglio di andare a leggere prima questi articoli, per poter avere un minimo di nozioni sia sul pinout dell’RS232 che sul driver usato dall’RS232. Quest’ultimo infatti, il MAX232 appunto, è il cuore del convertitore RS232-TTL. All’interno contiene 2 trasmettitori e 2 ricevitori sia RS232 che TTL.

Se proprio non sapete cosa è l’RS232 allora vi rimando da Wikipedia

Convertitore RS232 TTL

Abbiamo qundi appurato che bisogna convertire questi segnali, TX e RX almeno, ma se usiamo tutti i criteri dobbiamo convertire anche questi ultimi ovviamente. Per fare questo esistono 2 modi, il primo è di utilizzare un integrato che svolge tale compito come ad esempio il MAX232 (se utilizziamo solo TX e RX) oppure il MAX3238 se usiamo tutti i criteri (RTS CTS DSR DTR DTD RI). Il secondo è quello di usare componenti elettronici per livellare a 0 e +5V i segnali RS232 ed aumentare invece a +12 e -12 i segnali TTL. Analizziamo le due soluzioni.

RS232 – TTL utilizzando un driver

Sicuramente è la soluzione piu semplice, basta usare un driver, ne esistono di tutti i tipi e li costruiscono molte case. Il più famoso come già detto è il MAX232 (ma ha solo 2 canali quindi TX e RX) ma ne esistono veramente centinaia. Al driver RS232 vanno aggiunti una manciata di condensatori (5 ceramici da 100nf vanno benissimo per i nuovi MAX232) ed il convertitore è pronto.
Ecco un esempio di convertitore RS232 – TTL.

convertitore ttl-rs232

Ecco altri esempi di convertitori:

Vari schemi con convertitori a driver

RS232 / TTL Level converter

Semplice convertitore TTL RS232

 

RS232 – TTL convertitore con componenti discreti

Non utilizzare il driver è una scelta che può essere dettata da vari fattori, come il costo e/o lo spazio disponibile. Il costo di un driver convertitore di segnali RS232/TTL è ormai molto basso, ma se si devono produrre migliaia di convertitori al mese, anche un risparmio di pochi centesimi può essere significativo, altrimenti, per il costo, non ha senso usare i componenti. Altro discorso per lo spazio disponibile, anche se ormai i driver sono in contenitori smd soic, quindi molto piccoli, i componenti possono occupare meno spazio, ed a volte sono proprio quei pochi millimetri di spazio in meno che fanno scegliere una soluzione piuttosto che l’altra.

TTL -RS232

Per convertire i segnali si utilizzano diodi, transistor ed ovviamente resistenze. Esistono vari circuiti ma il principio è sempre lo stesso: dal lato RS232 si deve livellare il segnale a +12V portandolo a +5V ed il segnale a -12V portandolo a zero (altrimenti il microcontrollore si rompe)dal lato TTL invece si deve convertire il segnale di +5V a +12 (e questo in genere è il limite di questi converitori, in pratica si rimandano sempre 5V e a volte non funzionano per colpa del cavo lungo, disturbi etc) e convertire il segnale TTL 0 a -12V (in genere ri rimanda indietro all’RS232 un suo segnale di -12V)

Una soluzione interessante è quella del convertitore proposto da SparkFun.

e questo circuito
convertitore RS232-TTL

Dei convertitori TTL / RS232 isolati, ne parlerò in un prossimo articolo, prometto!

STAMPA     Tags:, ,

One Response

  1. entony mini 28 giugno 2014

Leave a Reply