Está en la página 1de 14

Estndar de comunicaciones RS-232C

Estndar de comunicaciones RS232C "Recommended Standard" 232 est definido en


las especificaciones ANSI (American National Standard Institution) como " la interface
entre un equipo terminal de datos y un equipo de comunicacin de datos empleando un
intercambio en modo serie de datos binarios". En l se describen las diferentes reglas a
seguir para realizar una comunicacin serie entre dos dispositivos distantes entre s.
Normalmente, los dispositivos que intervienen en una
comunicacin serie son el Equipo Terminal de Datos
(ETD), que suele ser un PC, y el Equipo de
Comunicacin de Datos (ECD), generalmente un
equipo de medida para nuestro caso. A pesar de que el
estndar RS232 empez utilizndose para la
comunicacin entre un PC y un mdem, la gran
implantacin de los PCs ha derivado en la ampliacin del uso del RS232,
convirtindose en el estndar ms utilizado en aplicaciones de bajo coste que
requieran la interconexin serie entre un ETD y un perifrico. Como perifricos serie
ms usuales se pueden nombrar las impresoras, el ratn, los plotters, los scanners, los
digitalizadores, etc.
Para facilitar la conexin entre DTE y DCE se han desarrollado mltiples estndares
que determinan todas las caractersticas fsicas, elctricas, mecnicas y funcionales de
la conexin constituyendo lo que denominamos la definicin de una interface. Estos
estndares constituyen un ejemplo de los protocolos del nivel fsico, y se encuadraran
en el nivel ms bajo del modelo de referencia OSI.
El RS-232 es una norma para la conexin entre un DTE y un DCE que define :

El tipo de conector a emplear.


Las caractersticas elctricas.
Los niveles de tensin.
Las longitudes mximas a distintas velocidades.
Los nombres de las seales que intervienen en el funcionamiento y la estructura
del protocolo de comunicacin.

Esta norma establece una sealizacin elctrica bipolar:


Nivel lgico 0 : +15...+3Voltios.
Nivel lgico 1 : -15...-3Voltios.

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

Las velocidades de transmisin que puede soportar este estndar van desde los 0 bps
hasta los 20 Kbps. Con respecto a las distancias mximas se propone que no sean
superiores a 15 metros. Aunque un diseo cuidadoso puede permitir distancias muy
superiores, hay que suponer que esta limitacin terica se puede manifestar en la
prctica en dispositivos que cumplan la norma.
En el siguiente dibujo podemos ver la conexin bsica de RS-232.
Las caractersticas principales que definen el estndar son:

Velocidad mxima de transmisin de datos: 20 K bits por segundo (Kbps). Ahora


bien, existen aplicaciones que se salen de las especificaciones del estndar que
llegan a velocidades de hasta 116 kbps.

Capacidad de carga mxima: 2500 pF. Esto se traduce en una


longitud mxima de cable entre el PC y el perifrico de 15 a 20
metros. Para distancias mayores se ha de utilizar otro estndar de
comunicaciones.

El conector
El RS-232C consiste en un conector tipo DB-25 de 25 pines, aunque es normal
encontrar la versin de 9 pines DB-9, mas barato e incluso mas extendido para cierto
tipo de perifricos (como el ratn serie del PC). En cualquier caso, los PCs no suelen
emplear mas de 9 pines en el conector DB-25. Las seales con las que trabaja este
puerto serie son digitales, de +12V (0 lgico) y -12V (1 lgico), para la entrada y salida
de datos, y a la inversa en las seales de control. El estado de reposo en la entrada y
salida de datos es -12V. Dependiendo de la velocidad de transmisin empleada, es
posible tener cables de hasta 15 metros.
Cada pin puede ser de entrada o de salida, teniendo una funcin especfica cada uno
de ellos. Las ms importantes
son:
Pin DB9
3 TXD
2 RXD
4 DTR
6 DSR
7 RTS
8 CTS
1 DCD
5 GND
9 RI

Funcin
(Transmitir Datos)
(Recibir Datos)
(Terminal de Datos
Listo)
(Equipo de Datos
Listo)
(Solicitud de Envo)
(Libre para Envo)
(Deteccin
de
Portadora)
Tierra
Indicador de Llamada

Notas de clase profesores: Lucelly Reyes

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

A continuacin se describe brevemente la funcin de cada una de los pines.

