Les fonctions des contrôleurs configurent le contrôleur ou envoient des commandes IEEE 488 auxquelles tous les instruments répondent.

cac — Devenir le contrôleur actif (Become Active Controller)

cmd — Envoyer commandes IEEE 488 (Send IEEE 488 Commands)

dma — Définir le mode DMA ou le mode d'E/S programmé (Set DMA Mode or Programmed I/O Mode)

gts — Passer de contrôleur actif à standby (Go from Active Controller to Standby)

ist — Définir le bit d'état individuel (Set Individual Status Bit)

llo — Local Lockout

loc — Mettre le contrôleur en état local (Place Controller in Local State)

off — Mettre le contrôleur hors-ligne (Take Controller Offline)

ppc — Configurer l'interrogation parallèle (Parallel Poll Configure) : activer ou désactiver

ppu — Annuler la configuration de l'interrogation parallèle (Parallel Poll Unconfigure)

rpp — Mener l'interrogation parallèle (Conduct Parallel Poll)

rsc — Libérer ou demander le contrôle du système (Release or Request System Control)

rsv — Requérir un service et/ou définir l'octet d'état de l'interrogation série (Request Service and/or Set the Serial Poll Status Byte)

sic — Send interface clear

sre — Désactiver ou activer l'activation à distance (Unassert or Assert Remote Enable)

cac — Devenir le contrôleur actif (Become Active Controller)

syntaxe cac 0 (prendre le contrôle de façon synchrone)
cac 1 (prendre le contrôle immédiatement)

cac prend le contrôle de façon synchrone ou immédiate, et parfois de façon asynchrone. De manière générale, il n'est pas nécessaire d'utiliser la fonction cac parce que d'autres fonctions, comme cmd et rpp, prennent le contrôle automatiquement.

Si vous essayez de prendre contrôle de façon synchrone lorsqu'un handshake de données est en cours, la fonction retarde l'action de prise de contrôle jusqu'à ce que le handshake soit complet. S'il n'y a pas d'échange en cours, la fonction exécute l'action de prise de contrôle immédiatement. La prise de contrôle simultanée n'est pas assurée si une opération de lecture ou d'écriture se termine par un timeout ou une autre erreur.

Prenez le contrôle de façon asynchrone lorsqu'il est impossible de prendre le contrôle de façon synchrone, comme par exemple après une erreur de timeout.

L'erreur ECIC se produit si le contrôleur GPIB n'est pas le CIC.

cmd — Envoyer commandes IEEE 488 (Send IEEE 488 Commands)

syntaxe cmd chaîne

cmd envoie les messages de commande GPIB. Ces messages incluent les adresses Talk et Listen des périphériques, les adresses secondaires, les messages de configuration d'interrogation série et parallèle, et les messages périphérique et de déclenchement.

N'utilisez pas cmd pour transmettre des instructions de programmation aux périphériques. Ce sont les fonctions GPIB Read et GPIB Write qui transmettent les instructions de programmation et les autres informations concernant les périphériques.

chaîne contient les octets des commandes envoyées par le contrôleur. ASCII characters represent these bytes in cmd string. Si vous devez envoyer des caractères qui ne peuvent pas être affichés, vous pouvez activer les codes backslash sur le contrôle de chaîne ou la constante de chaîne, ou vous pouvez utiliser une fonction de format pour lister les commandes en hexadécimal.

dma — Définir le mode DMA ou le mode d'E/S programmé (Set DMA Mode or Programmed I/O Mode)

syntaxe dma 0 (utilise les E/S programmées)
dma 1 (utilise le DMA)

dma indique si les transferts de données utilisent le mode DMA.

Certaines cartes GPIB n'ont pas de capacité DMA. Si vous essayez d'exécuter dma 1, la fonction renvoie l' erreur GPIB 11 pour indiquer qu'il n'y a pas de capacité.

gts — Passer de contrôleur actif à standby (Go from Active Controller to Standby)

syntaxe gts 0 (pas de shadow handshake)
gts 1 (shadow handshake)

