UDF > Visa >


_viSetTimeout

D�finit le d�lai d'expiration de VISA, en millisecondes

#include <Visa.au3>
_viSetTimeout ( $hSession, $iTimeoutMS )

Param�tres

$hSession Le descripteur de VISA (string) ou le handle de session VISA (integer).
Voir Remarques de _viExecCommand() pour plus d'info.
$iTimeoutMS Le d�lai d'expiration, en millisecondes, pour les op�rations Visa (principalement pour les requ�tes GPIB)
Si vous le d�finissez � 0 les tiemouts sont d�sactiv�es.
Si vous le d�finissez � "INF", les op�rations VISA n'expireront jamais.
Soyez prudent avec ce param�tre car il pourrait facilement bloquer votre programme si votre instrument ne r�pond pas � l'une de vos requ�tes.
Selon le type de bus (GPIB, TCP, etc..) le d�lai d'expiration ne peut pas �tre d�fini sur la valeur exacte que vous demandez. En revanche, le d�lai d'expiration le plus proche valide, plus grand que celui que vous avez demand� sera utilis�.

Valeur de retour

Succ�s: Retourne 0.
�chec: Retourne -1 et d�finit @error <> 0 si la dll VISA ne peut pas �tre ouverte
ou une valeur non nulle repr�sentant le code d'erreur VISA (voir le guide du programmeur VISA).

Remarques

La plupart du temps il n'est pas n�cessaire d'appeler cette fonction, car _viExecCommand() a un troisi�me param�tre optionnel $iTimeoutMS qui peut �galement �tre utilis� pour d�finir le d�lai d'expiration de VISA.

Comme pour toutes les fonctions VISA les biblioth�ques de Visa doivent �tre install�es (vous pouvez v�rifier si visa32.dll est dans {WINDOWS}\system32) et une carte GPIB doit �tre install�e (comme par exemple une carte PCI-GPIB National Instruments NI ou une carte GPIB Agilent 82350B PCI de haute performance)

* Pour une description d�taill�e des descripteurs VISA les plus courants, regarder Remarques de l'aide sur la fonction _viExecCommand().

En relation

_viClose, _viExecCommand, _viOpen, _viSetAttribute

Exemple

; - Cet exemple suppose que vous avez install� l'instrument � l'adresse GPIB 3
; Si vous avez un instrument � une adresse diff�rente, changez "GPIB::3::0" en un descripteur correspondant. Faites de m�me pour l'appel � _viOpen.
; Il montre comment utiliser la fonction _viExecCommand en mode autonome et combin� avec _viOpen et _viClose.
; Il montre �galement la fonction _viGTL

#include <MsgBoxConstants.au3>
#include <Visa.au3>

Local $h_Session = 0

; Interroge l'ID de l'instrument � l'address GPIB 3
MsgBox($MB_SYSTEMMODAL, "�tape 1", "Simple requ�te GPIB � l'aide d'un descripteur VISA")
Local $s_Answer = _viExecCommand("GPIB::3::0", "*IDN?", 10000) ; 10 secs timeout
MsgBox($MB_SYSTEMMODAL, "R�sultat de la requ�te GPIB", $s_Answer) ; Affiche la r�ponse

; C'est la m�me chose que d'utiliser la fonction _viSetAttribute en premier:
MsgBox($MB_SYSTEMMODAL, "�tape 2", "_vOpen + timeout � l'aide de _viSetAttribute + requ�te GPIB")
Local $h_Instr = _viOpen(3)
_viSetTimeout($h_Instr, 10000) ; 10000 ms = 10 secs

$s_Answer = _viExecCommand($h_Instr, "*IDN?") ; Pas besoin de d�finir timeout maintenant
MsgBox($MB_SYSTEMMODAL, "R�sultat de la requ�te GPIB", $s_Answer) ; Affiche la r�ponse

MsgBox($MB_SYSTEMMODAL, "�tape 3", "Ferme la connexion de l'instrument � l'aide de _viClose")
_viClose($h_Instr) ; Ferme la connexion de l'instrument