Está en la página 1de 5

Escuela de Educación Técnica Nº 6 Docenter: Valencia, Carlos R.

Programación Orientada al Control de Procesos Industriales Tema: Transmisión por RS232

TRANSMISION POR RS232

TRANSMISIÓN ASINCRONICA

La transmisión asíncrona se emplea cuando los datos se transmiten a intervalos aleatorios, de modo que el receptor debe
ser capaz de re sincronizarse al inicio de cada nuevo carácter que reciba. Para ello cada carácter debe ir precedido de un
bit de inicio (bit Start) y seguido de uno o más bits de parada.
Este modo es el empleado, por ejemplo, en la transmisión de caracteres entre un teclado y un ordenador, así como en la
norma de interfaz RS 232 para la conexión de DTE con DCE o incluso para la comunicación de datos entre dos
ordenadores (DTE-DTE). En este caso, a continuación de cada bit de parada seguiría el bit de inicio del siguiente
carácter sin retardo adicional hasta completar el bloque completo de datos.
Al producirse sincronización al principio de cada carácter se evita que las posibles desviaciones entre los relojes del
emisor y el receptor se acumulen durante la transmisión de tramas completas de datos.
Otro aspecto a tener en cuenta ocurre en la transmisión de una trama, donde es necesario reconocer cuando empieza y
termina la misma, pues el orden de agrupación de los byte permitirá interpretar adecuadamente o no un mensaje
(ejemplo: Destinatario / Remitente / Datos).
Al emplear tramas es necesario emplear algún mecanismo de sincronización de tramas, las cuales se dividen en:

Sincronización de Tramas x Carácter:


Solo valida cuando se transmite en formato texto. Se transmite primero un carácter convenientemente uno que no se
use, luego los campos que posee la trama y finaliza con el mismo u otro carácter no imprimible. Por lo general son
diferentes, y al primero se lo conoce como STX (Start Tx) y el carácter final se conoce como ETX (End Tx). Se sigue
respetando los bits de Start y Stop para cada carácter.

Sincronización de Tramas x Bit:


Solo valida cuando se transmite en formato binario. Se emplean un byte de comienzo y fin de trama, y ambos van
precedidos por un “carácter de escape de enlace de datos” DLE (Data Link Escape).

Se emplea este método porque a diferencia del anterior, puede ocurrir que algún byte enviado coincida con el byte de
comienzo (ocurriría un error de transmisión) o de fin (finalizaría antes de enviar toda la trama), como en la
sincronización por carácter se usa un carácter que no se emplea en la trama entonces no existen estos problemas.
Aun así, en el caso de que alguno de los bytes intermedios coincidiera con el código correspondiente a DLE, el
emisor automáticamente insertaría un segundo código DEL a continuación de este byte, de modo que el receptor
podrá diferenciar de manera univoca entre códigos del enlace de datos, que van seguidos por STX o ETX y datos que
coinciden con un DLE, que llegan de dos en dos (una vez identificado, el receptor eliminara el byte duplicado).

PROTOCOLO DE CONTROL DE FLUJO

Electrónicamente hablando, el modulo que implementa la comunicación a través de la información en formato paralelo
se conoce como UART (Universal Asyncronous Receiver Transmitter – Transmisor y Receptor Universal Asincrónico).

1 de 5
Escuela de Educación Técnica Nº 6 Docenter: Valencia, Carlos R.
Programación Orientada al Control de Procesos Industriales Tema: Transmisión por RS232

Se puede apreciar un intercambio de datos en conexión Null-Modém (no se grafica las demás señales).

Como se puede apreciar Ap1 (aplicación uno) envía a una memoria (buffer) el dato en formato paralelo, luego se
ingresa al UART, se transmite en formato serie por Tx, llega a destino por Rx, ingresa a la UART del receptor y se
deposita en el buffer de recepción, donde la aplicación dos (Ap2), dispone de este dato en formato paralelo.
Bajo este mecanismo de funcionamiento puede ocurrir que el buffer de recepción se llene porque la aplicación no los
retira con suficiente velocidad. Esto genera que los datos que siguen llegando se almacenen desechando los anteriores
(que aun no se han leído) produciéndose una perdida de datos.
Para evitar este tipo de situaciones y regular el flujo de datos se emplean protocolos de control de flujo, que permiten,
de algún modo, informar al emisor para que deje de transmitir cuando un buffer de recepción se encuentra lleno.
En RS-232 existen dos métodos:
- Control de flujo por software (XON/XOFF): Cuando el buffer de recepción se llena, el receptor envía un
carácter denominado XOFF (Carácter ASCII =19) para que el emisor detenga la transferencia. Cuando vuelva
a haber espacio disponible en el buffer del receptor se envía el carácter XON (Carácter ASCII =17) para que
reanude la transmisión.

- Control de flujo por Hardware: Se emplean las líneas de control RTS-CTS o bien DTR-DSR para regular el
flujo.

Cuando la cantidad de datos a transmitir es pequeña estos protocolos no son necesarios, por lo que en muchas
aplicaciones no se utilizan.

USO DEL RS-232

La norma RS-232 fue definida originariamente como una interfaz estándar para conectar un equipo de datos (DTE: Data
Terminal Equipment), como una PC, a un equipo de comunicación de datos (DCE: Data Communication Equipment),
que originariamente era un Modém.
Se considera un DTE al que origina la información o la recibe, y al DCE al equipo usado para transmitir / recibir
mencionada información.

PSTN = Public System Telephonic Net (Sistema de Red Telefónica Publica)

Los conectores empleados en este tipo de norma, pueden DB-9 o DB-25:

2 de 5
Escuela de Educación Técnica Nº 6 Docenter: Valencia, Carlos R.
Programación Orientada al Control de Procesos Industriales Tema: Transmisión por RS232