gts définit le contrôleur GPIB à l'état de standby et désactive le signal ATN si c'est le contrôleur actif. Normalement, le contrôleur GPIB est impliqué dans le transfert de données. gts permet aux périphériques GPIB de transférer des données sans impliquer le contrôleur GPIB.

Si le shadow handshake est activé, le contrôleur GPIB participe au transfert GPIB en tant que récepteur, mais n'accepte pas de données. Lorsqu'il détecte le message Fin, le contrôleur GPIB active la fonction Not Ready For Data (NRFD) pour créer un état d'arrêt de handshake.

Si shadow handshake n'est pas activé, le contrôleur GPIB n'effectue ni le shadow handshake ni l'arrêt de handshake.

Si vous activez l'option shadow handshake, le contrôleur GPIB participe au transfert de données en tant que récepteur, sans lire les données. Il contrôle le transfert jusqu'à l'apparition du message Fin et interrompt les transferts suivants. Ce mécanisme permet au contrôleur GPIB de prendre le contrôle simultanément sur des opérations ultérieures comme les cmd ou rpp.

Après l'envoi de la commande gts, attendez toujours l'apparition du message Fin avant de lancer une autre commande GPIB. Pour ce faire, servez-vous de la fonction GPIB Wait.

L'erreur ECIC se produit si le contrôleur GPIB n'est pas le CIC.

ist — Définir le bit d'état individuel (Set Individual Status Bit)