Data Carrier Detect (DCD): El DCE pone a "1" esta lnea para informar al DTE que
est recibiendo una seal portadora con informacin.
Data Set Ready (DSR): Es una seal que el DCE pone a "1" para indicar al DTE
que est conectado a la lnea.
Receive Data Line (RD): Las seales que se reciben por la lnea RD son en forma
de transmisin serie. Cuando la seal DCD est a "0", la lnea RD se ha de
mantener en el estado Mark.
Request To Send (RTS): Esta seal es puesta a "1" por el DTE para indicar que
est preparado para transmitir datos. Entonces el DCE ha de prepararse para
recibir datos. En comunicaciones Half Duplex tambin se inhibe el modo de
recepcin de datos. Despus de una cierta espera, el DCE pone a "1" la lnea CTS
para informar al DTE de que ya est preparado para recibir datos.

Una vez la comunicacin ha finalizado y no se transmiten ms datos por parte del DTS,
RTS pasa de valer "1" a valer "0". Despus de un pequeo tiempo de espera, para
asegurarse de que han sido recibidos todos los datos transmitidos, el DCE pone a "0"
la lnea CTS.

Transmit Data Line (TD): Las seales se transmiten por esta lnea, en modo serie,
del DTE al DCE. Guando no se est transmitiendo ningn tipo de Informacin, la
lnea ha de mantenerse en su estado Mark. Para que se puedan transmitir datos,
las lneas DSR, DTR, RTS y CTS han de encontrarse a "1 ".
Clear To Send (CTS): Esta seal es puesta a "1" por el DCE para indicar al DTE
est preparado para recibir datos. CTS es puesta a "1" como respuesta a un estado
"1"simultneo de las lneas RTS, DSR y DTR.
Data Terminal Ready (DTR): Esta seal, conjuntamente con DSR, indica que los
equipos estn operativos. DTR es puesta a "1" por el DTE para indicar al DCE que
est preparado para recibir o transmitir datos. DTR ha de estar a "1" antes de que el
DCE pueda poner a "1" DSR. Cuando DTR es puesta a "0" por el DTE, eI DCE es
desconectado del canal de comunicaciones dado que ya ha sido completada la
transmisin de la informacin.
Ring Indicator (RI): RI es puesta a "1" por el DCE cuando est recibiendo una
Ilamada, Esta lnea ha dejado de ser til al emplearse el estndar en las
aplicaciones de modems.
Signal Ground (pin 5): Esta lnea proporciona el comn, la referencia de tierra, a
todas las lneas antes expuestas. Est elctricamente separada de la toma de tierra
para proteccin del equipo.

Las seales TXD, DTR y RTS son de salida, mientras que RXD, DSR, CTS y DCD son
de entrada. La masa de referencia para todas las seales es GND (Tierra de Seal).
Finalmente, existen otras seales como RI (Indicador de Llamada).

Notas de clase profesores: Lucelly Reyes

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

La conexin "mdem nulo"


En ciertas aplicaciones es necesario interconectar directamente dos EDT's, es decir, la
conexin serie no se realizar entre el PC y un mdem, sino entre el PC y otro
dispositivo como otro PC, un Autmata Programable Industrial, u otros. En estos casos
es necesario construir un cable de comunicaciones especial, con un cableado que
permita la conexin de los dos equipos sin la mediacin de un mdem. Esta conexin
tpica es la Ilamada de "mdem nulo" y se presenta en la figura.

Conexin Mdem Nulo

