📄 visa.h
字号:
ViBusSize mapSize, ViBoolean access,
ViAddr suggested, ViPAddr address);
#endif
void _VI_FUNC viPeek8 (ViSession vi, ViAddr address, ViPUInt8 val8);
void _VI_FUNC viPoke8 (ViSession vi, ViAddr address, ViUInt8 val8);
void _VI_FUNC viPeek16 (ViSession vi, ViAddr address, ViPUInt16 val16);
void _VI_FUNC viPoke16 (ViSession vi, ViAddr address, ViUInt16 val16);
void _VI_FUNC viPeek32 (ViSession vi, ViAddr address, ViPUInt32 val32);
void _VI_FUNC viPoke32 (ViSession vi, ViAddr address, ViUInt32 val32);
#if defined(_VI_INT64_UINT64_DEFINED)
void _VI_FUNC viPeek64 (ViSession vi, ViAddr address, ViPUInt64 val64);
void _VI_FUNC viPoke64 (ViSession vi, ViAddr address, ViUInt64 val64);
#endif
/*- Shared Memory Operations ------------------------------------------------*/
ViStatus _VI_FUNC viMemAlloc (ViSession vi, ViBusSize size, ViPBusAddress offset);
ViStatus _VI_FUNC viMemFree (ViSession vi, ViBusAddress offset);
#if defined(_VI_INT64_UINT64_DEFINED)
ViStatus _VI_FUNC viMemAllocEx (ViSession vi, ViBusSize size, ViPBusAddress64 offset);
ViStatus _VI_FUNC viMemFreeEx (ViSession vi, ViBusAddress64 offset);
#endif
/*- Interface Specific Operations -------------------------------------------*/
ViStatus _VI_FUNC viGpibControlREN(ViSession vi, ViUInt16 mode);
ViStatus _VI_FUNC viGpibControlATN(ViSession vi, ViUInt16 mode);
ViStatus _VI_FUNC viGpibSendIFC (ViSession vi);
ViStatus _VI_FUNC viGpibCommand (ViSession vi, ViBuf cmd, ViUInt32 cnt, ViPUInt32 retCnt);
ViStatus _VI_FUNC viGpibPassControl(ViSession vi, ViUInt16 primAddr, ViUInt16 secAddr);
ViStatus _VI_FUNC viVxiCommandQuery(ViSession vi, ViUInt16 mode, ViUInt32 cmd,
ViPUInt32 response);
ViStatus _VI_FUNC viAssertUtilSignal(ViSession vi, ViUInt16 line);
ViStatus _VI_FUNC viAssertIntrSignal(ViSession vi, ViInt16 mode, ViUInt32 statusID);
ViStatus _VI_FUNC viMapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest,
ViUInt16 mode);
ViStatus _VI_FUNC viUnmapTrigger (ViSession vi, ViInt16 trigSrc, ViInt16 trigDest);
ViStatus _VI_FUNC viUsbControlOut (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest,
ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength,
ViBuf buf);
ViStatus _VI_FUNC viUsbControlIn (ViSession vi, ViInt16 bmRequestType, ViInt16 bRequest,
ViUInt16 wValue, ViUInt16 wIndex, ViUInt16 wLength,
ViPBuf buf, ViPUInt16 retCnt);
/*- Attributes (platform independent size) ----------------------------------*/
#define VI_ATTR_RSRC_CLASS (0xBFFF0001UL)
#define VI_ATTR_RSRC_NAME (0xBFFF0002UL)
#define VI_ATTR_RSRC_IMPL_VERSION (0x3FFF0003UL)
#define VI_ATTR_RSRC_LOCK_STATE (0x3FFF0004UL)
#define VI_ATTR_MAX_QUEUE_LENGTH (0x3FFF0005UL)
#define VI_ATTR_USER_DATA_32 (0x3FFF0007UL)
#define VI_ATTR_FDC_CHNL (0x3FFF000DUL)
#define VI_ATTR_FDC_MODE (0x3FFF000FUL)
#define VI_ATTR_FDC_GEN_SIGNAL_EN (0x3FFF0011UL)
#define VI_ATTR_FDC_USE_PAIR (0x3FFF0013UL)
#define VI_ATTR_SEND_END_EN (0x3FFF0016UL)
#define VI_ATTR_TERMCHAR (0x3FFF0018UL)
#define VI_ATTR_TMO_VALUE (0x3FFF001AUL)
#define VI_ATTR_GPIB_READDR_EN (0x3FFF001BUL)
#define VI_ATTR_IO_PROT (0x3FFF001CUL)
#define VI_ATTR_DMA_ALLOW_EN (0x3FFF001EUL)
#define VI_ATTR_ASRL_BAUD (0x3FFF0021UL)
#define VI_ATTR_ASRL_DATA_BITS (0x3FFF0022UL)
#define VI_ATTR_ASRL_PARITY (0x3FFF0023UL)
#define VI_ATTR_ASRL_STOP_BITS (0x3FFF0024UL)
#define VI_ATTR_ASRL_FLOW_CNTRL (0x3FFF0025UL)
#define VI_ATTR_RD_BUF_OPER_MODE (0x3FFF002AUL)
#define VI_ATTR_RD_BUF_SIZE (0x3FFF002BUL)
#define VI_ATTR_WR_BUF_OPER_MODE (0x3FFF002DUL)
#define VI_ATTR_WR_BUF_SIZE (0x3FFF002EUL)
#define VI_ATTR_SUPPRESS_END_EN (0x3FFF0036UL)
#define VI_ATTR_TERMCHAR_EN (0x3FFF0038UL)
#define VI_ATTR_DEST_ACCESS_PRIV (0x3FFF0039UL)
#define VI_ATTR_DEST_BYTE_ORDER (0x3FFF003AUL)
#define VI_ATTR_SRC_ACCESS_PRIV (0x3FFF003CUL)
#define VI_ATTR_SRC_BYTE_ORDER (0x3FFF003DUL)
#define VI_ATTR_SRC_INCREMENT (0x3FFF0040UL)
#define VI_ATTR_DEST_INCREMENT (0x3FFF0041UL)
#define VI_ATTR_WIN_ACCESS_PRIV (0x3FFF0045UL)
#define VI_ATTR_WIN_BYTE_ORDER (0x3FFF0047UL)
#define VI_ATTR_GPIB_ATN_STATE (0x3FFF0057UL)
#define VI_ATTR_GPIB_ADDR_STATE (0x3FFF005CUL)
#define VI_ATTR_GPIB_CIC_STATE (0x3FFF005EUL)
#define VI_ATTR_GPIB_NDAC_STATE (0x3FFF0062UL)
#define VI_ATTR_GPIB_SRQ_STATE (0x3FFF0067UL)
#define VI_ATTR_GPIB_SYS_CNTRL_STATE (0x3FFF0068UL)
#define VI_ATTR_GPIB_HS488_CBL_LEN (0x3FFF0069UL)
#define VI_ATTR_CMDR_LA (0x3FFF006BUL)
#define VI_ATTR_VXI_DEV_CLASS (0x3FFF006CUL)
#define VI_ATTR_MAINFRAME_LA (0x3FFF0070UL)
#define VI_ATTR_MANF_NAME (0xBFFF0072UL)
#define VI_ATTR_MODEL_NAME (0xBFFF0077UL)
#define VI_ATTR_VXI_VME_INTR_STATUS (0x3FFF008BUL)
#define VI_ATTR_VXI_TRIG_STATUS (0x3FFF008DUL)
#define VI_ATTR_VXI_VME_SYSFAIL_STATE (0x3FFF0094UL)
#define VI_ATTR_WIN_BASE_ADDR_32 (0x3FFF0098UL)
#define VI_ATTR_WIN_SIZE_32 (0x3FFF009AUL)
#define VI_ATTR_ASRL_AVAIL_NUM (0x3FFF00ACUL)
#define VI_ATTR_MEM_BASE_32 (0x3FFF00ADUL)
#define VI_ATTR_ASRL_CTS_STATE (0x3FFF00AEUL)
#define VI_ATTR_ASRL_DCD_STATE (0x3FFF00AFUL)
#define VI_ATTR_ASRL_DSR_STATE (0x3FFF00B1UL)
#define VI_ATTR_ASRL_DTR_STATE (0x3FFF00B2UL)
#define VI_ATTR_ASRL_END_IN (0x3FFF00B3UL)
#define VI_ATTR_ASRL_END_OUT (0x3FFF00B4UL)
#define VI_ATTR_ASRL_REPLACE_CHAR (0x3FFF00BEUL)
#define VI_ATTR_ASRL_RI_STATE (0x3FFF00BFUL)
#define VI_ATTR_ASRL_RTS_STATE (0x3FFF00C0UL)
#define VI_ATTR_ASRL_XON_CHAR (0x3FFF00C1UL)
#define VI_ATTR_ASRL_XOFF_CHAR (0x3FFF00C2UL)
#define VI_ATTR_WIN_ACCESS (0x3FFF00C3UL)
#define VI_ATTR_RM_SESSION (0x3FFF00C4UL)
#define VI_ATTR_VXI_LA (0x3FFF00D5UL)
#define VI_ATTR_MANF_ID (0x3FFF00D9UL)
#define VI_ATTR_MEM_SIZE_32 (0x3FFF00DDUL)
#define VI_ATTR_MEM_SPACE (0x3FFF00DEUL)
#define VI_ATTR_MODEL_CODE (0x3FFF00DFUL)
#define VI_ATTR_SLOT (0x3FFF00E8UL)
#define VI_ATTR_INTF_INST_NAME (0xBFFF00E9UL)
#define VI_ATTR_IMMEDIATE_SERV (0x3FFF0100UL)
#define VI_ATTR_INTF_PARENT_NUM (0x3FFF0101UL)
#define VI_ATTR_RSRC_SPEC_VERSION (0x3FFF0170UL)
#define VI_ATTR_INTF_TYPE (0x3FFF0171UL)
#define VI_ATTR_GPIB_PRIMARY_ADDR (0x3FFF0172UL)
#define VI_ATTR_GPIB_SECONDARY_ADDR (0x3FFF0173UL)
#define VI_ATTR_RSRC_MANF_NAME (0xBFFF0174UL)
#define VI_ATTR_RSRC_MANF_ID (0x3FFF0175UL)
#define VI_ATTR_INTF_NUM (0x3FFF0176UL)
#define VI_ATTR_TRIG_ID (0x3FFF0177UL)
#define VI_ATTR_GPIB_REN_STATE (0x3FFF0181UL)
#define VI_ATTR_GPIB_UNADDR_EN (0x3FFF0184UL)
#define VI_ATTR_DEV_STATUS_BYTE (0x3FFF0189UL)
#define VI_ATTR_FILE_APPEND_EN (0x3FFF0192UL)
#define VI_ATTR_VXI_TRIG_SUPPORT (0x3FFF0194UL)
#define VI_ATTR_TCPIP_ADDR (0xBFFF0195UL)
#define VI_ATTR_TCPIP_HOSTNAME (0xBFFF0196UL)
#define VI_ATTR_TCPIP_PORT (0x3FFF0197UL)
#define VI_ATTR_TCPIP_DEVICE_NAME (0xBFFF0199UL)
#define VI_ATTR_TCPIP_NODELAY (0x3FFF019AUL)
#define VI_ATTR_TCPIP_KEEPALIVE (0x3FFF019BUL)
#define VI_ATTR_4882_COMPLIANT (0x3FFF019FUL)
#define VI_ATTR_USB_SERIAL_NUM (0xBFFF01A0UL)
#define VI_ATTR_USB_INTFC_NUM (0x3FFF01A1UL)
#define VI_ATTR_USB_PROTOCOL (0x3FFF01A7UL)
#define VI_ATTR_USB_MAX_INTR_SIZE (0x3FFF01AFUL)
#define VI_ATTR_PXI_DEV_NUM (0x3FFF0201UL)
#define VI_ATTR_PXI_FUNC_NUM (0x3FFF0202UL)
#define VI_ATTR_PXI_BUS_NUM (0x3FFF0205UL)
#define VI_ATTR_PXI_CHASSIS (0x3FFF0206UL)
#define VI_ATTR_PXI_SLOTPATH (0xBFFF0207UL)
#define VI_ATTR_PXI_SLOT_LBUS_LEFT (0x3FFF0208UL)
#define VI_ATTR_PXI_SLOT_LBUS_RIGHT (0x3FFF0209UL)
#define VI_ATTR_PXI_TRIG_BUS (0x3FFF020AUL)
#define VI_ATTR_PXI_STAR_TRIG_BUS (0x3FFF020BUL)
#define VI_ATTR_PXI_STAR_TRIG_LINE (0x3FFF020CUL)
#define VI_ATTR_PXI_MEM_TYPE_BAR0 (0x3FFF0211UL)
#define VI_ATTR_PXI_MEM_TYPE_BAR1 (0x3FFF0212UL)
#define VI_ATTR_PXI_MEM_TYPE_BAR2 (0x3FFF0213UL)
#define VI_ATTR_PXI_MEM_TYPE_BAR3 (0x3FFF0214UL)
#define VI_ATTR_PXI_MEM_TYPE_BAR4 (0x3FFF0215UL)
#define VI_ATTR_PXI_MEM_TYPE_BAR5 (0x3FFF0216UL)
#define VI_ATTR_PXI_MEM_BASE_BAR0 (0x3FFF0221UL)
#define VI_ATTR_PXI_MEM_BASE_BAR1 (0x3FFF0222UL)
#define VI_ATTR_PXI_MEM_BASE_BAR2 (0x3FFF0223UL)
#define VI_ATTR_PXI_MEM_BASE_BAR3 (0x3FFF0224UL)
#define VI_ATTR_PXI_MEM_BASE_BAR4 (0x3FFF0225UL)
#define VI_ATTR_PXI_MEM_BASE_BAR5 (0x3FFF0226UL)
#define VI_ATTR_PXI_MEM_SIZE_BAR0 (0x3FFF0231UL)
#define VI_ATTR_PXI_MEM_SIZE_BAR1 (0x3FFF0232UL)
#define VI_ATTR_PXI_MEM_SIZE_BAR2 (0x3FFF0233UL)
#define VI_ATTR_PXI_MEM_SIZE_BAR3 (0x3FFF0234UL)
#define VI_ATTR_PXI_MEM_SIZE_BAR4 (0x3FFF0235UL)
#define VI_ATTR_PXI_MEM_SIZE_BAR5 (0x3FFF0236UL)
#define VI_ATTR_PXI_IS_EXPRESS (0x3FFF0240UL)
#define VI_ATTR_PXI_SLOT_LWIDTH (0x3FFF0241UL)
#define VI_ATTR_PXI_MAX_LWIDTH (0x3FFF0242UL)
#define VI_ATTR_PXI_ACTUAL_LWIDTH (0x3FFF0243UL)
#define VI_ATTR_PXI_DSTAR_BUS (0x3FFF0244UL)
#define VI_ATTR_PXI_DSTAR_SET (0x3FFF0245UL)
#define VI_ATTR_JOB_ID (0x3FFF4006UL)
#define VI_ATTR_EVENT_TYPE (0x3FFF4010UL)
#define VI_ATTR_SIGP_STATUS_ID (0x3FFF4011UL)
#define VI_ATTR_RECV_TRIG_ID (0x3FFF4012UL)
#define VI_ATTR_INTR_STATUS_ID (0x3FFF4023UL)
#define VI_ATTR_STATUS (0x3FFF4025UL)
#define VI_ATTR_RET_COUNT_32 (0x3FFF4026UL)
#define VI_ATTR_BUFFER (0x3FFF4027UL)
#define VI_ATTR_RECV_INTR_LEVEL (0x3FFF4041UL)
#define VI_ATTR_OPER_NAME (0xBFFF4042UL)
#define VI_ATTR_GPIB_RECV_CIC_STATE (0x3FFF4193UL)
#define VI_ATTR_RECV_TCPIP_ADDR (0xBFFF4198UL)
#define VI_ATTR_USB_RECV_INTR_SIZE (0x3FFF41B0UL)
#define VI_ATTR_USB_RECV_INTR_DATA (0xBFFF41B1UL)
/*- Attributes (platform dependent size) ------------------------------------*/
#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT)
#define VI_ATTR_USER_DATA_64 (0x3FFF000AUL)
#define VI_ATTR_RET_COUNT_64 (0x3FFF4028UL)
#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_64)
#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_64)
#else
#define VI_ATTR_USER_DATA (VI_ATTR_USER_DATA_32)
#define VI_ATTR_RET_COUNT (VI_ATTR_RET_COUNT_32)
#endif
#if defined(_VI_INT64_UINT64_DEFINED)
#define VI_ATTR_WIN_BASE_ADDR_64 (0x3FFF009BUL)
#define VI_ATTR_WIN_SIZE_64 (0x3FFF009CUL)
#define VI_ATTR_MEM_BASE_64 (0x3FFF00D0UL)
#define VI_ATTR_MEM_SIZE_64 (0x3FFF00D1UL)
#endif
#if defined(_VI_INT64_UINT64_DEFINED) && defined(_VISA_ENV_IS_64_BIT)
#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_64)
#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_64)
#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_64)
#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_64)
#else
#define VI_ATTR_WIN_BASE_ADDR (VI_ATTR_WIN_BASE_ADDR_32)
#define VI_ATTR_WIN_SIZE (VI_ATTR_WIN_SIZE_32)
#define VI_ATTR_MEM_BASE (VI_ATTR_MEM_BASE_32)
#define VI_ATTR_MEM_SIZE (VI_ATTR_MEM_SIZE_32)
#endif
/*- Event Types -------------------------------------------------------------*/
#define VI_EVENT_IO_COMPLETION (0x3FFF2009UL)
#define VI_EVENT_TRIG (0xBFFF200AUL)
#define VI_EVENT_SERVICE_REQ (0x3FFF200BUL)
#define VI_EVENT_CLEAR (0x3FFF200DUL)
#define VI_EVENT_EXCEPTION (0xBFFF200EUL)
#define VI_EVENT_GPIB_CIC (0x3FFF2012UL)
#define VI_EVENT_GPIB_TALK (0x3FFF2013UL)
#define VI_EVENT_GPIB_LISTEN (0x3FFF2014UL)
#define VI_EVENT_VXI_VME_SYSFAIL (0x3FFF201DUL)
#define VI_EVENT_VXI_VME_SYSRESET (0x3FFF201EUL)
#define VI_EVENT_VXI_SIGP (0x3FFF2020UL)
#define VI_EVENT_VXI_VME_INTR (0xBFFF2021UL)
#define VI_EVENT_PXI_INTR (0x3FFF2022UL)
#define VI_EVENT_TCPIP_CONNECT (0x3FFF2036UL)
#define VI_EVENT_USB_INTR (0x3FFF2037UL)
#define VI_ALL_ENABLED_EVENTS (0x3FFF7FFFUL)
/*- Completion and Error Codes ----------------------------------------------*/
#define VI_SUCCESS_EVENT_EN (0x3FFF0002L) /* 3FFF0002, 1073676290 */
#define VI_SUCCESS_EVENT_DIS (0x3FFF0003L) /* 3FFF0003, 1073676291 */
#define VI_SUCCESS_QUEUE_EMPTY (0x3FFF0004L) /* 3FFF0004, 1073676292 */
#define VI_SUCCESS_TERM_CHAR (0x3FFF0005L) /* 3FFF0005, 1073676293 */
#define VI_SUCCESS_MAX_CNT (0x3FFF0006L) /* 3FFF0006, 1073676294 */
#define VI_SUCCESS_DEV_NPRESENT (0x3FFF007DL) /* 3FFF007D, 1073676413 */
#define VI_SUCCESS_TRIG_MAPPED (0x3FFF007EL) /* 3FFF007E, 1073676414 */
#define VI_SUCCESS_QUEUE_NEMPTY (0x3FFF0080L) /* 3FFF0080, 1073676416 */
#define VI_SUCCESS_NCHAIN (0x3FFF0098L) /* 3FFF0098, 1073676440 */
#define VI_SUCCESS_NESTED_SHARED (0x3FFF0099L) /* 3FFF0099, 1073676441 */
#define VI_SUCCESS_NESTED_EXCLUSIVE (0x3FFF009AL) /* 3FFF009A, 1073676442 */
#define VI_SUCCESS_SYNC (0x3FFF009BL) /* 3FFF009B, 1073676443 */
#define VI_WARN_QUEUE_OVERFLOW (0x3FFF000CL) /* 3FFF000C, 1073676300 */
#define VI_WARN_CONFIG_NLOADED (0x3FFF0077L) /* 3FFF0077, 1073676407 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -