/*---------------------------------------------------------------------------*/
/* Distributed by Agilent Technologies */
/* */
/* Do not modify the contents of this file. */
/*---------------------------------------------------------------------------*/
/* */
/* Title : VISA.H */
/* Date : 12-06-2010 */
/* Purpose : Include file for the VISA Library 4.0 specification */
/* with Agilent extensions. */
/* */
/*---------------------------------------------------------------------------*/
#ifndef __VISA_HEADER__
#define __VISA_HEADER__
#include <stdarg.h>
#if !defined(__VISATYPE_HEADER__)
#include "visatype.h"
#endif
#define VI_SPEC_VERSION (0x00400000UL)
#if defined(__cplusplus) || defined(__cplusplus__)
extern "C" {
#endif
#if defined(_CVI_)
#pragma EnableLibraryRuntimeChecking
#endif
/*- VISA Types --------------------------------------------------------------*/
typedef ViObject ViEvent;
typedef ViEvent _VI_PTR ViPEvent;
typedef ViObject ViFindList;
typedef ViFindList _VI_PTR ViPFindList;
#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT)
typedef ViUInt64 ViBusAddress;
typedef ViUInt64 ViBusSize;
typedef ViUInt64 ViAttrState;
#else
typedef ViUInt32 ViBusAddress;
typedef ViUInt32 ViBusSize;
typedef ViUInt32 ViAttrState;
#endif
#if defined(_VI_INT64_UINT64_DEFINED)
typedef ViUInt64 ViBusAddress64;
typedef ViBusAddress64 _VI_PTR ViPBusAddress64;
#endif
typedef ViUInt32 ViEventType;
typedef ViEventType _VI_PTR ViPEventType;
typedef ViEventType _VI_PTR ViAEventType;
typedef void _VI_PTR ViPAttrState;
typedef ViAttr _VI_PTR ViPAttr;
typedef ViAttr _VI_PTR ViAAttr;
typedef ViString ViKeyId;
typedef ViPString ViPKeyId;
typedef ViUInt32 ViJobId;
typedef ViJobId _VI_PTR ViPJobId;
typedef ViUInt32 ViAccessMode;
typedef ViAccessMode _VI_PTR ViPAccessMode;
typedef ViBusAddress _VI_PTR ViPBusAddress;
typedef ViUInt32 ViEventFilter;
typedef va_list ViVAList;
typedef ViStatus (_VI_FUNCH _VI_PTR ViHndlr)
(ViSession vi, ViEventType eventType, ViEvent event, ViAddr userHandle);
/*- Resource Manager Functions and Operations -------------------------------*/
ViStatus _VI_FUNC viOpenDefaultRM (ViPSession vi);
ViStatus _VI_FUNC viFindRsrc (ViSession sesn, ViString expr, ViPFindList vi,
ViPUInt32 retCnt, ViChar _VI_FAR desc[]);
ViStatus _VI_FUNC viFindNext (ViFindList vi, ViChar _VI_FAR desc[]);
ViStatus _VI_FUNC viParseRsrc (ViSession rmSesn, ViRsrc rsrcName,
ViPUInt16 intfType, ViPUInt16 intfNum);
ViStatus _VI_FUNC viParseRsrcEx (ViSession rmSesn, ViRsrc rsrcName, ViPUInt16 intfType,
ViPUInt16 intfNum, ViChar _VI_FAR rsrcClass[],
ViChar _VI_FAR expandedUnaliasedName[],
ViChar _VI_FAR aliasIfExists[]);
ViStatus _VI_FUNC viOpen (ViSession sesn, ViRsrc name, ViAccessMode mode,
ViUInt32 timeout, ViPSession vi);
/*- Resource Template Operations --------------------------------------------*/
ViStatus _VI_FUNC viClose (ViObject vi);
ViStatus _VI_FUNC viSetAttribute (ViObject vi, ViAttr attrName, ViAttrState attrValue);
ViStatus _VI_FUNC viGetAttribute (ViObject vi, ViAttr attrName, void _VI_PTR attrValue);
ViStatus _VI_FUNC viStatusDesc (ViObject vi, ViStatus status, ViChar _VI_FAR desc[]);
ViStatus _VI_FUNC viTerminate (ViObject vi, ViUInt16 degree, ViJobId jobId);
ViStatus _VI_FUNC viLock (ViSession vi, ViAccessMode lockType, ViUInt32 timeout,
ViKeyId requestedKey, ViChar _VI_FAR accessKey[]);
ViStatus _VI_FUNC viUnlock (ViSession vi);
ViStatus _VI_FUNC viEnableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism,
ViEventFilter context);
ViStatus _VI_FUNC viDisableEvent (ViSession vi, ViEventType eventType, ViUInt16 mechanism);
ViStatus _VI_FUNC viDiscardEvents (ViSession vi, ViEventType eventType, ViUInt16 mechanism);
ViStatus _VI_FUNC viWaitOnEvent (ViSession vi, ViEventType inEventType, ViUInt32 timeout,
ViPEventType outEventType, ViPEvent outContext);
ViStatus _VI_FUNC viInstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler,
ViAddr userHandle);
ViStatus _VI_FUNC viUninstallHandler(ViSession vi, ViEventType eventType, ViHndlr handler,
ViAddr userHandle);
/*- Basic I/O Operations ----------------------------------------------------*/
ViStatus _VI_FUNC viRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt);
ViStatus _VI_FUNC viReadAsync (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPJobId jobId);
ViStatus _VI_FUNC viReadToFile (ViSession vi, ViConstString filename, ViUInt32 cnt,
ViPUInt32 retCnt);
ViStatus _VI_FUNC viWrite (ViSession vi, ViBuf buf, ViUInt32 cnt, ViPUInt32 retCnt);
ViStatus _VI_FUNC viWriteAsync (ViSession vi, ViBuf buf, ViUInt32 cnt, ViPJobId jobId);
ViStatus _VI_FUNC viWriteFromFile (ViSession vi, ViConstString filename, ViUInt32 cnt,
ViPUInt32 retCnt);
ViStatus _VI_FUNC viAssertTrigger (ViSession vi, ViUInt16 protocol);
ViStatus _VI_FUNC viReadSTB (ViSession vi, ViPUInt16 status);
ViStatus _VI_FUNC viClear (ViSession vi);
/*- Formatted and Buffered I/O Operations -----------------------------------*/
ViStatus _VI_FUNC viSetBuf (ViSession vi, ViUInt16 mask, ViUInt32 size);
ViStatus _VI_FUNC viFlush (ViSession vi, ViUInt16 mask);
ViStatus _VI_FUNC viBufWrite (ViSession vi, ViBuf buf, ViUInt32 cnt, ViPUInt32 retCnt);
ViStatus _VI_FUNC viBufRead (ViSession vi, ViPBuf buf, ViUInt32 cnt, ViPUInt32 retCnt);
ViStatus _VI_FUNCC viPrintf (ViSession vi, ViString writeFmt, ...);
ViStatus _VI_FUNC viVPrintf (ViSession vi, ViString writeFmt, ViVAList params);
ViStatus _VI_FUNCC viSPrintf (ViSession vi, ViPBuf buf, ViString writeFmt, ...);
ViStatus _VI_FUNC viVSPrintf (ViSession vi, ViPBuf buf, ViString writeFmt,
ViVAList parms);
ViStatus _VI_FUNCC viScanf (ViSession vi, ViString readFmt, ...);
ViStatus _VI_FUNC viVScanf (ViSession vi, ViString readFmt, ViVAList params);
ViStatus _VI_FUNCC viSScanf (ViSession vi, ViBuf buf, ViString readFmt, ...);
ViStatus _VI_FUNC viVSScanf (ViSession vi, ViBuf buf, ViString readFmt,
ViVAList parms);
ViStatus _VI_FUNCC viQueryf (ViSession vi, ViString writeFmt, ViString readFmt, ...);
ViStatus _VI_FUNC viVQueryf (ViSession vi, ViString writeFmt, ViString readFmt,
ViVAList params);
/*- Memory I/O Operations ---------------------------------------------------*/
ViStatus _VI_FUNC viIn8 (ViSession vi, ViUInt16 space,
ViBusAddress offset, ViPUInt8 val8);
ViStatus _VI_FUNC viOu
VISA的库文件(NI)