El puerto serie en el PC
El computador controla el puerto serie mediante un circuito integrado especfico,
llamado UART (Transmisor-Receptor-Asncrono Universal). Normalmente se utilizan
los siguientes modelos de este chip: 8250 (bastante antiguo, con fallos, solo llega a
9600 baudios), 16450 (versin corregida del 8250, llega hasta 115.200 baudios) y
16550A (con buffers de E/S). A partir de la gama Pentium, la circuiteria UART de las
placa base son todas de alta velocidad, es decir UART 16550A. De hecho, la mayora
de los mdems conectables a puerto serie necesitan dicho tipo de UART, incluso
algunos juegos para jugar en red a travs del puerto serie necesitan de este tipo de
puerto serie. Por eso hay veces que un 486 no se comunica con la suficiente velocidad
con un PC Pentium. Los porttiles suelen llevar otros chips: 82510 (con buffer especial,
emula al 16450) o el 8251 (no es compatible).
Para controlar al puerto serie, la CPU emplea direcciones de puertos de E/S y lneas
de interrupcin (IRQ). En el AT-286 se eligieron las direcciones 3F8h (o 0x3f8) e IRQ 4
para el COM1, y 2F8h e IRQ 3 para el COM2. El estndar del PC llega hasta aqu, por
lo que al aadir posteriormente otros puertos serie, se eligieron las direcciones 3E8 y
2E8 para COM3-COM4, pero las IRQ no estn especificadas. Cada usuario debe
elegirlas de acuerdo a las que tenga libres o el uso que vaya a hacer de los puertos
serie (por ejemplo, no importa compartir una misma IRQ en dos puertos siempre que
no se usen conjuntamente, ya que en caso contrario puede haber problemas). Es por
ello que ltimamente, con el auge de las comunicaciones, los fabricantes de PCs
incluyan un puerto especial PS/2 para el ratn, dejando as libre un puerto serie.
Mediante los puertos de E/S se pueden intercambiar datos, mientras que las IRQ
producen una interrupcin para indicar a la CPU que ha ocurrido un evento (por
Notas de clase profesores: Lucelly Reyes

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

ejemplo, que ha llegado un dato, o que ha cambiado el estado de algunas seales de


entrada). La CPU debe responder a estas interrupciones lo mas rpido posible, para
que de tiempo a recoger el dato antes de que el siguiente lo sobrescriba. Sin embargo,
las UART 16550A incluyen unos buffers de tipo FIFO, dos de 16 bytes (para recepcin
y transmisin), donde se pueden guardar varios datos antes de que la CPU los recoja.
Esto tambin disminuye el numero de interrupciones por segundo generadas por el
puerto serie.
El RS-232 puede transmitir los datos en grupos de 5, 6, 7 u 8 bits, a unas velocidades
determinadas (normalmente, 9600 bits por segundo o ms). Despus de la transmisin
de los datos, le sigue un bit opcional de paridad (indica si el numero de bits
transmitidos es par o impar, para detectar fallos), y despus 1 o 2 bits de Stop.
Normalmente, el protocolo utilizado ser 8N1 (que significa, 8 bits de datos, sin paridad
y con 1 bit de Stop).
Una vez que ha comenzado la transmisin de un dato, los bits tienen que llegar uno
detrs de otro a una velocidad constante y en determinados instantes de tiempo. Por
eso se dice que el RS-232 es asncrono por carcter y sincrono por bit. Los pines que
portan los datos son RXD y TXD. Las dems se encargan de otros trabajos: DTR
indica que el computador esta encendido, DSR que el aparato conectado a dicho
puerto esta encendido, RTS que el computador puede recibir datos (porque no esta
ocupado), CTS que el aparato conectado puede recibir datos, y DCD detecta que
existe una comunicacin, presencia de datos.
Para enviar datos desde el DTE hacia el DCE en primer lugar debe ocurrir que DRS y
CTS estn a 0. Despus se comunican datos usando TXD. En cualquier momento el
DCE puede detener al DTE poniendo DSR a 1 o estableciendo CTS a 1.
Tanto el aparato a conectar como el computador (o el programa terminal) tienen que
usar el mismo protocolo serie para comunicarse entre si. Puesto que el estndar RS232 no permite indicar en que modo se esta trabajando, es el usuario quien tiene que
decidirlo y configurar ambas partes. Como ya se ha visto, los parmetros que hay que
configurar son: protocolo serie (8N1), velocidad del puerto serie, y protocolo de control
de flujo. Este ultimo puede ser por hardware (el que ya hemos visto, el handshaking
RTS/CTS) o bien por software (XON/XOFF, el cual no es muy recomendable ya que no
se pueden realizar transferencias binarias). La velocidad del puerto serie no tiene por
qu ser la misma que la de transmisin de los datos, de hecho debe ser superior. Por
ejemplo, para transmisiones de 1200 baudios es recomendable usar 9600, y para 9600
baudios se pueden usar 38400 (o 19200).

UTILIZACIN DEL PUERTO SERIE MEDIANTE LabVIEW


LabVIEW proporciona herramientas de gran utilidad para el manejo del puerto serie.
Todas las funciones que son necesarias a la hora de realizar una comunicacin serie
entre el PC y un perifrico se encuentran ya programadas en forma de Instrumentos
Virtuales. De esta forma, la utilizacin del puerto serie es casi transparente al
programador de LabVIEW. La manera de actuar es la siguiente: Cuando se desee
realizar alguna operacin con el puerto, se escoger el icono necesario para dicha
funcin, ste se cablear de forma adecuada y, al ser ejecutado, LabVIEW se ocupar
de manejar el puerto convenientemente para obtener o entregar los datos requeridos.

