J’utilise la version 16.01 de Code:Block. Cet exemple affiche le résultat en mode console. J’ai rajouté le changement de correction de la sonde. Il faut bien sur dans le menu Built option du projet rajouter les liens qui vont bien. A savoir,
Search directories puis dans compiler lui donner le include qui se trouve dans le répertoire Program Files(x86)\IviFoundation\Visa\WinNT\agvisa\Include puis toujours dans Search directorie puis dans Linker lui donner le bin qui va bien , à savoir Program Files(x86)\IviFoundation\VISA\WinNT\lib\msc.
Toujours dans le Build option selectionner le Linker settings et ajouter : Program Files(x86)\IviFoundation\Visa\WinNT\lib\mszc\agvisa32.dll.
Voilà c’est le plus compliqué. Je conseille une fois que c’est ok (selectionner ces liens non par pour le debug ou realise mais pour le projet complet. Ainsi , le exe généré à la compilation ne posera pas de problème. De même se servir de cet exemple en tant que template pout démarrer tout autre projet ainsi les liens ne seront plus à créer.
#include <stdio.h>
#include <stdlib.h>
#include <visa.h>
#include <windows.h>
int main()
{
ViSession defaultRM, vi;
char buf[256] = { 0 };
viOpenDefaultRM(&defaultRM);
viOpen(defaultRM, « GPIB0::13::INSTR », VI_NULL, VI_NULL, &vi);
viPrintf(vi, « *RST\n »);
viPrintf(vi, « *IDN?\n »);
viScanf(vi, « %t », &buf);
printf(« HP 438A POWER LETER valeur niveau en dbm »);
viPrintf(vi, « KB 95 EN\n »);
printf(buf);
Sleep(1000);
viPrintf(vi, « KB 100 EN\n »);
printf(buf);
Sleep(1000);
viPrintf(vi, « KB 95 EN\n »);
printf(buf);
viClose(vi);
viClose(defaultRM);
printf(buf);
system(« PAUSE »);
return 0;
}
Le résultat dans la console:
HP 438A POWER LETER valeur niveau en dbm-29.810E+00
-29.810E+00
-29.810E+00
-29.810E+00
Appuyez sur une touche pour continuer…