#include <visa.h> // Keysight IOライブラリ・スイートのヘッダーファイル
#include <iostream>
#include <string>
int main() {
ViSession defaultRM, instr;
ViStatus status;
ViChar buffer[256];
// VISAデバイスの初期化
status = viOpenDefaultRM(&defaultRM);
if (status < VI_SUCCESS) {
std::cerr << "Error opening VISA Resource Manager" << std::endl;
return 1;
}
// VISAデバイスのオープン
status = viOpen(defaultRM, "USB0::0x1234::0x5678::INSTR", VI_NULL, VI_NULL, &instr);
if (status < VI_SUCCESS) {
std::cerr << "Error opening device" << std::endl;
return 1;
}
// VISAデバイスにクエリを送信して応答を取得
status = viQueryf(instr, "*IDN?", "%t", buffer);
if (status < VI_SUCCESS) {
std::cerr << "Error querying device" << std::endl;
return 1;
}
// 応答を表示
std::cout << "Instrument ID: " << buffer << std::endl;
// VISAデバイスのクローズ
viClose(instr);
viClose(defaultRM);
return 0;
}