Notas de clase profesores: Lucelly Reyes

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

Los iconos de manejo del puerto serie se encuentran en el men Functions de la


ventana Diagram. Una vez en Functions, se ha de acceder al submen Serial. Tras
seguir estos pasos, aparecen en pantalla los cinco iconos que Labview ofrece para el
uso del puerto serie. La situacin de estos iconos en el submen indicado se muestra
en la figura.
Una vez desplegado el submen de los iconos del puerto serie, se pulsa el botn
izquierdo del ratn y, mantenindolo pulsado, se mueve la flecha hasta situarla sobre el
smbolo de la funcin que se desee realizar. En la parte inferior de la ventana
aparecer el nombre de dicha funcin. Cuando se tiene seguridad de que la eleccin
es la correcta, se deja de pulsar el botn del ratn y el icono escogido aparecer sobre
la pantalla del diagrama, quedando listo para ser utilizado.

Es importante tener en cuenta que los pasos a seguir al utilizar el puerto serie son
siempre los siguientes:

Realizar la configuracin del puerto serie, inicializndolo segn las caractersticas


que se deseen para la comunicacin. Ya no ser necesario volver a configurar el
puerto mientras no se varen las condiciones de comunicacin.
Acceder al puerto serie para recibir o enviar datos tantas veces como se deseen.

Notas de clase profesores: Lucelly Reyes

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

A continuacin se mostrarn y se describirn los diferentes iconos de que dispone


LabVIEW para el manejo del puerto serie. La explicacin de cada uno de estos iconos
estar acompaada, para mayor claridad, por uno o ms ejemplos de programacin.

Configuracin del puerto serie


Antes de poder utilizar el puerto serie para transmitir y/o recibir, es imprescindible
configurarlo. De esta manera se le indica al PC cmo ha de actuar en las
comunicaciones, es decir, qu puerto serie ha de utilizar, con qu velocidad de
transmisin ha de emitir y recibir bytes, qu tipo de paridad ha de utilizar, etc...
Es importante tener en cuenta que la configuracin que se le d al puerto serie del PC
ha de ser exactamente la misma que utilice el dispositivo perifrico. Si esto no fuera
as, PC y perifrico no podran comunicarse con xito, ya que estaran utilizando
especificaciones de transmisin diferentes.
As pues antes de realizar ninguna operacin con el puerto serie, ser necesario
configurarlo de forma adecuada, teniendo en cuenta las caractersticas de
comunicacin serie del dispositivo. Una vez se ha configurado el puerto y no es
necesario volverlo a configurar mientras no se deseen cambia las especificaciones de
la comunicacin.

PROTOCOLOS DE COMUNICACIN ("HANDSHAKING MODES")


En una comunicacin serie es conveniente realizar un control sobre la transmisin y la
recepcin de datos a fin de que sta se lleve a cabo de forma correcta, es decir, que no
se pierda informacin. Uno de los principales problemas que se presentan es la
vigilancia de los buffers que destina el puerto serie para la recepcin y transmisin de
datos. Estos buffers son zonas de memoria reservada que funcionan de la siguiente
manera:
Por una parte, se guardan los datos que van Ilegando por el puerto serie desde el
perifrico. Estos datos se mantienen almacenados hasta que son ledos por el
programa que gestiona el puerto serie. Es posible que la Ilegada reiterada de
informacin sin que sta sea leda acabe por Ilenar la capacidad del buffer de
recepcin. En este caso, los nuevos datos que se reciban tras la saturacin del
buffer son ignorados, es decir, toda esta nueva informacin se pierde. Para que se
puedan volver a recibir datos nuevos, primero se han de leer algunos de los datos
almacenados en el buffer, con lo que en ste se dejar espacio libre que podr
ocuparse con la nueva informacin que se reciba.

Por otra parte, en el buffer de emisin se almacenan los datos que se deseen
enviar al perifrico, en espera de que Ia transmisin sea posible, es decir, en
espera de que el perifrico se encuentre preparado para recibir.

La gestin de los buffers de entrada y salida es transparente al usuario cuando se