VISA(Virtual Instrument Software Architecture)是由国家仪器(National Instruments,简称NI)开发的一种软件标准,用于简化各种仪器设备的通信,包括 GPIB、USB、LAN、串行和并行接口等。VISA库文件是VISA的核心组成部分,包含了用于与硬件进行通信的底层驱动和函数调用,使得开发者可以通过统一的编程接口来控制不同类型的仪器。 标题中的“VISA的库文件(NI)”指的就是由国家仪器提供的VISA的库文件,这些文件是VISA功能实现的基础,包含了一系列的动态链接库(DLL)、头文件和可能的配置文件。这些库文件使得程序员能够在不同的编程环境中,如LabVIEW、C、C++、VB.NET等,通过调用VISA的API函数来实现对仪器的控制和数据采集。 描述中的“VISA的驱动,用来备份用”表明这些库文件可能是用户为了防止驱动丢失或损坏而进行的备份。VISA驱动的备份至关重要,因为如果原始文件受损或丢失,可能导致仪器无法正常通信,影响实验或生产过程。因此,定期备份VISA库文件可以确保在出现问题时能迅速恢复,保证系统的稳定运行。 “PCIe驱动”标签进一步说明了VISA可能涉及到了PCI Express(PCIe)这种高速接口的驱动程序。PCIe是一种通用的高速接口,广泛应用于计算机内部,用于连接显卡、网卡、硬盘控制器等高速设备。在VISA库中,可能会包含专门用于通过PCIe接口与仪器设备通信的驱动程序,使得数据传输速度更快,性能更优。 压缩包子文件的文件名称列表虽未给出具体文件名,但通常VISA库文件可能包含以下部分: 1. visa32.dll 或 visa64.dll:这是VISA的主要动态链接库,根据系统是32位还是64位,会选择对应的版本。 2. visa.lib 或 visa64.lib:静态链接库文件,供C或C++等编译型语言使用。 3. visa.h:头文件,包含了VISA API的函数声明和常量定义。 4. visa32.cat 或 visa64.cat:数字签名文件,确保驱动的安全性。 5. VISA的配置文件:可能包含仪器的默认设置、通信参数等信息。 6. 安装脚本和帮助文档:方便用户安装和理解如何使用VISA库。 VISA的库文件是连接仪器和计算机的关键,它提供了一套标准化的接口,使得用户可以轻松地编写代码来控制各种不同类型的仪器,无论是通过PCIe还是其他接口。理解和备份这些库文件对于维护一个可靠的测量和控制系统至关重要。




