Cuando el DTE esta preparado para hacer o recibir solicitudes de transferencia de datos activa la línea DTR (Data
Terminal Ready – Terminal de Datos Preparado), y el Modém local responde activando DSR (Data Communication
Ready – Equipo de Comunicación de Datos Preparado), indicando que esta preparado.
A continuación la PC envía al Modém el número de teléfono de la PC con que se quiere comunicar. Cuando el Modém
destino activa la línea de indicación de llamada RI (Ring Indicator – Indicación de Llamada), la PC destino responde a
su Modém activando la línea RTS (Request To Send- Permiso para enviar).
Como respuesta el Modém destino activa la portadora (tono de envía por la línea telefónica) para indicar al origen que
se acepta la llamada (con un 1 Lógico en la línea) y tras un pequeño retardo, activa la línea CTS (Clear To Send – Listo
para enviar) para indicar a la PC destino que se puede comenzar a enviar los datos. El retardo es necesario para que la
PC destino no empiece a enviar hasta que el que llama haya detectado la aceptación de la llamada.
Al detectar la señal de la portadora el Modém origen (el que origina el llamado) activa su línea CD (Carrier Detect -
Detección de portadora), de modo que la conexión se ha establecido y puede comenzar la transferencia de datos.
Normalmente, la PC destino empieza enviando un mensaje corto de "Invitación a transmitir", tras lo cual se prepara
para recibir la respuesta desactivando la línea RTS (Request To Send- Permiso para enviar). Al detectar esto el Modém
al que se llama deja de enviar portadora y desactiva la línea CTS (Clear To Send – Listo para enviar). Con ello, el
Modém de origen detectara la suspensión de portadora y como respuesta desactiva su línea CD (Carrier Detect -
Detección de portadora). Para enviar la respuesta, la PC origen activa RTS, y al recibir CTS de su Modém comienza a
enviar su mensaje. Este proceso se repite durante el intercambio de mensaje entre las dos PCs.
Para finalizar y liberar la conexión ambas PC desactivan su línea RTS, con lo que los Modém desactivan sus portadoras.
Al detectar esto, ambos Modém desactivan su línea CD, y con ello las PC desactivan, a su vez, las líneas DTR, a lo que
los Modém responden desactivando DSR, finalizando así la conexión. Por lo general, la PC destino se prepara para
recibir una nueva llamada volviendo activa la línea DTR tras un pequeño intervalo de tiempo.
Esta conexión es del tipo Half-Duplex, es decir, hay que cambiar de modo recepción a modo transmisión mediante una
secuencia de señales de control. El tiempo empleado para el intercambio es insignificante. A pesar de ello, es preferible
utilizar el modo full-duplex, en el que ambas líneas RTS se dejan activas, y los dos módems mantienen activa la línea

3 de 5
Escuela de Educación Técnica Nº 6 Docenter: Valencia, Carlos R.
Programación Orientada al Control de Procesos Industriales Tema: Transmisión por RS232

CTS, de modo que envían continuamente una señal portadora al Modém remoto. Así es posible el envió y recepción
simultaneo de datos a través de TxD y RxD.

CONEXIONADOS

Existen diversos modos de conexión dependiendo del tipo de equipo que se deseen conectar.
El empleo de las señales de control (los pares RTS–CTS y DTR–DSR) se conoce como handshaking.

Conexión DTE a DCE:


Por ejemplo PC a Modém. Las conexiones se hacen en paralelo pin a pin, empleando un conector DB25
o DB9 macho y hembra.

Conexión en bucle de diagnostico (Loopback):


Se emplea para comprobar el correcto funcionamiento
del puerto serie en el DTE. Para ello se puentean las
señales de datos y control.

Conexión en “Modém Nulo (Null-Modém)”:


Se emplea para conectar dos DTE (x ejemplo dos PC) de modo que se ‘emule’ la existencia de los DCE.

Conexión Null-Modém con Handshaking (conexión a 7 hilos).

Conexión Null-Modém sin Handshaking (conexión a 3 hilos).

Conexión de un microcontrolador al puerto serie del PC

Para conectar la PC a un microcontrolador por el puerto serie se utilizan las señales Tx, Rx y GND. La PC utiliza la
norma RS232, por lo que los niveles de tensión de los pines están comprendidos entre +15 y -15 voltios. Los
microcontroladores normalmente trabajan con niveles TTL (0-5v). Es necesario por tanto intercalar un circuito que
adapte los niveles:

4 de 5
Escuela de Educación Técnica Nº 6 Docenter: Valencia, Carlos R.
Programación Orientada al Control de Procesos Industriales Tema: Transmisión por RS232

Este es un circuito util si solo se pretende una comunicación simplex


entre una PC (Tx) y un microcontrolador (Rx):

Si en cambio se pretende una comunicación half-duplex se puede


recurrir al siguiente circuito.
Este circuito utiliza la propia tensión del puerto para generar nuestra
propia señal RS232. Los pines marcados como TxD, RxD y Gnd
corresponden al conector RS232 de la PC (ver conexionado)
mientras que los pines marcados como RD y TD van directamente a
microcontrolador.
Este tipo de interfase es muy vista en Mouse o elementos de control
de punteo en PC. Los puntos de alimentación son de 5V (los mismos
que del micro).

Pero si lo que se busca es una comunicación full-duplex se debe recurrir al MAX232.


Este chip permite adaptar los niveles RS232 y TTL, permitiendo conectar un PC con un microcontrolador. Sólo es
necesario este chip y 4 condensadores electrolíticos de 22 μF. El esquema es el siguiente:

Circuito para una conexión Null-Modem sin


Handshaking.

Circuito para una conexión Null-Modem con


Handshaking.

5 de 5

También podría gustarte