trabaja con LabVIEW, es decir, el usuario slo ha de leer del buffer de entrada los
nuevos datos recibidos y escribir en el buffer de salida los datos que desee enviar,
despreocupndose de cmo se Ilenan o vacan estos buffers.

Los protocolos de comunicacin ("handshaking modes") se ocupan de evitar que el


buffer de recepcin de datos del puerto serie se sature y, por consiguiente, se pierda

Notas de clase profesores: Lucelly Reyes

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

informacin. Con el uso de estos protocolos, el PC y el perifrico se envan informacin


sobre sus respectivos buffers de recepcin. La mecnica de funcionamiento de los
protocolos es la siguiente:
En el caso de que el buffer del receptor se Ilegue a saturar con datos recibidos, se
enva una seal al emisor indicndole que ha de interrumpir la transferencia de datos
ya que, de otro modo, se perdera informacin. El emisor recibe dicha seal y deja de
transmitir, quedndose en espera de que el receptor vuelva a estar disponible para
continuar con la comunicacin. Una vez el receptor haya ledo parte de la informacin
contenida en su buffer, ste volver a disponer de espacio libre, con lo que se enviar
una seal al emisor indicndole que ya puede continuar con la transferencia de datos.
LabVIEW es capaz de utilizar dos tipos diferentes de protocolos de comunicacin:
"Software handshaking" y "Hardware handshakng". En el caso de que se desee utilizar
uno de ellos en la comunicacin, el protocolo escogido deber ser habilitado en el
momento de realizarse la configuracin del puerto serie. Si ninguno de los dos es
habilitado expresamente, por defecto LabVIEW no utilizar ningn protocolo en las
transferencias. Esta ltima opcin es aconsejable, por su simplicidad, en aplicaciones
en las que la cantidad de informacin a transmitir es pequea. En estos casos, la
capacidad del buffer puede ser ms que suficiente para que ste nunca Ilegue a
saturarse, siendo innecesaria, pues, la utilizacin. de protocolos. Ahora bien, si el
volumen de informacin a transmitir es considerable y/o si el perifrico conectado al PC
no es muy rpido, el uso de uno de los protocolos de comunicacin est del todo
recomendado.
IMPORTANTE: AI utilizar uno de los protocolos es necesario comprobar que el
perifrico conectado al PC dispone tambin de la posibilidad de utilizar dicho protocolo.
Si esto es as, se han de configurar los dos puertos serie, el del PC y el del perifrico,
para que utilicen el mismo protocolo, de manera que puedan comunicarse
satisfactoriamente.
A continuacin se describen brevemente los dos tipo: disponibles en LabVIEW:
Software Handshaking - XON/XOFF
El protocolo XON/XOFF es un protocolo software para evitar la saturacin de los
buffers de comunicacin serie. Su funcionamiento es el siguiente: Cuando el buffer de
recepcin est a punto de ser saturado, el receptor enva el carcter XOFF (<controlS>, decimal 19) para indicar al emisor que ha de detener la transferencia de datos para
que no llegue a perderse informacin. Una vez el receptor ha ledo parte de la
informacin contenida en su buffer de recepcin, dispondr de nuevo de espacio libre
para recibir ms datos, enviando entonces el carcter XON (<control-O>, decimal 17)
para indicar al emisor que puede reanudar la transmisin.
Si se activa el protocolo XON/XOFF, los dispositivos que se estn comunicando
siempre interpretan los caracteres <control-S> y <control-Q> como los comandos
XOFF y XON respectivamente, no como datos. Es por esto que no se ha de utilizar
este protocolo al transmitir informacin binaria, ya que es posible que dichos caracteres
se encuentren por casualidad entre los byte enviados, con lo que se interpretarn
errneamente como los comandos XON y XOFF, alterando el curso de la
comunicacin, cosa que no es conveniente. En este caso se deber desactivar el
protocolo XON/XOFF, con lo que los caracteres: <control-S> y <control-Q> se

Notas de clase profesores: Lucelly Reyes

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

interpretarn como datos y no actuarn sobre la comunicacin, ya que no son


considerados comandos de control.

