Ingresar Las Direcciones GPIB Primaria Y Secundaria en LabVIEW

Actualizado el Oct 31, 2023

Ambiente

Software

  • LabVIEW

Controlador

  • NI-488.2

Este tutorial proporciona una descripción general sobre cómo ingresar direcciones GPIB primaria y secundaria en LabVIEW usando las funciones IEEE 488.1 y / o IEEE 488.2.

Funciones IEEE 488.1

Si está utilizando una función IEEE 488.1 como GPIB Write o GPIB Read, la dirección toma la forma de:

boardIndex: PAD + SAD

donde boardIndex es el índice de bus que controla su placa. (¡Esta no es necesariamente la misma que la dirección principal de la placa!). Por lo general, corresponde al nombre de la interfaz de la placa (por ejemplo, gpib0). PAD es la dirección principal del instrumento y SAD es la dirección secundaria del instrumento (si existe).

Por ejemplo, si su placa GPIB está en PAD 0 y gpib2 es el nombre de la interfaz de su placa, boardIndex es 2 (no 0). Si su instrumento está en PAD 5 y SAD 4, la dirección sería 2: 5 + 4 (¡no 2: 9!).

Muy a menudo, un SAD se expresa como la dirección secundaria más 96, por lo que (del ejemplo anterior) SAD 4 sería equivalente a SAD 100 (4 más 96). ¿Por qué la diferencia de notación? La dirección secundaria es en realidad un valor de 0 a 30, al igual que la dirección principal, pero cuando envía información de dirección a través de GPIB, la envía como un byte (8 bits) de información: los primeros cinco bits forman la dirección, los dos bits siguientes se utilizan para realizar asignaciones de Talker / Listener, y el último bit no se utiliza (por lo que se pone a cero). Para las direcciones primarias, solo se usa un bit de Talker / Listener (por lo que una placa o un dispositivo está enviando datos o recibiendo datos). Pero para las direcciones secundarias, ambos bits de Talker / Listener se establecen en alto (para indicar que es una dirección secundaria). Da la casualidad de que 96 decimal (60 hexadecimal) es el valor de SAD 0 como se expresa en este byte de información. Todas las demás direcciones secundarias son solo 96 más el SAD, para un rango total de 96 a 126 para el SAD.

Funciones IEEE 488.2

Si está usando una función IEEE 488.2, como Enviar o Recibir, y necesita usar una dirección secundaria, puede usar la función MakeAddr para crear una dirección "empaquetada" para usted. La dirección empaquetada consta de dos bytes de información: un byte alto (dirección secundaria) y un byte bajo (dirección primaria). Puede expresar esta dirección empaquetada en hexadecimal, donde SAD es un valor de 60 hexadecimal (96 decimal) a 7E hexadecimal (126 decimal) y PAD es un valor de 0 hexadecimal (0 decimal) a 1E hexadecimal (30 decimal).

Por ejemplo, usando el ejemplo anterior (la placa GPIB es gpib2 en PAD 0, el instrumento está en PAD 5 y SAD 4), la dirección empaquetada sería 0x6405 (byte alto = 60 hex + 04 hex, byte bajo = 05 hex) . La información de la placa es una entrada separada, utilizada en las funciones mismas. Por ejemplo, la función Enviar tiene una entrada de bus que corresponde al boardIndex mencionado anteriormente. El bus para gpib2 es 2 (no 0, ese es el PAD).

Nota : Aunque el SAD se convierte a un valor de 96 a 126, la entrada de dirección secundaria real para la función MakeAddr toma un valor de 0 a 30.