- 1

- #完美解决问题
- #运行顺畅
- #内容详尽
- #全网独家
- #注释完整
- 丛乐2023-07-25这个VISA的库文件提供了很多示例代码,帮助我快速掌握了NI设备的使用方法。
- 艾闻2023-07-25这个VISA的库文件中的文档结构清晰,让我能够快速找到自己需要的信息,大大提高了使用效率。
- 乐居买房2023-07-25我发现这个VISA的库文件对于常见问题的解答非常详尽,遇到问题时经常会参考它来找到解决办法。
- 天使的梦魇2023-07-25这个VISA的库文件非常实用,我在使用过程中遇到了一些问题,但在这个文档中找到了解决方案。
- 白羊带你成长2023-07-25这个VISA的库文件给了我很多关于NI设备的基础知识,非常适合初学者入门。

- 粉丝: 0
- 资源: 1
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 深入了解TypeScript:类型系统、模块、装饰器与工具类型的技术详解及其应用场景
- 基于OpenLayers与Geoserver的全国公司分布统计及查询系统 - GIS Web开发实践,适合GIS初学者与爱好者学习研究 ,基于WebGIS技术的全国公司分布统计与查询系统(OpenLa
- 历届电赛经典题目.txt
- 基于DSP28335的SVPWM与PIL仿真模型验证算法可行性与实时性:Matlab与DSP在线协同处理环境搭建及例程解析,SVPWM仿真与DSP28335 PIL实时验证:Matlab算法验证算法可
- 模糊PID控制原理详解:slx文件模块齐全,易于修改与替换,适合PID控制新手学习使用,模糊PID控制器的slx文件:模块齐全,易于使用,替代PID控制器,适合新手学习掌握,模糊PID控制fuzzy
- 基于MATLAB与YALMIP的配电网重构程序设计,以IEEE 33节点为例探讨网损与负荷损失优化问题,附SOP实用应用,基于MATLAB与YALMIP的配电网重构程序:以IEEE33节点为例,优化负
- 半桥闭环LLC谐振变换器仿真研究:软启动策略、PI控制与柔化给定信号波形对比解析,半桥闭环LLC谐振变换器仿真研究:软启动策略、PI控制与柔化给定信号的波形对比分析图,半桥闭环LLC谐振变器仿真,含采
- ACM竞赛中的经典试题.txt
- 拉格朗日力学模型下的罗盘步态行走机器人PID控制轨迹跟踪MATLAB仿真,拉格朗日力学模型下的罗盘步态行走机器人PID控制轨迹跟踪MATLAB仿真,步行机器人PID控制MATLAB仿真程序 采用了从拉
- 西门子SMART与海为云触摸屏控制的反渗透与一拖三恒压供水电气系统-精确制水与稳定供水模式,西门子SMART与海为云触摸屏控制下的反渗透与一拖三恒压供水系统,高效稳定运行在山东养鸡场,水泵反渗透和一
- PLC工业超滤净水智能控制系统:牧场专用,多种模式切换,远程监控与程序调整,变频器为ABB,触摸屏界面友好,PLC工业超滤净水双系统控制:智能监控与远程调控,ABB变频器,多模式制水与反洗系统,PLC
- 美国大学生数学建模竞赛典型试题.txt
- 视觉框架VM PRO 2.7版:集成机器人流程与机器视觉源码,基于C#与Halcon算法,支持多种相机SDK与运动控制卡,适合C#与Halcon基础开发者,视觉框架VM PRO 2.7版本全新升级:集
- 全国大学生智能汽车竞赛案例分析.txt
- 全套恒压供水一拖三程序图纸详解:西门子SMART SR20 CPU与AE04模块组合,昆仑通态触摸屏,PLC模拟量检测与变频器PID控制实现加减泵自动化,实际应用过的控制程序 ,全套恒压供水一拖三程序
- 永磁同步电机谐波注入补偿机制下的Simulink模型仿真与电流谐波抑制策略研究,永磁同步电机谐波注入补偿机制下的Simulink模型仿真与电流谐波抑制策略研究,永磁同步电机的谐波注入补偿simulin


