qt实现visa的仪器类控制

Posted 道亦无名

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt实现visa的仪器类控制相关的知识,希望对你有一定的参考价值。

#include <QCoreApplication>
#include <visa.h>
#include <iostream>
using namespace std;
#define MAX_SCPI_LEN    255
#define DEFAULT_TMO     5000 
int main(int argc, char *argv[])
  
   QCoreApplication a(argc, argv);    
    /* Visa Session*/   
   ViStatus nRetStatus;    
   ViSession rmSession = 0;    
   ViSession pInstrHandle;   
     /* Visa communicate buffer */   
   ViByte wrBuff[MAX_SCPI_LEN];   
   ViByte rdBuff[MAX_SCPI_LEN];    
   int retCount = 0;     
   /* open device and get visa Handle */    
   nRetStatus = viOpenDefaultRM( &rmSession);    
   nRetStatus = viOpen( rmSession, "TCPIP0::127.0.1.1::8088::SOCKET", VI_NULL, VI_NULL, &pInstrHandle);     /* set visa Format */    
   nRetStatus = viSetAttribute( pInstrHandle, VI_ATTR_TMO_VALUE, DEFAULT_TMO);    
   nRetStatus = viSetAttribute( pInstrHandle, VI_ATTR_SUPPRESS_END_EN, VI_FALSE);    
   nRetStatus = viSetAttribute( pInstrHandle, VI_ATTR_SEND_END_EN, VI_FALSE);     /* Query device IDN */    
   nRetStatus = viQueryf( pInstrHandle, "*IDN?\\n", "%s", rdBuff);    
    cout << rdBuff << endl;   
      /* Close */    
    viClose( pInstrHandle);    
    viClose( rmSession);     
    return a.exec();
 

小demo,可以试试。

以上是关于qt实现visa的仪器类控制的主要内容,如果未能解决你的问题,请参考以下文章

qt实现visa的仪器类控制

小草手把手教你 LabVIEW 串口仪器控制——初识VISA串口

visa打开与仪器的通信通道称为会话session

PyVISA介绍

labview与单片机串口通信

labview如何进行串口通讯