Si tenés la posibilidad de googlear (o cualquier otro buscador):
https://www.google.com.ar/?gws_rd=ssl#q=labview+visa+error+1073807339
Cita de
http://digital.ni.com/public.nsf/allkb/874B379E24C0A0D686256FCF007A6EA0
Solution:
There are several reasons why you might receive this error message, the most common of which are detailed below:
- A timeout error is generally indicative of a different problem. Check the command strings sent to the VISA Read and Write calls and ensure that they are written in the proper syntax for your instrument.
Note: A new line or carriage return is often required at the end of a command. A good way to test this in LabVIEW is to right-click the command string control on the front panel and change the display to '\' Codes Display mode. In this mode, a carriage return is \r, a line feed is \n, and an end of line is \r\n. Verify that the command being sent to the serial device has the termination character that the device requires.
- The port's communication settings may not be configured correctly. Verify that the Baud Rate, Data Bits, Parity, Stop Bits, and Flow Control are set correctly to correspond with your hardware requirements.
- This error may be induced by attempting to read more bits than are available at the serial port.
- The VISA Property Node for Bytes At Port should be implemented to ensure that the data read by VISA is limited to exactly the amount of data available.
- Additionally, can verify that you are not trying to read too many bytes by reading only 1 byte at a time. If you do not get the error when doing so, increment the number of bytes you read until you get the timeout error again. This tells you how many bytes that command sends back.
Note: If you still receive the error while reading only 1 byte, verify the command to make sure it has been written correctly and that you have also terminated the command string correctly (as brought up in solution 1).
- Older instrumentation may not respond rapidly to commands written to the port, causing a large delay between VISA Write and VISA Read. Applications designed to interface with this type of instrumentation should anticipate this delay, and implement a Wait function between VISA Write and Read to effectively avoid a potential timeout error.
- Timeouts can also occur when you read or write large amounts of data, since large data sets often take longer than the default timeout period of 2000 ms to transfer across the serial port. You can manually designate the VISA Session Timeout in different ways, depending on your development system. Please see below for instruction on setting the VISA Timeout:
LabVIEW: You can use VISA Set Timeout located in the Functions palette under Instrument I/O»VISA»VISA Advanced LabWindows™ /CVI: You can use the viSetAttribute function with its Attribute_Name parameter is set to VI_ATTR_TMO_VALUE.
Note: Changing the Timeout value for your VISA session will affect all VISA Writes and Reads in your session. However, you are able to set this property/attribute at any point during the session, allowing you to configure it as needed.
///////////////////////////////////
Hay algo en castellano también:
http://digital.ni.com/public.nsf/allkb/97D814071169A8B48625735D005AEBB2
Error -1073807339 al utilizar "VISA Read" o "VISA Write" en un VI Serial
Software Primario: Driver Software>>NI-VISA
Versión de Software Primario: 2.6
Versión de Software Primario Corregido: N/A
Software Secundario: N/A
Problema: Cuando trato de hacer una lectura o escritura con VISA, obtengo el error de VISA -1073807339:
"VISA: (Hex 0xBFFF0015) Timeout expired before operation completed."
¿Cómo puedo corregir este error?
Solución: Sigue los siguientes pasos para eliminar este u otros errores de “timeout” (error que surge cuando se ha cumplido el tiempo de espera para que suceda algún evento específico) serial.
1. Verifica que todos los parámetros de la configuración serial sean correctos (por ejemplo, razón de baudio, bits de datos y bits de parada). Tanto el dispositivo como el puerto serial deben tener la misma configuración.
2. Intenta incrementar el valor de “timeout” de la sesión de VISA. Este error ocurre frecuentemente cuando estás leyendo o escribiendo grandes cantidades de datos y toma un tiempo mayor que el tiempo preestablecido para enviar o recibir datos.
3. Si este error surge al hacer una lectura VISA, verifica que no estés tratando de leer demasiados bytes. Lee solamente 1 byte a la vez durante la detección de errores.
Nota: Si no obtienes el error ahora, incrementa el número de bytes que lees hasta que obtengas el error nuevamente. Esto te dirá cuantos bytes regresa dicho comando.
También puedes utilizar un Nodo de Propiedad para leer el Número de Bytes en el Puerto Serial. Haz click derecho sobre el Nodo de Propiedad y selecciona “
Select VISA Class>>I/O Session>>Serial Instr”. Posteriormente haz click derecho en el Nodo de Propiedad y selecciona “
Properties>>Serial Settings>>Number of Bytes at Serial Port”.
4. Si aún recibes el error mientras lees un solo byte, verifica el comando para asegurarte que ha sido escrito correctamente.
Nota: Verifica que has terminado el comando de caracteres correctamente. Una nueva línea o un retorno de carrete usualmente se requieren al final de un comando. Una buena forma de probar esto en LabView es hacer click derecho en el control de “string” en el panel frontal y cambiar la forma en que se despliega al modo
'\' Codes Display. En este modo, el retorno de carrete es “\r”, una nueva línea es “\n”, y un fin de línea es “\r\n”. Verifica que el comando enviado al dispositivo serial tiene el carácter de terminación que el dispositivo requiere.
Ligas Relacionadas:
KnowledgeBase 3F4AG87U : Default Time-out for VISA Read and Write VIs