LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

comrdbyte

Hola soy nuevo conociendo labwindows  y me gustaria poder pedir su ayuda con un programa  ya que  me tira un error en  comrdbyte y no estoy muy claro cual es el problema si alguien puede ayudarme se le agradeceria muchisisisismo 

A todo esto muy genial lab windows

Download All
0 Kudos
Message 1 of 6
(3,837 Views)

Que error recibes en ComRdByte? El valor restituido por la funcion es el error encontrado si es <0: puedes utilizar a GetRS232ErrorString para obtener la descripcion del error. El valor del error puede ayudarte a identificar el problema.

 

 

Pou ultimo pongo a tu conocimiento la existencia de una tabla en espanol, donde puedes seguir posteando en este idioma si es que lo prefieres al inglés. En la tabla internacional es mejor utilizar el inglés debido a que no muchos aqui entienden tu idioma.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Message 2 of 6
(3,810 Views)

NON-FATAL RUN-TIME ERROR:   "panel.c", line 184, col 24, thread id 0x00000E58:   Library function error (return value == -99 [0xffffff9d]). I/O operation timed out

  ese es el error que me manda en pantalla  pero realemento no estoy seguro aque se refiere

0 Kudos
Message 3 of 6
(3,799 Views)

olvide decir que  bueno este programa como recepciona datos desde una tarjeta por el com1  y  en este minuto no la tengo conectada  al pc y no estoy seguro  si ese es mi error  ya  que esto ocurre al momento de  recepcionar datos desde ese puerto

0 Kudos
Message 4 of 6
(3,797 Views)

olvide decir que  bueno este programa como recepciona datos desde una tarjeta por el com1  y  en este minuto no la tengo conectada  al pc y no estoy seguro  si ese es mi error  ya  que esto ocurre al momento de  recepcionar datos desde ese puerto

0 Kudos
Message 5 of 6
(3,796 Views)

La situación es bastante clara: estás intendando accessar a un recurso que no es disponible y el sistema restituye un error, de la misma manera que si intentaras leer de un CD si tenerlo en el lector u imprimir sin tener la impresora encendida Smiley Wink

Tal y como se lee en el mensaje, 1) el error es un time-out, y 2) el error no es fatal, esto es el programa puede seguir corriendo en algunas condiciones

 

Para el error de timeout esto es lo que se lee en la ayuda en línea para el ComRdByte:

ComRdByte times out whenever the input queue remains empty for an entire timeout period. On a timeout, ComRdByte returns -99. You can set the timeout period by calling SetComTime.

y es lógico que pase esto ya que no tienes ningun dispositivo conectado al puerto serial.

 

Para hacer que el programa siga corriendo debes:

  1. Desenmarcar la opción Run >> Break on >> Library errors -->         24294iA9A7B7023D30BCD1
  2. Mirar al valor restituído por ComRdByte y en el caso de -99 parar leyendo, terminar la callback y avisar al usuario

 

Hay otras maneras de gestionar esta situación, por ejemplo mirando al GetInQLen () para ver cuándo hay los necesarios caracteres en el puerto antes de leer pero es preferable que por el momento sigas con tu opción ya que te permite entrar un poco más adentro en la gestión del CVI. En cuanto tengas esto solucionado podremos ver otras opciones y sugerencias para el código. Por el momento es necesario que entiendas que la gestión de los errores es fundamental. Hay muchos documentso que hablan de esto: te aconsejo que leas el capítulo Checking for errors in LabWindows/CVI en la Programmer Reference de la ayuda en línea. También hay una contribución mía en el argumento y otras discusione en los foros.

 

 

PS En mi primer mensaje olvidé darte la liga para la tabla en español: aquí está



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Message 6 of 6
(3,780 Views)