Hardware Handshaking
Es el segundo protocolo que puede utilizarse en las comunicaciones serie con
Labview. AI igual que el protocolo software, su finalidad es la de evitar que llegue a
saturarse alguno de los buffers de datos utilizados en la comunicacin. Ahora bien, en
este caso no se controla la transferencia de informacin mediante el envo de
caracteres, sino que se utiliza una serie de seales fsicas que interconectan los dos
dispositivos a comunicar. Estas seales son: DSR, RTS, CTS y DTR, ya comentadas
Dado que son seales que necesitan un soporte fsico para ser transmitidas, ser
necesario construir un cable de comunicaciones adecuado para el uso de este
protocolo. Un ejemplo muy usual de conexin de este cable es la configuracin de
mdem nulo.
Una vez se han conectados los dos dispositivos a comunicar con el cable adecuado, el
protocolo podr hacer uso convenientemente de las seales de control antes
indicadas.
SERIAL PORT INIT, VI
El icono que se ha de utilizar para la configuracin del puerto serie es el llamado Serial
Port Init,vi. Ejecutando este icono se eligen las caractersticas de comunicacin que
se desean para el puerto serie, es decir, el tipa de protocolo a utilizar, la velocidad de
transmisin, la paridad, etc... En la figura se muestra dicho icono, as como sus
conexiones.

A continuacin se describen las diferentes conexiones del icono, su funcin y el tipo de


dato que se le ha de introducir, en el caso de que se trate de una conexin de entrada,
o el tipo de dato que entrega, si se trata de una conexin de salida.

Flow control etc... : Esta es una conexin de entrada del tipo "cluster", es decir,
est constituida por una serie de entradas que han sido agrupadas en un
determinado orden, formando un paquete. Los parmetros que se introducen por
esta conexin son relativos a los protocolos de comunicacin, Hardware
Handshaking y Software Handshaking, Si, debido a la naturaleza de la aplicacin,
se considera conveniente prescindir de los protocolos en las transferencias, esta
conexin se ha de dejar al aire, no es necesario programarla. Si por eI contrario, se
decide utilizar uno de los protocolos, se ha de crear un "cluster" con los valores
adecuados y cablearlo a esta conexin.

Notas de clase profesores: Lucelly Reyes

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

A continuacin se detallan, en el orden correcto, las diferentes variables que se han de


introducir en Flow control, etc..., indicando el tipo de dato y su utilidad.
Input XON/XOFF: Estando en True activa el protocolo XON/XOFF por parte de PC.
En este caso, el perifrico considerar los caracteres XON/XOFF que el PC le
enve, interrumpiendo la transferencia de datos cuando el PC lo solicite y
reanudndola de nuevo cuando el PC indique que puede recibir ms datos.
Input HW Handshake: Si se encuentra a True se permite la utilizacin de la lnea
Request To Send (RTS). Esta lnea fsica ser activada segn el funcionamiento del
protocolo "Hardware", es decir, cuando el PC quiera indicar al perifrico que desea
enviarle datos.
Input alt HW Handshake: En el caso de ser True, se habilita el uso de la lnea
fsica correspondiente a Data Terminal Ready (DTR). Si el protocolo "Hardware"
activa esta lnea, se indica al perifrico que el PC est preparado para enviar o
recibir datos.
Output XON/XOFF: Si se pone a True se permite la utilizacin del protocolo
"Software" por parte del perifrico. En este caso el PC interpretar correctamente
los caracteres XON/XOFF que le enve el perifrico en funcin del estado de su
buffer de recepcin.
Output HW Handshake: Cuando se encuentra a True se permite la utilizacin de la
seal Clear To Send (CTS) por parte del protocolo "Hardware". Esta lnea se activa
por el perifrico para indicarle al PC que est listo para recibir sus datos.
Output alt HW Handshake: Si se pone a True se habilita el uso de la seal Data
Set Ready (DSR) por el protocolo "Hardware". Cuando esta lnea se activa, el
perifrico indica al PC que se encuentra preparado para transmitir o recibir datos.

XOFF byte: En esta entrada se ha de indicar el byte a utilizar como comando


