GPIB-VC编程

2022-09-13 15:47:19 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。Compiling and Linking VISA Programs (C/C ) This section provides a summary of important compiler- specific considerations when developing Win32 applications. 1 . Linking to VISA Libraries Your application must link to the VISA import library as follows, assuming default installation directories and Microsoft compilers: C:Program FilesVISAwinntlibmscvisa32.lib The following steps will help you do this. This information is specific to your development

environment. Microsoft Visual C Version 6.0 Development Environment 1 Use the File menu to create a new project or open an existing project. 2 Select Project > Settings from the menu and click the C/C tab. 3 Select Code Generation from the Category list box and select Multi-Threaded using DLL from the Use Run-Time Libraries list box. (VISA requires these definitions for Win32.) Click OK to close the dialog box. 4 Select Project > Settings from the menu. Click the Link tab and add visa32.lib to the Object/Library Modules list box. Optionally, you may add the library directly to your project file. Click OK to close the dialog box. 5 You may want to add the include files and library files search paths. They are set as follows: • Select Tools > Options from the menu. • Click the Directories tab to set the include file path. • Select Include Files from the Show Directories For list box. • Click at the bottom of the list box and type: C:Program FilesVISAwinntinclude (This assumes that you used the default installation location for VISA.) • Select Library Files from the Show Directories For list box. • Click at the bottom of the list box and type: C:Program FilesVISAwinntlibmsc (This assumes that you used the default installation location for VISA.) 6 Add or create your C or C source files. For example, to build the sample described below, select Project > Add to Project > Files… and type or browse to C:Program FilesAgilentIO Libraries Suite ProgrammingSamplesCVISAidn.c. 7 Click Build > Rebuild All to build the VISA program.

示例:电源型号:Agilent GPIB线 开发环境为VS2010

1.首先安装GPIB驱动,驱动安装文件比较大,请自行下载安装,我用的NI驱动

2.编写一个Win32程序,实现打开和关闭电源的功能。 主要代码如下:

代码语言:javascript复制
//包含VISA头文件和库文件
#include "WinNT//include//visa.h"                               
#pragma comment(lib, "WinNT//lib//msc//visa32.lib")

电源初始化函数

代码语言:javascript复制
BOOL CXXXDlg::InitPower()
{
	
	char chStatusDesc[_MAX_DIR] = {0};
	int retCnt=0;	
	char instrDesc[100]={0};	
	ViFindList find_list;	
	float voltSetting, currSetting;
	voltSetting = atof(ini_powervolt);
	currSetting = atof(ini_powercurrent);
	VISAstatus=viOpenDefaultRM(&defrm);
	if (VISAstatus != VI_SUCCESS)
	{
		return FALSE;
	}
	VISAstatus = viFindRsrc(defrm,"GPIB?*INSTR",&find_list,(ViPUInt32)&retCnt, instrDesc);
	
	VISAstatus=viOpen(defrm,instrDesc, VI_NULL, VI_NULL, &session);


	if (VISAstatus!=VI_SUCCESS)
	{
		return FALSE;
	}
	//Set voltage
	viPrintf(session,"VOLT %f n",voltSetting);


	//Set current level
	viPrintf(session,"CURR %f n",currSetting);
	return TRUE;
}

打开电源

代码语言:javascript复制
void CXXXDlg::OnBnClickedBtnPowerOn()
{
	if (!InitPower())
	{
		AfxMessageBox("Init Power Fail,Please Check the GPIB Connected!");
		return;
	}


	viPrintf(session,"OUTP ON n");
}

关闭电源

代码语言:javascript复制
void CXXXDlg::OnBnClickedBtnPoweroff()
{
	if (!InitPower())
	{
		AfxMessageBox("Init Power Fail,Please Check the GPIB Connected!");
		return;
	}


	viPrintf(session,"OUTP OFF n");
}

上面的示例只是简单的展示了开启和关闭电源的基本功能,实际开始时需要根据具体需求来扩展。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/148878.html原文链接:https://javaforall.cn

0 人点赞