|
La norma serie RS-232 fue diseñada para conectar DTEs (Data Terminal Equipment) o equipos terminales de datos (como un terminal, un ordenador, etc.) con DCEs (data communication equipment) o equipos de comunicación de datos, como modems, codecs, AITs, etcétera.
La RS-232 permite la transmisión síncrona y asíncrona. La subnorma asíncrona es sin duda la más frecuente.
La transmisión asíncrona se lleva a cabo tal y como se describe en el punto anterior. En concreto además del bit de START utiliza:
Para agilizar el lenguaje se suele emplear una nomenclatura abreviada como, por ejemplo, "8N1" que indica que la transmisión serie RS-232 se ha configurado para transmitir 8 bits de datos, No paridad y 1 bit de STOP. Otro ejemplo sería "6E2" que indica 6 bits de datos, paridad par y 2 bits de STOP.
El estándar RS-232 normaliza los aspectos mecánicos, eléctricos y funcionales.
Mecánicos:
La RS-232 utiliza un conector DB-25 macho para el DTE y hembra para el DCE.
La conexión entre DTE y DCE es simple. Cada pin conecta con su par (el 1 con el 1, el N con el N) existen versiones de DB-25 para cable plano que simplifica el mecanizado de las conexiones. Cada pin tiene asignado una función tal y como se muestra en la figura. Los nombres de las líneas están puestos desde el punto de vista del DTE. Así, el pin 2 es la línea TxD (transmisión de datos) pero obviamente eso no es cierto en ambos equipos, sólo en el DTE. En el DCE, por el contrario, es la línea por la que recibe los datos del DTE.
Cuando sólo se utiliza la transmisión asíncrona, sólo es necesario utilizar nueve líneas. Se puede utilizar el conector DB-9. Igualmente el macho es el DTE y la hembra el DCE. (Desgraciadamente esta norma, y otras de la RS-232, no siempre es seguida por todos los fabricantes, razón por la cual no siempre es fácil manejar esta interface).
La imagen muestra un conjunto de conectores DB-25 machos (arriba-izquierda.) y hembras (arriba-centro). También pueden observarse conectores DB-9 (ratón) y dispositivos adaptadores DB-25 a DB-9 (abajo), uno de ellos con un probador de RS-232.
La longitud máxima del cable entre DTE y DCE depende de la calidad de éste y de la velocidad de transmisión utilizada. En principio la norma recomienda que no sea superior a 15 metros para una velocidad de 20Kbits/seg.
Eléctrica:
La subnorma eléctrica de la RS-232 es la V28. La norma fija una transmisión en modo común (cada circuito tienen una referencia a tierra y esta es común para todos los circuitos). Los circuitos son punto a punto, es decir, un driver con un sólo receptor de la señal.
La señal es bipolar con lógica invertida, utilizando los siguientes valores:
1 lógico =-3 a - 15 voltios 0 lógico = + 3 a + 15 voltios La ausencia de señal (0 voltios) queda diferenciado del 0 y 1 lógicos.
La RS-232 es cortocircuitable. Esto quiere decir que, al menos teóricamente, los drivers de salida de las puertas disponen de un mecanismo de auto-protección contra sobrecalentamientos. La tensión máxima de operación es ±25voltios y la carga máxima es de 3Kohm a 7Kohm, con una corriente máxima de 500mA.
Funcional: (sobre norma asíncrona)
La norma asíncrona la forman nueve líneas.
La línea GND conecta la masa de ambos equipos y no merece mayor comentario. Las restantes ocho líneas pueden ser agrupadas en tres bloques funcionales que se explican fácilmente si recordamos que la norma fue diseñada para conectar un PC (DTE típico) con un modem (DCE típico).
Primer bloque: Lo denominaremos "de establecimiento de conexión". Está formado por las líneas:
DTR (Data Terminal Ready). Terminal de datos preparado. (El PC y su RS232 están listos).
DSR (Data Set Ready). Equipo de comunicación preparado. (El modem está listo).
RI (Ring Indicator). Indicador de llamada. (El modem indica a su PC que ha recibido una llamada).
El objetivo es que ambos PCs sepan que se ha establecido un canal de comunicación (normalmente a través de la línea telefónica).
Las líneas DTR y DSR del equipo local y del remoto deben estar activas (set) durante todo el proceso. (De hecho cuando un PC desea dar por terminada una conexión basta con que, momentáneamente, desactive (reset) su DTR).
La conexión se inicia manualmente (el usuario llama con el teléfono al modem remoto) o automáticamente (el modem tiene capacidad de marcar un número de teléfono – dialling ) y se gestiona en los modems (que negocian, de forma automática, los parámetros de transferencia como la velocidad, compresión, etc.).
Se asume que el usuario del PC que llama activará el proceso que va a utilizar la conexión (un programa de transmisión de ficheros, por ejemplo). En el PC llamado se asume que el proceso homólogo está ya activo (porque, p.e., lo está permanentemente) o se puede activar automáticamente al recibir de su modem la señal de RI. Sea como fuera, la conexión queda establecida. A partir de este momento los PCs pueden intercambiar información.
Segundo bloque: "Control de flujo".
Estas líneas tienen sentido en el caso de que el canal de comunicación establecido tenga una gestión half-duplex.
Si el canal está establecido, el protocolo software de nivel de enlace de datos que se esté utilizando (Xmodem, Ymodem, HDLC,...) fijará cuál de los dos DTEs debe comenzar a hablar/transmitir.
Las líneas en este bloque son usadas de la siguiente manera:
RTS (Request To Send). Petición de transmisión. El PC indica a su modem que quiere transmitir a la máquina remota.
CTS (Clear To Send). Canal libre para la transmisión. El modem indica a su PC que puede transmitir. Previamente habrá transmitido una señal portadora por el canal de comunicación para avisar al otro modem que ocupa el canal.
DCD (Data Carrier Detected). Detectada portadora. El modem indica a su PC que el canal de comunicación está ocupado por el equipo remoto.
El PC que quiere transmitir activa RTS, entonces su modem manda una señal portadora (sin modular, sin datos) para avisar al modem remoto que se reserva el canal. Una vez reservado el canal comunica a su DCE que ya puede transmitir activando la línea CTS.
Cuando un PC haya terminado de transmitir, desactivará RTS, el modem quitará la portadora y desactivará CTS. Entonces el otro modem podrá reservar el canal si su PC desea transmitir.
En caso de que la gestión del canal sea full-duplex todo es más sencillo. Cuando un PC quiere transmitir activa su RTS. Automáticamente su modem le da paso activando CTS.
Tercer Bloque: “Transmisión/recepción de datos”.
El funcionamiento de las líneas de este bloque es obvio. Cuando un PC puede transmitir, lo hace por la línea:
TxD. Transmisión de datos.
...y si está recibiendo datos lo hace por
RxD. Recepción de datos.
La transmisión serial de los datos, tal y como se ha explicado, con el bit de START, de STOP, etcétera, se produce en estas líneas.
GESTIÓN SIMPLEX, HALF-DUPLEX Y FULL-DUPLEX DE UN CANAL DE COMUNICACIÓN.
Un canal de comunicación puede ser gestionado de tres maneras: simplex, semi-duplex (o half-duplex) y duplex (o full-duplex).
Simplex: La comunicación sólo es posible en un sentido. Por ejemplo, las emisiones de radio o televisión gestionan el éter en modo simplex.
Half-duplex: La comunicación es posible en ambos sentidos pero de modo alternado, nunca simultáneamente. Por ejemplo un walkie-talkie gestiona el éter en modo half-duplex.
Full-duplex: La comunicación es posible en ambos sentidos simultáneamente. Por ejemplo los teléfonos móviles utilizan el éter en modo full-duplex.
Debe quedar claro que se trata de un modo de gestión del canal, no de una propiedad de éste. En los ejemplos queda claro que un mismo medio, el éter, puede ser gestionado de modos distintos.
CONTROL DE FLUJO CON RS-232.
Existen dos posibilidades de control de flujo de datos con la RS232: Una hardware mediante las líneas RTS/CTS y otra software XON/XOFF.
RTS/CTS: la línea CTS indica al PC si puede transmitir o no. En aplicaciones como la conexión de un PC a una impresora serie (dispositivo este normalmente bastante lento) la línea CTS está gobernada por la impresora para impedir que el PC desborde su buffer de entrada.
XON/XOFF: Otra posibilidad es usar el protocolo software XON/XOFF que consiste en lo siguiente:
1. Cuando la impresora está dispuesta para recibir datos (buffer de entrada vacío o casi vacío) transmite al PC la marca XON (XON y XOFF son códigos ASCII predefinidos).
2. Si el PC transmite demasiado rápido para la impresora y el buffer está próximo a llenarse, entonces se manda la marca XOFF.
3. El PC transmite sólo si la última marca recibida fue XON.
Dependiendo de las características de los equipos a conectar se puede hacer un control de flujo RTS/CTS, XON/XOFF, ambos o ninguno.
Cuando se utilizan ambos, normalmente es porque hay que controlar dos buffers de recepción, el del dispositivo físico (UART), que se hace por RTS/CTS, y el buffer de la aplicación que está recibiendo los datos, que se hace con XON/XOFF.
|