LabVIEW – Comunicación RS-232 entre PCs.
1.5.1.vi
Envía o Recibe un archivo por puerto serie.
La acción predeterminada es Recibir. Cuando se está en modo recepción, se comprueba cada 500ms a ver si hay datos en el puerto. Como la transmisión se hace con el protocolo DTR/DSR, cuando se llena el buffer de entrada, la PC transmisora espera para seguir enviando. El cable debe ser FULL DUPLEX.
Cuando se cambia el modo a Enviar se abre un cuadro de diálogo pidiendo el archivo a enviar y lo envía.
El transmisor también envía el hash MD5 para que el receptor verifique que la transferencia fue correcta.


![]() |
stop |
![]() |
Puerto VISA resource name specifies the resource to be opened. This control also specifies the session and class. |
![]() |
Acción Acción: Enviar o Recibir el archivo. |
![]() |
Baudios Velocidad de transmisión. Ambos programas, emisor y receptor, deben tener configurada la misma velocidad de transimisión. |



![]() |
Merge Errors.vi
C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\error.llb\Merge Errors.vi |
![]() |
File Dialog
File Dialog |
![]() |
RecibirArchivoPuerto.vi
C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\RecibirArchivoPuerto.vi |
![]() |
EnviarArchivoPuerto.vi
C:\Documents and Settings\Daniel\Mis documentos\facu\5to\Digitales 3\1\Practico\EnviarArchivoPuerto.vi |
EnviarArchivoPuerto.vi
Envía un archivo por puerto serie.
Abre el archivo en modo binario y extrae su contenido. Si hay error al leer el archivo, termina el programa. Sino, extrae el nombre y MD5 del archivo y lo une con el contenido en un cluster.
En primer lugar se envía el tamaño del cluster recién armado y luego el cluster.
Se cierra la conexión y termina el programa.

![]() |
Archivo a enviar Ruta del archivo a enviar. |
![]() |
Puerto (COM1) VISA resource name specifies the resource to be opened. This control also specifies the session and class. |
![]() |
Baudios (57600) Velocidad de transferencia. Debe ser la misma que en la otra PC. |
![]() |
error in error in can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
status status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
code code is the error or warning code.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
source source describes the origin of the error or warning.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
error out error in can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
status status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
code code is the error or warning code.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
source source describes the origin of the error or warning.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |



![]() |
MD5Checksum File.vi
C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\MD5Checksum.llb\MD5Checksum File.vi |
![]() |
VISA Configure Serial Port (Instr).vi
C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Instr\_visa.llb\VISA Configure Serial Port (Instr).vi |
![]() |
VISA Configure Serial Port
C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Instr\_visa.llb\VISA Configure Serial Port |
RecibirArchivoPuerto.vi
Recibe un archivo por puerto serie.
Se abre la conexión y se comprueba si hay bytes esperando para ser leídos en el puerto (estarían almacenados en el caché).
Si no hay bytes esperando, se cierra la conexión y termina.
Si hay bytes esperando, se leen 4 bytes, que representa un int y que contiene el tamaño del cluster, en bytes, que se espera recibir. Luego se lee esa cantidad de bytes desde el puerto y se arma el cluster. Se pide al usuario un nombre de archivo, sugiriendole el mismo nombre que tenía en la otra PC. Se crea el archivo con el nombre sugerido, se guardan en él los datos y se cierra el archivo. Se comprueba si el hash MD5 del archivo recién creado es el mismo que el recibido de la otra PC. Sino, se envía un mensaje de error.
Se podrían hacer otras comprobaciones, como por ejemplo si el usuario canceló la operación presionando cancelar cuando se le pidió un nombre para el archivo. Pero si ocurre esto, simplemente habrá un error al crear el archivo con un nombre no válido en el siguiente paso y se propagará por los siguientes SubVIs. Y simplemente se terminará con un error.

![]() |
Puerto (COM1) VISA resource name specifies the resource to be opened. This control also specifies the session and class. |
![]() |
Baudios (57600) Velocidad de transferencia. Debe ser la misma que en la otra PC. |
![]() |
error in error in describes error conditions that occur before this VI or function runs. |
![]() |
status status is TRUE (X) if an error occurred before this VI or function ran or FALSE (checkmark) to indicate a warning or that no error occurred before this VI or function ran. The default is FALSE. |
![]() |
code code is the error or warning code. The default is 0. |
![]() |
source source specifies the origin of the error or warning and is, in most cases, the name of the VI or function that produced the error or warning. The default is an empty string. |
![]() |
error out error in can accept error information wired from VIs previously called. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
status status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
code code is the error or warning code.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |
![]() |
source source describes the origin of the error or warning.
Right-click the error in control on the front panel and select Explain Error or Explain Warning from the shortcut menu for more information about the error. |





![]() |
VISA Configure Serial Port
C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Instr\_visa.llb\VISA Configure Serial Port |
![]() |
VISA Configure Serial Port (Instr).vi
C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Instr\_visa.llb\VISA Configure Serial Port (Instr).vi |
![]() |
Merge Errors.vi
C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\error.llb\Merge Errors.vi |
![]() |
MD5Checksum File.vi
C:\Archivos de programa\National Instruments\LabVIEW 8.6\vi.lib\Utility\MD5Checksum.llb\MD5Checksum File.vi |
![]() |
File Dialog
File Dialog |

















i.png)