syntaxe ist 0 (bit d'état individuel supprimé)
ist 1 (bit d'état individuel activé)
ist définit le sens du bit d'état individuel (ist).

Utilisez ist lorsque le contrôleur GPIB n'est pas le CIC mais qu'il participe à une interrogation parallèle menée par un périphérique qui est le contrôleur actif. Le CIC mène une interrogation parallèle en activant les signaux EOI et ATN, qui envoient le message Identify (IDY). Pendant que ce message est actif, chaque périphérique configuré de façon à être interrogé répond en activant une ligne de données GPIB prédéterminée sur VRAI ou FAUX, en fonction de la valeur de son bit ist local. Par exemple, vous pouvez demander au contrôleur GPIB de piloter la ligne de données DIO3 TRUE si ist est 1 et FALSE si ist est 0. Inversement, vous pouvez l'affecter au pilotage de DIO3 TRUE si ist est 0 et FALSE si ist est 1.

Le message PPE (activer l'interrogation parallèle) effectif pour chaque périphérique détermine la relation entre la valeur d'ist, la ligne utilisée et le sens dans lequel la ligne est utilisée. Le contrôleur GPIB peut recevoir ce message localement par ppc ou à distance par le biais d'une commande du CIC. Une fois que le message PPE est en cours, ist change le sens dans lequel le contrôleur GPIB utilise la ligne pendant l'interrogation parallèle et le contrôleur peut ainsi acheminer un message d'un bit, dépendant des périphériques, au contrôleur.

llo — Local Lockout

syntaxe llo

llo met tous les périphériques dans un état de local lockout. Cette mesure bloque l'identification des entrées à partir de la face-avant du périphérique.

llo envoie la commande Local Lockout (LLO).

loc — Mettre le contrôleur en état local (Place Controller in Local State)

syntaxe loc

loc place le contrôleur GPIB en état local en envoyant le message local RTL (Return to Local) s'il n'est pas verrouillé en mode à distance (indiqué par le bit d'état LOK). Vous utilisez loc pour simuler un interrupteur RTL de face-avant lorsque vous utilisez un ordinateur pour simuler un instrument.

off — Mettre le contrôleur hors-ligne (Take Controller Offline)

syntaxe off

off met le contrôleur hors-ligne. Cela n'est nécessaire que si vous partagez un contrôleur avec une autre application qui utilise la bibliothèque NI-488.

ppc — Configurer l'interrogation parallèle (Parallel Poll Configure) : activer ou désactiver

syntaxe ppc octet

ppc configure le contrôleur GPIB de façon à ce qu'il participe à une interrogation parallèle en définissant son message LPE (Activer interrogation locale) sur la valeur octet. Si la valeur d'octet est égale à 0, le contrôleur GPIB annule cette configuration.

Chacun des 16 messages PPE sélectionne une ligne de données GPIB (DIO1 à DIO8) et un sens (1 ou 0) qui doivent être utilisés par le périphérique lorsqu'il répond au message Identify (IDY) lors d'une interrogation parallèle. Le périphérique interprète le message assigné et la valeur du bit d'état individuel utilisée (ist) pour déterminer si la ligne sélectionnée est à VRAI ou FAUX. Par exemple, si PPE=0x64, DIO5 est piloté par TRUE si ist est 0 et par FALSE si ist est 1. Si PPE=0x68, le message PPE de DIO1 est en vigueur. Vous devez déterminer quels messages PPE et PPD sont envoyés et déterminer quelle réponse indiquer.

ppu — Annuler la configuration de l'interrogation parallèle (Parallel Poll Unconfigure)

syntaxe ppu

ppu désactive tous les périphériques de manière à les empêcher de répondre aux interrogations parallèles.

ppu envoie la commande Annuler la configuration de l'interrogation parallèle (Parallel Poll Unconfigure).

rpp — Mener l'interrogation parallèle (Conduct Parallel Poll)

syntaxe rpp

rpp mène une interrogation parallèle des périphériques préalablement configurés en activant les signaux ATN et EOI, ce qui envoie le message IDY.

rpp place la réponse à l'interrogation parallèle dans la chaîne en sortie, sous forme de caractères ASCII.

rsc — Libérer ou demander le contrôle du système (Release or Request System Control)

syntaxe rsc 0 (libérer le contrôle du système)
rsc 1 (demander le contrôle du système)

rsc désactive ou active la capacité du contrôleur GPIB d'envoyer les messages IFC (Interface Clear) et REN (Remote Enable) aux périphériques GPIB utilisant les fonctions sic et sre. Pour que le contrôleur GPIB puisse répondre à un message IFC envoyé par un autre contrôleur, le contrôleur GPIB ne doit pas être le contrôleur du système.

Dans la plupart des applications, le contrôleur GPIB est toujours le contrôleur système. Vous n'utilisez rsc que si le contrôleur n'est pas le contrôleur du système pendant la durée d'exécution du programme.

rsv — Requérir un service et/ou définir l'octet d'état de l'interrogation série (Request Service and/or Set the Serial Poll Status Byte)

syntaxe rsv octet

rsv définit l'octet d'état de l'interrogation série du contrôleur GPIB à octet. Si le bit 0x40 bit est défini dans octet, le contrôleur GPIB demande également un service du contrôleur en activant la ligne RQS GPIB. Par exemple, si vous voulez activer la ligne RQS GPIB, envoyez le caractère ASCII @, dans lequel le bit 0x40 est défini.

Vous utilisez rsv pour demander un service au contrôleur en utilisant le signal ServiceRequest (SRQ) et pour fournir un octet d'état dépendant du système lorsque le contrôleur soumet une interrogation série au port GPIB.

sic — Send interface clear

syntaxe sic

sic oblige le contrôleur à activer le signal IFC pendant au moins 100 ms si le contrôleur a des capacités de contrôleur système. Cette mesure initialise le GPIB et fait du port contrôleur le CIC. sic s'utilise généralement si vous voulez qu'un périphérique devienne CIC ou pour effacer une condition d'erreur bus.

Le signal IFC ne remet à zéro que les fonctions GPIB des périphériques du bus ; il ne remet pas à zéro les fonctions des périphériques internes. Les commandes Effacer Périphérique (DCL) et Effacer périphérique sélectionné (SDC) remettent à zéro les fonctions du périphérique. Consultez la documentation de l'instrument pour déterminer le rôle de ces messages.

sre — Désactiver ou activer l'activation à distance (Unassert or Assert Remote Enable)

syntaxe sre 0 (désactive activation à distance)
sre 1 (active l'activation à distance)

sre active ou désactive la ligne REN GPIB. Les périphériques contrôlent la ligne REN lorsqu'ils choisissent le mode d'exécution à distance ou le mode local. Un périphérique n'entre en mode à distance que lorsqu'il reçoit son adresse d'écoute (Listen).

L'erreur ESAC se produit lorsque le contrôleur n'est pas le contrôleur du système.