XOFF, es decir, como carcter <control-S>. Por defecto se emplea el byte 13H. Se
ha de tener en cuenta que, en caso de utilizar el protocolo XON/XOFF, los bytes
que se escojan para los comandos XON y XOFF no deben enviarse entre los datos,
ya que seran interpretados como caracteres de control y se actuara errneamente
sobre el curso de la comunicacin.
XON byte: Aqu se ha de indicar el byte a utilizar como comando XON o sea, el
byte que se emplear como carcter <control Q> en caso de utilizar el protocolo
XON/XOFF. Por defecto se usa el byte 11H.
Parity error byte: En esta entrada se ha de indicar el byte que hay que utilizar en
caso de que se produzca un error de paridad en la transmisin. Si el byte alto de la
palabra indicada en esta entrada es diferente de cero, el byte bajo ser el carcter
que se utilizar para reemplazar cualquier error de paridad que se detecte en la
transmisin, siempre y cuando la paridad est activada. Por ejemplo, si en esta
entrada se introduce el valor 013FH, y, adems, se est trabajando con alguna de
las modalidades de paridad, dado que el byte alto del dato introducido es diferente
de cero, cuando se detecte un error de paridad en un byte recibido, este byte
errneo ser sustituido por el byte 3FH. De este modo, si se detecta la presencia de
un byte de valor 3FH entre los datos recibidos, se podr saber que ese byte
sustituye a un byte recibido que no era correcto, ya que en su transmisin se

Notas de clase profesores: Lucelly Reyes

10

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

produjo un error de paridad. As pues, con la utilizacin de un byte reservado, en el


ejemplo el 3FH, se podrn detectar los errores de paridad, desechando los byte que
hayan sido transmitidos de forma incorrecta. Por defecto, en esta entrada se
introduce un 0000H, lo que significa que no se utiliza ningn byte de error de
paridad.
IMPORTANTE: En el caso de utilizar un byte de error de paridad, se ha de tener en
cuenta que la informacin a recibir no ha de contener dicho byte, ya que entonces se
produciran errores de interpretacin.
Buffer Size: En esta conexin se ha de entrar una constante entera. Con esta
constante se le indicar al puerto el tamao que se desea que tengan los buffers de
entrada y salida que se utilizarn en la transmisin y recepcin de mensajes.
El tamao de estos buffers es de 1 kbyte como mnimo. Es decir, si en Buffer Size se
introduce un valor igual o menor a 1.024 bytes, el puerto serie tomar un tamao de
buffer de 1.024 bytes (1 kbyte). Ahora bien, es posible que sea necesario utilizar
tamaos de buffer mayores para las transmisiones de datos. En este caso, se ha de
introducir en Buffer Size el valor que se crea necesario.
Port Number: En esta entrada se ha de introducir un valor entero entre 0 y 13.
Con este valor se indica al PC cul de sus puertos serie se desea configurar. Los
puertos serie que pueden ser configurados por Labview, as como sus respectivos
nmeros, se indican a continuacin:
0:COM 1 3: COM4 6. COM7 10: PRN 1 13: PRN 4
1. COM2 4. COM5 7: COM8 11: PRN 2
2: COM3 5. COM6 8: COM9 12. PRN 3
Baud Rate: El valor que se introduzca en esta entrada se tomar como la velocidad
de transferencia de datos, en baudios, con la que se configurar el puerto serie. A
esta velocidad se realizarn todas las transferencias, tanto el envo como la
recepcin de datos. Valores tpicos de velocidad de transferencia son los 1.200,
2.400, 4.800 y los 9.600 baudios.
Data Bits: En esta conexin se ha de indicar el nmero de bits de los bytes
recibidos que se considerarn como bits de datos. Es decir, cuntos bits han de ser
tomados como bits de datos en cada byte recibido. Los valores que pueden tomar
esta entrada van de 5 a 8 bits de datos.
Stop Bits: En esta entrada se han de introducir los bits de stop que se deseen
utilizar en las transferencias. Los valores que puede tomar son: 0 para 1 bit de stop
o 1 para 2 bits de stop.
parity: En esta conexin se ha de indicar el tipo de paridad que se desea utilizar en
la comunicacin. Se introducir un 0 en el caso de no querer emplear ningn tipo de
paridad, un 1 para utilizar paridad impar o un 2 en el caso de querer paridad par.
Error Code: Esta es la nica conexin de salida que presenta el icono de
configuracin del puerto serie. Por ella se entregar un -1 en el caso de que la

Notas de clase profesores: Lucelly Reyes

11

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

velocidad de transmisin, los bits de datos, los bits de stop, la paridad o el nmero
de puerto serie se encuentren fuera de rango. Tambin puede tomar el valor -1 si el
puerto serie no ha podido ser inicializado correctamente.
Si, al ejecutar el Serial Port Init.vi, se obtuviera un -1 en la salida Error Code,
comprobar que los valores de Baud Rate, Data Bits, Stop Bits, Parity, y Port
Number se encuentran dentro de sus respectivos mrgenes. En el caso de que todos
estos valores fueran correctos verificar si efectivamente el puerto serie no ha sido
configurado correctamente. Para ello, intentar efectuar transferencias de datos en
ambos sentidos bajo las especificaciones escogidas de comunicacin. Si las
transferencias no son posibles, intentar de nuevo la inicializacin del puerto serie. En
caso de que el error persista, revisar con otra aplicacin software si el puerto serie
funciona correctamente.

