¿Cómo agrego los caracteres de terminación a las escrituras en serie VISA en LabVIEW?

Actualizado el Dec 5, 2023

Ambiente

Controlador

  • NI-VISA

Mi instrumento serial requiere caracteres de terminación, pero cuando envío un comando al puerto serie utilizando los VISA Serial VIs, a veces no es posible agregar un LF (line feed), un CR (carriage return) o un EOL (end of line) al final de la cadena a enviar. ¿Cómo puedo agregar los caracteres de terminación requeridos?

Debe configurar las propiedades Habilitar carácter de terminación, Carácter de terminación y Modo de finalización en serie para las escrituras en el controlador NI-VISA .
  1. Cree un nodo de propiedad VISA haciendo clic con el botón derecho en el diagrama de bloques y seleccionando Instrument I/O»VISA»Advanced»VISA Property Node.
  2. Expanda el property node de VISA para acomodar tres propiedades.
  3. Haga clic derecho en el property node y seleccione Change All to Write.
  4. Para seleccionar una propiedad: haga clic con el botón derecho en 'Property' y seleccione Select Property»Message Based Settings»Termination Character Enable..
  5. Seleccione la segunda propiedad haciendo clic con el botón derecho y seleccionando Select Property»Message Based Settings»Termination Character.
  6. Seleccione la tercera propiedad haciendo clic con el botón derecho y seleccionando Select Property»Serial Settings»End Mode for Writes.
  7. Conecte una constante booleana verdadera a la propiedad TermChar En .
  8. Conecte el valor decimal del carácter ASCII que desea agregar a la propiedad TermChar . El valor decimal para el salto de línea es 10 y para el retorno de carro es 13. El carácter de final de línea es una combinación de retorno de carro seguido por el salto de línea y no se admite como carácter de terminación a través de este método. Para obtener un enfoque alternativo que permita múltiples caracteres de terminación o si no está seguro del valor ASCII del carácter de terminación, consulte este documento sobre los caracteres de terminación en NI-VISA (en inglés).
  9. Haga clic con el botón derecho en la propiedad ASRL End Out y seleccione Create»Constant. Esto creará la enumeración de opciones de caracteres terminales. Seleccione TermChar de la lista de enumeración.


Todas sus escrituras ahora serán terminadas automáticamente con ese carácter.

Additional Information

  1. Nota: TermChar En y TermChar son solo para lectura, y TermChar En debe configurarse en verdadero para establecer la propiedad TermChar. Alternativamente, ASRL End Out es para leer y escribir.

    Alternativamente, puede usar la función Concatenar cadenas para construir la cadena para enviar al puerto serie. LabVIEW tiene tres caracteres de terminación de uso común que son constantes de cadena en la paleta de la función Cadenas: la constante de retorno de carro, la constante de avance de línea y la constante de final de línea.

    Si necesita algo más que las constantes de LabVIEW prefabricadas, siempre puede crear las suyas propias. Crea una constante de cadena en tu diagrama de bloques y haz clic derecho en él. Seleccione '\' Codes Display en el menú emergente. Ahora puede utilizar el formato de visualización de códigos. Consulte la tabla de códigos de caracteres de terminación a continuación para obtener más información.

    Tabla de códigos de caracteres de terminación
    Caracteres de terminaciónVisualización de códigos
    Linefeed (LF)

    \n

    Carriage return (CR)

    \ r

    End of Line (EOL)

    \ r \ n

    Form feed (FF)

    \F

  2. Tenga en cuenta que la terminación en el hardware físico debe cumplir con el estándar serial apropiado. Si la terminación en el componente físico es incorrecta, entonces causará problemas con los caracteres de terminación en el lado del software.