21 octubre, 2009 - 01:41
Hola..
me podrias enviar el archivo??
saludos
21 octubre, 2009 - 10:51
Hola
Ahí puse mas grande el link para descargar este y los demás ejemplos. No estaba muy evidente. Fijate arriba donde (ahora) dice: <- Descargar Archivos.
8 enero, 2010 - 12:16
Hola mi nombre es Pedro Galaz y quiero descargar el archivo VI, Comunicación RS-232 entre PCs. Megustaria saber como lo puedo hacer para trabajar con el en mi PC, de ante mano muchas gracias.
Saludos y mucha suerte.
8 enero, 2010 - 12:18
Hola que tal, mi nombre es Pedro Galaz y quiero descargar el archivo VI de Comunicación RS-232 entre PCs.
Me podrian decvir po favor como lo puedo descargar.
De ante mano muchas gracias.
Pedro Galaz
8 enero, 2010 - 12:19
Hola mi nombre es Pedro Galaz y quiero descargar el archivo VI de Comunicación RS-232 entre PCs, pero no pude, me podrian decir como lo puedo descargar por favor.
De ante mano muchas gracias y quue tengan bonita semana.
Pedro Galaz
8 enero, 2010 - 15:25
Hola, ya lo logre descargar gracias, lo unico malo es que tengo la version 6.0 del labview y no lo pude abrir, que puedo hacer en ese caso para abrirlo???
Pedro Galaz
17 enero, 2010 - 10:35
Hola Pedro. No se como lo podrías convertir. Me parece que va a ser difícil, por la gran diferencia entre versiones. Desde la versión 8.6 solo se puede guardar para la 8.5, 8.2 y 8.0. Así que no se si se puede pasar de alguna forma a la 6. Saludos.
10 julio, 2010 - 15:00
Hola Soy Juan. tengo una tarjeta de adquisicion usb uChameleon y no sé como empezar con ella.¿tienes alguna aplicación para esto?,¿puedes auyudarme?. por otra parte podrías compartir el archivo fuente de laaplicación de transmision por rs232?
11 julio, 2010 - 01:03
Hola Juan. No conozco esa tarjeta. El código fuente lo podés descargar haciendo clic en el botoncito arriba del post, que dice al lado “Descargar este VI”. A muchos les cuesta encontrar el link. Ahí tenés varios ejemplos para descargar, no solo el 232.
13 julio, 2010 - 07:48
Hola, mi nombre es Davis Luna, acabo de instalar LabView 8.6 en una PC y al usar las funciones VISA basicas (configurar puerto, leer…) me da un error, me dice que los driver de los puertos deben ser instalados y quisiera saber si hace falta descargar algo adicional.
En mi portatil me paso algo similar porque tenia el windows vista e instale la versión 8.2 y no me servia, pero luego pude instalar la 8.5 (la q uso actualmente en la portatil) y corre perfectamente con los puertos.
En la PC tnego tambien vista, no se si me podrias ayudar.
13 julio, 2010 - 07:50
Lo raro es que tengo otros programas que tienen accesos a los puertos de la PC sin problemas, el unico que no es LabView!
14 julio, 2010 - 14:26
Hola Davis,
Además de LabVIEW tenés que instalar el NI Device Drivers (http://joule.ni.com/nidu/cds/view/p/id/991/lang/es). Puede ser ese el problema.
1 septiembre, 2010 - 20:58
Hola Daniel, estoy tratando de leer un osciloscopio tectronic por medio de la PC, estoy tratando de leer una i2c para poder analizarla, es esto posible por medio del labview???
3 septiembre, 2010 - 11:39
Es posible si ese tektronix tiene el cable para conectarse con la PC y existen los drivers para LabVIEW de ese modelo. Los osciloscopios suelen tener una interfaz rs232 o usb para conectarse con LabVIEW.
Buscá en internet si están los drivers para tu modelo de osciloscopio. Podrías empezar buscando aquí: http://www.ni.com/devzone/idnet/
14 noviembre, 2010 - 13:00
Se borró un comentario por pabloux (migré la base de datos) que decía:
“hola amigo gracias por los programas estan buenos parea los que apenas estamos empezando en labview, solo tengo un problema no se si los cables de conexion comerciales me puedan servir. o puedes mandarme algun data de como armar el cable serial db9 full duplex???? no encuentro nada en la web, si me lo puedes mandar a mi correo estaria mucho mejor, arew…@live.com”
Aquí hay una página que explica: http://penguin.dcs.bbk.ac.uk/academic/technology/physical-layer/asynchronous/
Fijate en la “Figure 3: Full-duplex RS-232″
Saludos.
14 mayo, 2011 - 14:43
Muy buenos ejemplos
12 agosto, 2011 - 14:27
Hola daniel, espero que te encuentres muy bien.
Lo que pasa en que necesito manejar desde el labview un multimetro digital DMM de tektronix y no se con cual funciòn hacerlo. Espero que tu me puedas colaborar con este problemita que tengo. El DMM tiene puerto RS 232.
Muchas gracias.
24 noviembre, 2011 - 11:16
Hola Pablo te quería ante todo agradecer por los programas me vinieron de diego… en segundo lugar te quería preguntar porque utilizas la funcion de escribir 2 veces
30 noviembre, 2011 - 04:07
saludos, alguien sabe si con este cable puedo hacer la transfeencia de archivos, se los agradeceria mucho.
http://www.steren.com.mx/catalogo/prod.asp?f=&sf=&c=&p=754&desc=cable-null-modem-con-conectores-jack-a-jack-db9-rs232–de-3-m