Ejemplos configuracin puerto serie para las versiones viejas de Labview


A continuacin se muestran tres ejemplos de configuracin del puerto serie.
Ejemplo 1:
En este ejemplo se pretende ilustrar cmo realizar una configuracin del puerto serie
para que ste funcione sin utilizar ningn tipo de protocolo de comunicacin
('Handshaking Modes'). Como ya se ha comentado anteriormente, este tipo de
configuracin es la indicada, dada su simplicidad, en aplicaciones en las que el
volumen de datos a transferir sea reducido en comparacin con el tamao de los
buffers de datos del puerto serie. Si esto es as, dichos buffers no llegarn a saturarse
en ningn caso, con lo que no ser necesaria la utilizacin de ningn protocolo de
comunicacin.
Cuando se ejecute el VI que contenga programado el ejemplo siguiente, el puerto serie
se configurar segn las especificaciones que a continuacin se detallan:

1 Kbyte de tamao de buffer


Puerto COM 1
Velocidad de transmisin: 9.600
8 bits de datos
1 bit de stop
Paridad par
No se utiliza eI protocolo XON/XOFF.
No se utilizan las seales de Hardware Handshake.
Si se produce un error en la configuracin, se activa un indicador booleano en el
panel principal

El programa del ejemplo se muestra en la figura que sigue.

Notas de clase profesores: Lucelly Reyes

12

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

Ejemplo 2
En este ejemplo se configura el puerto serie para que funcione con el protocolo
software XON/XOFF. Este protocolo ser utilizado en ambos sentidos, es decir, lo
usarn tanto el PC como el perifrico para controlar la ocupacin de sus respectivos
buffers de recepcin. Como caracteres XON y XOFF se utilizarn los que se dan por
defecto, es decir, el decimal 19 para XOFF y el decimal 17 para XON. En este caso no
se utilizar ningn tipo de paridad, con lo que tampoco ser necesario especificar un
byte de error de paridad.

Las caractersticas con que se configurar el puerto serie en este ejemplo son las
siguientes:

1 Kbyte de tamao de buffer


Puerto COM 2
Velocidad de transmisin: 4800 baudios
7 bits de datos
2 bit de stop
Sin Paridad.
Se utiliza eI protocolo XON/XOFF.
No se utilizan las seales de Hardware Handshake.
Si se produce un error en la configuracin, se activa un indicador booleano en el
panel principal

Ejemplo 3
En este ejemplo se configurar el puerto serie para que funcione utilizando el protocolo
hardware, es decir, el protocolo que utiliza las seales DSR, RTS, CTS y DTR. Se ha
de tener en cuenta que, adems de configurar adecuadamente el puerto serie, los dos
dispositivos a comunicar, el PC y el perifrico, han de estar conectados por un cable
que soporte estas seales fsicas. Una configuracin tpica para dicho cable es la de
mdem nulo, ya descrita.
Por otra parte, se utilizar paridad impar en las transferencias. Dado que ahora s que
se pueden detectar errores de paridad, se incluir tambin un byte de error de parida,
concretamente el 3FH. El funcionamiento de este byte ha sido expuesto en eI apartado
Parity error byte.

Notas de clase profesores: Lucelly Reyes

13

Instituto de Fsica
Curso de Instrumentacin

Universidad de Antioquia

Ntese que, aunque no se utiliza en este caso el protocolo XON/XOFF, es necesario


completar del todo la estructura "cluster" que se ha de conectar a la entrada Flow
control, etc... del icono Serial Port Init.vi. Es por esto que se Ie ha de dar algn valor
a los bytes de XON y de XOFF, a pesar de que no sern utilizados en la comunicacin.
De este modo, el "cluster" contendr, en orden, todos los elementos y podr cablearse
al icono sin ningn problema. Los valores que toman estos bytes son los que se
programan por defecto, es decir, el decimal 19 para el comando XOFF y el decimal 17
para el comando XON.

Notas de clase profesores: Lucelly Reyes

14

También podría gustarte