📄 nidmm.h
字号:
#define NIDMM_ATTR_WAVEFORM_COUPLING (NIDMM_ATTR_BASE + 27L) /* ViInt32 */
/*- Frequency voltage auto range value attribute -*/
#define NIDMM_ATTR_FREQ_VOLTAGE_AUTO_RANGE_VALUE (NIDMM_ATTR_BASE + 44L) /* ViReal64 */
/*- Capacitance and Inductance Measurement Attributes -*/
#define NIDMM_ATTR_CABLE_COMP_TYPE (NIDMM_ATTR_BASE + 45L) /* ViInt32 */
#define NIDMM_ATTR_SHORT_CABLE_COMP_REACTANCE (NIDMM_ATTR_BASE + 46L) /* ViReal64 */
#define NIDMM_ATTR_SHORT_CABLE_COMP_RESISTANCE (NIDMM_ATTR_BASE + 47L) /* ViReal64 */
#define NIDMM_ATTR_OPEN_CABLE_COMP_SUSCEPTANCE (NIDMM_ATTR_BASE + 48L) /* ViReal64 */
#define NIDMM_ATTR_OPEN_CABLE_COMP_CONDUCTANCE (NIDMM_ATTR_BASE + 49L) /* ViReal64 */
#define NIDMM_ATTR_LC_CALCULATION_MODEL (NIDMM_ATTR_BASE + 52L) /* ViInt32 */
#define NIDMM_ATTR_DC_BIAS (NIDMM_ATTR_BASE + 53L) /* ViInt32 */
#define NIDMM_ATTR_LC_NUMBER_MEAS_TO_AVERAGE (NIDMM_ATTR_BASE + 55L) /* ViInt32 */
/*- Attribute for serial number of the instrument -*/
#define NIDMM_ATTR_SERIAL_NUMBER (NIDMM_ATTR_BASE + 54L) /* ViString, read only */
#define NIDMM_ATTR_CONFIG_PRODUCT_NUMBER (NIDMM_ATTR_BASE + 61L) /* ViUInt32, read only */
/*****************************************************************************\
Attribute Values
\*****************************************************************************/
/*- Defined values for describing floating point number types -*/
#define NIDMM_VAL_TYPE_NORMAL IVI_VAL_TYPE_NORMAL
#define NIDMM_VAL_TYPE_NAN IVI_VAL_TYPE_NAN
#define NIDMM_VAL_TYPE_PINF IVI_VAL_TYPE_PINF
#define NIDMM_VAL_TYPE_NINF IVI_VAL_TYPE_NINF
/*- Defined values for NIDMM_ATTR_FUNCTION -*/
#define NIDMM_VAL_DC_VOLTS IVIDMM_VAL_DC_VOLTS
#define NIDMM_VAL_AC_VOLTS IVIDMM_VAL_AC_VOLTS
#define NIDMM_VAL_DC_CURRENT IVIDMM_VAL_DC_CURRENT
#define NIDMM_VAL_AC_CURRENT IVIDMM_VAL_AC_CURRENT
#define NIDMM_VAL_2_WIRE_RES IVIDMM_VAL_2_WIRE_RES
#define NIDMM_VAL_4_WIRE_RES IVIDMM_VAL_4_WIRE_RES
#define NIDMM_VAL_FREQ IVIDMM_VAL_FREQ
#define NIDMM_VAL_PERIOD IVIDMM_VAL_PERIOD
#define NIDMM_VAL_AC_VOLTS_DC_COUPLED (NIDMM_VAL_FUNC_SPECIFIC_EXT_BASE + 1L)
#define NIDMM_VAL_DIODE (NIDMM_VAL_FUNC_SPECIFIC_EXT_BASE + 2L)
#define NIDMM_VAL_WAVEFORM_VOLTAGE (NIDMM_VAL_FUNC_SPECIFIC_EXT_BASE + 3L)
#define NIDMM_VAL_WAVEFORM_CURRENT (NIDMM_VAL_FUNC_SPECIFIC_EXT_BASE + 4L)
#define NIDMM_VAL_CAPACITANCE (NIDMM_VAL_FUNC_SPECIFIC_EXT_BASE + 5L)
#define NIDMM_VAL_INDUCTANCE (NIDMM_VAL_FUNC_SPECIFIC_EXT_BASE + 6L)
/*- Defined values for NIDMM_ATTR_RANGE -*/
#define NIDMM_VAL_AUTO_RANGE_ON IVIDMM_VAL_AUTO_RANGE_ON
#define NIDMM_VAL_AUTO_RANGE_OFF IVIDMM_VAL_AUTO_RANGE_OFF
#define NIDMM_VAL_AUTO_RANGE_ONCE IVIDMM_VAL_AUTO_RANGE_ONCE
/*- Defined values for NIDMM_ATTR_FREQ_VOLTAGE_RANGE -*/
/* #define NIDMM_VAL_AUTO_RANGE_ON DEFINED ABOVE */
/* #define NIDMM_VAL_AUTO_RANGE_OFF DEFINED ABOVE */
/*- Defined values for NIDMM_ATTR_TRIGGER_DELAY -*/
#define NIDMM_VAL_AUTO_DELAY -1.0
#define NIDMM_VAL_AUTO_DELAY_ON IVIDMM_VAL_AUTO_DELAY_ON
#define NIDMM_VAL_AUTO_DELAY_OFF IVIDMM_VAL_AUTO_DELAY_OFF
/*- Defined value for NIDMM_ATTR_SAMPLE_INTERVAL -*/
/* #define NIDMM_VAL_AUTO_DELAY DEFINED ABOVE */
/*- Defined values for NIDMM_ATTR_TRIGGER_SOURCE -*/
#define NIDMM_VAL_IMMEDIATE IVIDMM_VAL_IMMEDIATE
#define NIDMM_VAL_EXTERNAL IVIDMM_VAL_EXTERNAL
#define NIDMM_VAL_SOFTWARE_TRIG IVIDMM_VAL_SOFTWARE_TRIG
#define NIDMM_VAL_TTL0 IVIDMM_VAL_TTL0
#define NIDMM_VAL_TTL1 IVIDMM_VAL_TTL1
#define NIDMM_VAL_TTL2 IVIDMM_VAL_TTL2
#define NIDMM_VAL_TTL3 IVIDMM_VAL_TTL3
#define NIDMM_VAL_TTL4 IVIDMM_VAL_TTL4
#define NIDMM_VAL_TTL5 IVIDMM_VAL_TTL5
#define NIDMM_VAL_TTL6 IVIDMM_VAL_TTL6
#define NIDMM_VAL_TTL7 IVIDMM_VAL_TTL7
#define NIDMM_VAL_PXI_STAR IVIDMM_VAL_PXI_STAR
#define NIDMM_VAL_LBR_TRIG_1 (NIDMM_VAL_TRIGGER_SOURCE_SPECIFIC_EXT_BASE + 4L)
#define NIDMM_VAL_AUX_TRIG_1 (NIDMM_VAL_TRIGGER_SOURCE_SPECIFIC_EXT_BASE + 1L)
/*- Defined values for NIDMM_ATTR_MEAS_COMPLETE_DEST -*/
#define NIDMM_VAL_NONE IVIDMM_VAL_NONE
/* #define NIDMM_VAL_EXTERNAL DEFINED ABOVE */
/* #define NIDMM_VAL_TTL0 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL1 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL2 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL3 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL4 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL5 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL6 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL7 DEFINED ABOVE */
#define NIDMM_VAL_LBR_TRIG_0 (NIDMM_VAL_TRIGGER_SOURCE_SPECIFIC_EXT_BASE + 3L)
/*- Defined values for NIDMM_ATTR_SAMPLE_TRIGGER -*/
/* #define NIDMM_VAL_IMMEDIATE DEFINED ABOVE */
/* #define NIDMM_VAL_EXTERNAL DEFINED ABOVE */
/* #define NIDMM_VAL_SOFTWARE_TRIG DEFINED ABOVE */
/* #define NIDMM_VAL_TTL0 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL1 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL2 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL3 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL4 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL5 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL6 DEFINED ABOVE */
/* #define NIDMM_VAL_TTL7 DEFINED ABOVE */
/* #define NIDMM_VAL_PXI_STAR DEFINED ABOVE */
/* #define NIDMM_VAL_LBR_TRIG_1 DEFINED ABOVE */
/* #define NIDMM_VAL_AUX_TRIG_1 DEFINED ABOVE */
#define NIDMM_VAL_INTERVAL IVIDMM_VAL_INTERVAL
/*- Defined values for NIDMM_ATTR_TRIGGER_SLOPE,
NIDMM_ATTR_SAMPLE_TRIGGER_SLOPE, and
NIDMM_ATTR_MEAS_DEST_SLOPE, -*/
#define NIDMM_VAL_POSITIVE IVIDMM_VAL_POSITIVE
#define NIDMM_VAL_NEGATIVE IVIDMM_VAL_NEGATIVE
/*- Defined value for NIDMM_ATTR_TRIGGER_COUNT -*/
#define NIDMM_VAL_TRIG_COUNT_INFINITE 0
/*- Definde value for NIDMM_ATTR_SAMPLE_COUNT -*/
#define NIDMM_VAL_SAMPLE_COUNT_INFINITE 0
/*- Defined values for NIDMM_ATTR_POWERLINE_FREQ -*/
#define NIDMM_VAL_50_HERTZ (50.0)
#define NIDMM_VAL_60_HERTZ (60.0)
/*- Defined values for NIDMM_ATTR_APERTURE_TIME_UNITS -*/
#define NIDMM_VAL_SECONDS IVIDMM_VAL_SECONDS
#define NIDMM_VAL_POWER_LINE_CYCLES IVIDMM_VAL_POWER_LINE_CYCLES
/*- Defined values for NIDMM_ATTR_APERTURE_TIME -*/
#define NIDMM_VAL_APERTURE_TIME_AUTO -1.0
#define NIDMM_VAL_1_PLC 1.0
#define NIDMM_VAL_5_PLC 5.0
#define NIDMM_VAL_6_PLC 6.0
#define NIDMM_VAL_10_PLC 10.0
#define NIDMM_VAL_12_PLC 12.0
#define NIDMM_VAL_100_PLC 100.0
#define NIDMM_VAL_120_PLC 120.0
/*- Defined value for NIDMM_ATTR_SETTLE_TIME -*/
#define NIDMM_VAL_SETTLE_TIME_AUTO -1.0
/*- Defined values for NIDMM_ATTR_AUTO_ZERO -*/
#define NIDMM_VAL_AUTO_ZERO_AUTO -1
#define NIDMM_VAL_AUTO_ZERO_OFF IVIDMM_VAL_AUTO_ZERO_OFF
#define NIDMM_VAL_AUTO_ZERO_ON IVIDMM_VAL_AUTO_ZERO_ON
#define NIDMM_VAL_AUTO_ZERO_ONCE IVIDMM_VAL_AUTO_ZERO_ONCE
/*- Defined values for NIDMM_ATTR_ADC_CALIBRATION -*/
#define NIDMM_VAL_ADC_CALIBRATION_AUTO -1
#define NIDMM_VAL_ADC_CALIBRATION_OFF 0
#define NIDMM_VAL_ADC_CALIBRATION_ON 1
/*- Defined values for NIDMM_ATTR_OFFSET_COMP_OHMS -*/
#define NIDMM_VAL_OFFSET_COMP_OHMS_OFF 0
#define NIDMM_VAL_OFFSET_COMP_OHMS_ON 1
/*- Defined values for NIDMM_ATTR_CURRENT_SOURCE -*/
#define NIDMM_VAL_1_MICROAMP 0.000001
#define NIDMM_VAL_10_MICROAMP 0.00001
#define NIDMM_VAL_100_MICROAMP 0.0001
#define NIDMM_VAL_1_MILLIAMP 0.001
/*- Defined values for NIDMM_ATTR_DC_NOISE_REJECTION -*/
#define NIDMM_VAL_DCNR_AUTO -1
#define NIDMM_VAL_DCNR_NORMAL 0
#define NIDMM_VAL_DCNR_SECOND_ORDER 1
#define NIDMM_VAL_DCNR_HIGH_ORDER 2
/*- Defined values for NIDMM_ATTR_INPUT_RESISTANCE -*/
#define NIDMM_VAL_1_MEGAOHM 1000000.0
#define NIDMM_VAL_10_MEGAOHM 10000000.0
#define NIDMM_VAL_GREATER_THAN_10_GIGAOHM 10000000000.0
#define NIDMM_VAL_RESISTANCE_NA 0.0
/*- Defined value for NIDMM_ATTR_LATENCY -*/
#define NIDMM_VAL_LATENCY_AUTO -1
/*- Defined value for NIDMM_ATTR_BUFFER_SIZE -*/
#define NIDMM_VAL_BUFFER_SIZE_AUTO -1
/*- Defined values for calibration functions -*/
#define NIDMM_VAL_INTERNAL_AREA 0
#define NIDMM_VAL_EXTERNAL_AREA 1
/*- Defined values for time limit -*/
#define NIDMM_VAL_TIME_LIMIT_AUTO -1
/*- Defined values for NIDMM_ATTR_OPERATION_MODE -*/
#define NIDMM_VAL_IVIDMM_MODE 0
#define NIDMM_VAL_WAVEFORM_MODE 1
/*- Defined Values for NIDMM_ATTR_WAVEFORM_COUPLING -*/
#define NIDMM_VAL_WAVEFORM_COUPLING_AC 0
#define NIDMM_VAL_WAVEFORM_COUPLING_DC 1
/*- Defined values for NIDMM_ATTR_CALCULATION_MODEL -*/
#define NIDMM_VAL_CALC_MODEL_AUTO -1
#define NIDMM_VAL_CALC_MODEL_SERIES 0
#define NIDMM_VAL_CALC_MODEL_PARALLEL 1
/*- Defined values for NIDMM_ATTR_DC_BIAS -*/
#define NIDMM_VAL_DC_BIAS_OFF 0
#define NIDMM_VAL_DC_BIAS_ON 1
/*- Defined values for the typeOfCompensation parameter of "niDMM_LC_Measurement_Compensation" -*/
#define NIDMM_VAL_CABLE_COMP_NONE 0
#define NIDMM_VAL_CABLE_COMP_OPEN 1
#define NIDMM_VAL_CABLE_COMP_SHORT 2
#define NIDMM_VAL_CABLE_COMP_OPEN_AND_SHORT 3
/*- Defined values for the action parameter of "niDMM_control" -*/
#define NIDMM_VAL_CONTROL_COMMIT 0 // Commit
/*****************************************************************************\
External Calibration Constants
\*****************************************************************************/
#define NIDMM_EXTCAL_MISCCAL_VREF 0L
#define NIDMM_EXTCAL_MISCCAL_RREF 1L
#define NIDMM_EXTCAL_MISCCAL_ZINT 2L
#define NIDMM_EXTCAL_MISCCAL_2WIRELEAKAGE 3L
#define NIDMM_EXTCAL_MISCCAL_4WIRELEAKAGE 4L
#define NIDMM_EXTCAL_MISCCAL_SECTION 5L
#define NIDMM_EXTCAL_MISCCAL_MAX_TYPES 6L
#define NIDMM_EXTCAL_ACTION_ABORT 0L
#define NIDMM_EXTCAL_ACTION_SAVE 1L
#define NIDMM_EXTCAL_LC_OPEN 0L
#define NIDMM_EXTCAL_LC_SHORT 1L
#define NIDMM_EXTCAL_LC_25OHM 2L
#define NIDMM_EXTCAL_LC_1KOHM 3L
#define NIDMM_EXTCAL_LC_5KOHM 4L
#define NIDMM_EXTCAL_LC_100KOHM 5L
#define NIDMM_EXTCAL_LC_MAX_STAGES 6L
#define NIDMM_4022_CONFIG_GUARD 0L
#define NIDMM_4022_CONFIG_CURRENT_100_NANOAMP 2L
#define NIDMM_4022_CONFIG_CURRENT_10_MICROAMP 3L
#define NIDMM_4022_CONFIG_CURRENT_1_MILLIAMP 7L
#define NIDMM_4022_CONFIG_DISCONNECT_AGND 8L
/*****************************************************************************\
NI-DMM Specific Driver Functions Declarations
\*****************************************************************************/
/*- Init and Close Functions -*/
ViStatus NIDMM_DECLSPEC _VI_FUNC niDMM_init(
ViRsrc resourceName,
ViBoolean IDQuery,
ViBoolean reset,
ViSession *newVi);
ViStatus NIDMM_DECLSPEC _VI_FUNC niDMM_InitWithOptions(
ViRsrc resourceName,
ViBoolean IDQuery,
ViBoolean resetDevice,
ViString optionsString,
ViSession *newVi);
ViStatus NIDMM_DECLSPEC _VI_FUNC niDMM_close(
ViSession vi);
/*- Error Functions -*/
ViStatus NIDMM_DECLSPEC _VI_FUNC niDMM_error_query(
ViSession vi,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -