D�finit des attributs de VISA.
#include <Visa.au3>
_viSetAttribute ( $hSession, $iAttribute, $iValue )
$hSession |
Le descripteur de VISA (sring) ou le handle de la session VISA (integer). Voir Remarques de _viExecCommand() pour plus d'info. |
$iAttribute | L'index de l'attribut qui doit �tre chang�. Les attributs sont d�finis dans la biblioth�que VISA. Cette biblioth�que AutoIt d�finit uniquement une constante pour l'attribut TIMEOUT ($VI_ATTR_TMO_VALUE) et pour les attributs et les valeurs de l'interface s�rie (voir Remarques), mais vous pouvez passer tout autre index valide (en tant qu'integer) si vous le souhaitez. |
$iValue | La valeur de l'attribut. Il doit �tre un entier et les valeurs possibles d�pendent du type d'attribut et sont d�finis dans la documentation VISA. |
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 ). |
Cette fonction, qui est appel�e par _viSetTimeout, peut �galement �tre utilis�e pour d�finir les autres attributs sp�cifiques de VISA. Lisez la documentation de VISA pour plus d'informations et une liste d'attributs de VISA et leurs valeurs correspondantes.
Ci-dessous, une liste des attributs et des valeurs actuellement pr�-d�finies. N'oubliez pas que vous pouvez utiliser n'importe quel autre attribut/valeur valide en passant l'index entier correspondant (tel que d�fini dans le guide du programmeur de VISA) � cette fonction.
* Attribut: $VI_ATTR_TMO_VALUE -> D�finit Timeout
* Valeurs:
Un d�lai d'attente en millisecondes ou
$VI_TMO_IMMEDIATE (ou 0) pour un "Retour imm�diat"
$VI_TMO_INFINITE (ou "INF") pour "Aucun d�lai d'expiration"
* Attribut: $VI_ATTR_ASRL_BAUD
* Valeurs:
Toute vitesse de transmission valide (9600, 115200, etc..)
* Attribut: $VI_ATTR_ASRL_DATA_BITS
* Valeurs:
De 5 � 8
* Attribut: $VI_ATTR_ASRL_PARITY
* Valeurs:
$VI_ASRL_PAR_NONE
$VI_ASRL_PAR_ODD
$VI_ASRL_PAR_EVEN
$VI_ASRL_PAR_MARK
$VI_ASRL_PAR_SPACE
* Attribut: $VI_ATTR_ASRL_STOP_BITS
* Valeurs:
$VI_ASRL_STOP_ONE
$VI_ASRL_STOP_ONE5
$VI_ASRL_STOP_TWO
* Attribut: $VI_ATTR_ASRL_FLOW_CNTRL
* Valeurs:
$VI_ASRL_FLOW_NONE
$VI_ASRL_FLOW_XON_XOFF
$VI_ASRL_FLOW_RTS_CTS
$VI_ASRL_FLOW_DTR_DSR
Comme pour toutes les fonctions VISA les biblioth�ques Visa doivent �tre install�es (vous pouvez v�rifier si visa32.dll est dans {WINDOWS}\system32).
Vous �tes seulement besoin d'une carte GPIB (comme par exemple une carte PCI-GPIB National Instruments NI ou une carte GPIB Agilent 82350B PCI haute performance) si vous utilisez les fonctions en relation avec GPIB.
* Pour une description d�taill�e des descripteurs VISA les plus courants, regarder Remarques de l'aide de la fonction _viExecCommand().
_viClose, _viExecCommand, _viOpen, _viSetTimeout
; - 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) ; NOTE - Ceci est pareil que: _viSetTimeout($h_Instr, 10000) _viSetAttribute($h_Instr, $VI_ATTR_TMO_VALUE, 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