¿Cómo pasar de hexadecimal a ASCII y viceversa en LabVIEW?

Actualizado el Nov 11, 2020

Ambiente

Software

  • LabVIEW

Me estoy comunicando con un instrumento que envía información en forma de valores hexadecimales. Por ejemplo, en lugar de enviar la letra L, devuelve su correspondiente representación hexadecimal 4C. ¿Cómo puedo convertir esta representación hexadecimal mediante programación en su representación ASCII correspondiente en LabVIEW? ¿Qué sucede si necesito enviar información al instrumento en formato hexadecimal?

Convertir a ASCII desde Hexadecimal

Para convertir una cadena hexadecimal en una cadena ASCII, primero debe convertir la cadena hexadecimal a su representación decimal mediante la función Scan Value, que se encuentra en el functions palette en Programming »String» String/Number Conversion. Luego, puede convertir la representación decimal a su cadena ASCII equivalente utilizando la función Type Cast, que se encuentra en el Functions Palette en Mathematics »Numeric» Data Manipulation.

Convertir a hexadecimal desde ASCII

Para convertir una cadena ASCII en una cadena hexadecimal, primero debe convertir la cadena ASCII a su representación decimal utilizando la función Type Cast, que se encuentra en el functions palette en Mathematics »Numeric» Data Manipulation . Luego, puede convertir la representación decimal a su cadena hexadecimal equivalente mediante la función Number to Hexadecimal String, que se encuentra en el functions palette en Programming »String» String/Number Conversion.

Additional Information

La entrada de la cadena hexadecimal para los siguientes VIs tiene la forma FF not 0xFF. El 0x es la convención para indicar que un número está basado en hexadecimal en lugar de estar basado en decimal. Una cadena hexadímica estándar no lleva este indicador, y debe eliminarse antes de poder traducir el valor. Este comportamiento es idéntico a la cadena hexadecimal al número VI y se espera. Si tiene cadenas que tienen el formato 0xFF, puede usar un VI de Search/Slipt String con un carácter de búsqueda de x antes de que la cadena pase al Scan Value VI.