📄 niswitch.h
字号:
/****************************************************************************
* NI Switch
*---------------------------------------------------------------------------
* Copyright (c) National Instruments 1998-2002. All Rights Reserved.
*---------------------------------------------------------------------------
*
* Title: niSwitch.h
* Purpose: NI Switch
* instrument driver declarations.
*
****************************************************************************/
#ifndef ___niswitch_h___
#define ___niswitch_h___
#include "ivi.h"
#include "iviswtch.h"
#include "niswitchTopologies.h"
#ifdef _CVI_
#pragma EnableLibraryRuntimeChecking
#endif
#ifdef __cplusplus
extern "C" {
#endif
/****************************************************************************
*----------------- Instrument Driver Revision Information -----------------*
****************************************************************************/
#define NISWITCH_MAJOR_VERSION 3 /* Instrument driver major version */
#define NISWITCH_MINOR_VERSION 300 /* Instrument driver minor version */
#define NISWITCH_CLASS_SPEC_MAJOR_VERSION 3 /* Class specification major version */
#define NISWITCH_CLASS_SPEC_MINOR_VERSION 0 /* Class specification minor version */
#define NISWITCH_SUPPORTED_INSTRUMENT_MODELS "SCXI-1127,"\
"SCXI-1128,"\
"SCXI-1129,"\
"SCXI-1130,"\
"SCXI-1160,"\
"SCXI-1161,"\
"SCXI-1163R,"\
"SCXI-1166,"\
"SCXI-1167,"\
"SCXI-1169,"\
"SCXI-1175,"\
"SCXI-1190,"\
"SCXI-1191,"\
"SCXI-1192,"\
"SCXI-1193,"\
"SCXI-1194,"\
"SCXI-1195,"\
"PXI-2501,"\
"PXI-2503,"\
"PXI-2527,"\
"PXI-2529,"\
"PXI-2530,"\
"PXI-2532,"\
"PXI-2564,"\
"PXI-2565,"\
"PXI-2566,"\
"PXI-2567,"\
"PXI-2568,"\
"PXI-2569,"\
"PXI-2570,"\
"PXI-2575,"\
"PXI-2576,"\
"PXI-2584,"\
"PXI-2585,"\
"PXI-2586,"\
"PXI-2590,"\
"PXI-2591,"\
"PXI-2593,"\
"PXI-2594,"\
"PXI-2595,"\
"PXI-2596,"\
"PXI-2597,"\
"PXI-2598,"\
"PXI-2599,"
#define NISWITCH_DRIVER_VENDOR "National Instruments"
#define NISWITCH_DRIVER_DESCRIPTION "NI Switch Driver"
/****************************************************************************
*---------------------------- Attribute Defines ---------------------------*
****************************************************************************/
/*- IVI Inherent Instrument Attributes ---------------------------------*/
/*- User Options -------------------------------------------------------*/
#define NISWITCH_ATTR_RANGE_CHECK IVI_ATTR_RANGE_CHECK /* ViBoolean */
#define NISWITCH_ATTR_QUERY_INSTRUMENT_STATUS IVI_ATTR_QUERY_INSTR_STATUS /* ViBoolean */
#define NISWITCH_ATTR_CACHE IVI_ATTR_CACHE /* ViBoolean */
#define NISWITCH_ATTR_SIMULATE IVI_ATTR_SIMULATE /* ViBoolean */
#define NISWITCH_ATTR_RECORD_COERCIONS IVI_ATTR_RECORD_COERCIONS /* ViBoolean */
#define NISWITCH_ATTR_INTERCHANGE_CHECK IVI_ATTR_INTERCHANGE_CHECK /* ViBoolean */
/*- Instrument Capabilities --------------------------------------------*/
#define NISWITCH_ATTR_CHANNEL_COUNT IVI_ATTR_NUM_CHANNELS /* ViInt32, read-only */
#define NISWITCH_ATTR_GROUP_CAPABILITIES IVI_ATTR_GROUP_CAPABILITIES /* ViString, read-only */
/*- Driver Information ------------------------------------------------*/
#define NISWITCH_ATTR_SPECIFIC_DRIVER_PREFIX IVI_ATTR_SPECIFIC_DRIVER_PREFIX /* ViString, read-only */
#define NISWITCH_ATTR_SUPPORTED_INSTRUMENT_MODELS IVI_ATTR_SUPPORTED_INSTRUMENT_MODELS /* ViString, read-only */
#define NISWITCH_ATTR_INSTRUMENT_MANUFACTURER IVI_ATTR_INSTRUMENT_MANUFACTURER /* ViString, read-only */
#define NISWITCH_ATTR_INSTRUMENT_MODEL IVI_ATTR_INSTRUMENT_MODEL /* ViString, read-only */
#define NISWITCH_ATTR_INSTRUMENT_FIRMWARE_REVISION IVI_ATTR_INSTRUMENT_FIRMWARE_REVISION /* ViString, read-only */
#define NISWITCH_ATTR_SPECIFIC_DRIVER_REVISION IVI_ATTR_SPECIFIC_DRIVER_REVISION /* ViString, read-only */
#define NISWITCH_ATTR_SPECIFIC_DRIVER_VENDOR IVI_ATTR_SPECIFIC_DRIVER_VENDOR /* ViString, read-only */
#define NISWITCH_ATTR_SPECIFIC_DRIVER_CLASS_SPEC_MAJOR_VERSION IVI_ATTR_SPECIFIC_DRIVER_CLASS_SPEC_MAJOR_VERSION /* ViInt32, read-only */
#define NISWITCH_ATTR_SPECIFIC_DRIVER_CLASS_SPEC_MINOR_VERSION IVI_ATTR_SPECIFIC_DRIVER_CLASS_SPEC_MINOR_VERSION /* ViInt32, read-only */
#define NISWITCH_ATTR_SPECIFIC_DRIVER_DESCRIPTION IVI_ATTR_SPECIFIC_DRIVER_DESCRIPTION /* ViString, read-only */
#define NISWITCH_ATTR_DRIVER_SETUP IVI_ATTR_DRIVER_SETUP /* ViString, read-only */
/*- Advanced Session Information ---------------------------------------*/
#define NISWITCH_ATTR_LOGICAL_NAME IVI_ATTR_LOGICAL_NAME /* ViString, read-only */
#define NISWITCH_ATTR_IO_RESOURCE_DESCRIPTOR IVI_ATTR_RESOURCE_DESCRIPTOR /* ViString, read-only */
/*- Configuration Attributes -------------------------------------------*/
#define NISWITCH_ATTR_IS_SOURCE_CHANNEL IVISWTCH_ATTR_IS_SOURCE_CHANNEL /* ViBoolean, channel-based */
#define NISWITCH_ATTR_IS_CONFIGURATION_CHANNEL IVISWTCH_ATTR_IS_CONFIGURATION_CHANNEL /* ViBoolean, channel-based */
/*- Status Attributes --------------------------------------------------*/
#define NISWITCH_ATTR_IS_DEBOUNCED IVISWTCH_ATTR_IS_DEBOUNCED /* ViBoolean, read-only */
/*- Device Information Attributes --------------------------------------*/
#define NISWITCH_ATTR_SETTLING_TIME IVISWTCH_ATTR_SETTLING_TIME /* ViReal64, channel-based */
#define NISWITCH_ATTR_BANDWIDTH IVISWTCH_ATTR_BANDWIDTH /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_DC_VOLTAGE IVISWTCH_ATTR_MAX_DC_VOLTAGE /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_AC_VOLTAGE IVISWTCH_ATTR_MAX_AC_VOLTAGE /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_SWITCHING_AC_CURRENT IVISWTCH_ATTR_MAX_SWITCHING_AC_CURRENT /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_SWITCHING_DC_CURRENT IVISWTCH_ATTR_MAX_SWITCHING_DC_CURRENT /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_CARRY_AC_CURRENT IVISWTCH_ATTR_MAX_CARRY_AC_CURRENT /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_CARRY_DC_CURRENT IVISWTCH_ATTR_MAX_CARRY_DC_CURRENT /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_SWITCHING_AC_POWER IVISWTCH_ATTR_MAX_SWITCHING_AC_POWER /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_SWITCHING_DC_POWER IVISWTCH_ATTR_MAX_SWITCHING_DC_POWER /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_CARRY_AC_POWER IVISWTCH_ATTR_MAX_CARRY_AC_POWER /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_MAX_CARRY_DC_POWER IVISWTCH_ATTR_MAX_CARRY_DC_POWER /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_CHARACTERISTIC_IMPEDANCE IVISWTCH_ATTR_CHARACTERISTIC_IMPEDANCE /* ViReal64, channel-based, read-only */
#define NISWITCH_ATTR_WIRE_MODE IVISWTCH_ATTR_WIRE_MODE /* ViInt32, channel-based, read-only */
#define NISWITCH_ATTR_NUM_OF_ROWS IVISWTCH_ATTR_NUM_OF_ROWS /* ViInt32, read-only */
#define NISWITCH_ATTR_NUM_OF_COLUMNS IVISWTCH_ATTR_NUM_OF_COLUMNS /* ViInt32, read-only */
/*- Scanning Attributes ------------------------------------------------*/
#define NISWITCH_ATTR_SCAN_LIST IVISWTCH_ATTR_SCAN_LIST /* ViString */
#define NISWITCH_ATTR_SCAN_MODE IVISWTCH_ATTR_SCAN_MODE /* ViInt32 */
#define NISWITCH_ATTR_TRIGGER_INPUT IVISWTCH_ATTR_TRIGGER_INPUT /* ViInt32 */
#define NISWITCH_ATTR_SCAN_ADVANCED_OUTPUT IVISWTCH_ATTR_SCAN_ADVANCED_OUTPUT /* ViInt32 */
#define NISWITCH_ATTR_SCAN_DELAY IVISWTCH_ATTR_SCAN_DELAY /* ViReal64 */
#define NISWITCH_ATTR_CONTINUOUS_SCAN IVISWTCH_ATTR_CONTINUOUS_SCAN /* ViBoolean */
#define NISWITCH_ATTR_IS_SCANNING IVISWTCH_ATTR_IS_SCANNING /* ViBoolean, read-only */
/*- niSwitch specific driver attributes --------------------------------*/
#define NISWITCH_ATTR_IS_WAITING_FOR_TRIG (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 4L) /* ViBoolean, read-only */
#define NISWITCH_ATTR_TRIGGER_MODE (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 5L) /* ViInt32 */
#define NISWITCH_ATTR_MASTER_SLAVE_TRIGGER_BUS (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 6L) /* ViInt32 */
#define NISWITCH_ATTR_MASTER_SLAVE_SCAN_ADVANCED_BUS (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 7L) /* ViInt32 */
#define NISWITCH_ATTR_CABLED_MODULE_TRIGGER_BUS (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 8L) /* ViInt32 */
#define NISWITCH_ATTR_CABLED_MODULE_SCAN_ADVANCED_BUS (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 9L) /* ViInt32 */
#define NISWITCH_ATTR_TRIGGER_INPUT_POLARITY (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 10L) /* ViInt32 */
#define NISWITCH_ATTR_SCAN_ADVANCED_POLARITY (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 11L) /* ViInt32 */
#define NISWITCH_ATTR_PARSED_SCAN_LIST (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 12L) /* ViString, read-only */
#define NISWITCH_ATTR_HANDSHAKING_INITIATION (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 13L) /* ViInt32 */
#define NISWITCH_ATTR_NUMBER_OF_RELAYS (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 14L) /* ViInt32 */
#define NISWITCH_ATTR_SERIAL_NUMBER (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 15L) /* ViString, read-only */
#define NISWITCH_ATTR_DIGITAL_FILTER_ENABLE (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 16L) /* ViBoolean */
#define NISWITCH_ATTR_POWER_DOWN_LATCHING_RELAYS_AFTER_DEBOUNCE (IVI_SPECIFIC_PUBLIC_ATTR_BASE + 17L) /* ViBoolean */
/****************************************************************************
*------------------------ Attribute Value Defines -------------------------*
****************************************************************************/
/* Defined values for NISWITCH_ATTR_SCAN_MODE */
#define NISWITCH_VAL_NONE IVISWTCH_VAL_NONE
#define NISWITCH_VAL_BREAK_BEFORE_MAKE IVISWTCH_VAL_BREAK_BEFORE_MAKE
#define NISWITCH_VAL_BREAK_AFTER_MAKE IVISWTCH_VAL_BREAK_AFTER_MAKE
/* Defined values for NISWITCH_ATTR_TRIGGER_INPUT */
#define NISWITCH_VAL_REARCONNECTOR_MODULE_BASE (IVISWTCH_VAL_TRIGGER_INPUT_SPECIFIC_EXT_BASE + 20)
#define NISWITCH_VAL_FRONTCONNECTOR_MODULE_BASE (IVISWTCH_VAL_TRIGGER_INPUT_SPECIFIC_EXT_BASE + 40)
#define NISWITCH_VAL_IMMEDIATE IVISWTCH_VAL_IMMEDIATE
#define NISWITCH_VAL_EXTERNAL IVISWTCH_VAL_EXTERNAL
#define NISWITCH_VAL_SOFTWARE_TRIG IVISWTCH_VAL_SOFTWARE_TRIG
#define NISWITCH_VAL_TTL0 IVISWTCH_VAL_TTL0
#define NISWITCH_VAL_TTL1 IVISWTCH_VAL_TTL1
#define NISWITCH_VAL_TTL2 IVISWTCH_VAL_TTL2
#define NISWITCH_VAL_TTL3 IVISWTCH_VAL_TTL3
#define NISWITCH_VAL_TTL4 IVISWTCH_VAL_TTL4
#define NISWITCH_VAL_TTL5 IVISWTCH_VAL_TTL5
#define NISWITCH_VAL_TTL6 IVISWTCH_VAL_TTL6
#define NISWITCH_VAL_TTL7 IVISWTCH_VAL_TTL7
#define NISWITCH_VAL_PXI_STAR IVISWTCH_VAL_PXI_STAR
#define NISWITCH_VAL_REARCONNECTOR (IVISWTCH_VAL_TRIGGER_INPUT_SPECIFIC_EXT_BASE + 0)
#define NISWITCH_VAL_FRONTCONNECTOR (IVISWTCH_VAL_TRIGGER_INPUT_SPECIFIC_EXT_BASE + 1)
#define NISWITCH_VAL_REARCONNECTOR_MODULE1 (NISWITCH_VAL_REARCONNECTOR_MODULE_BASE + 1)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -