From b75a3a17c2bb7ce46af4815ae588e263dbab944e Mon Sep 17 00:00:00 2001 From: Justin Fichtner <Justin.Fichtner@lakeshore.com> Date: 周二, 15 8月 2017 00:20:06 +0800 Subject: [PATCH] Fix another bug in tests --- libscpi/inc/scpi/types.h | 34 ++++++++++++++++++++++++++++++---- 1 files changed, 30 insertions(+), 4 deletions(-) diff --git a/libscpi/inc/scpi/types.h b/libscpi/inc/scpi/types.h index 01611be..3584936 100644 --- a/libscpi/inc/scpi/types.h +++ b/libscpi/inc/scpi/types.h @@ -74,6 +74,7 @@ SCPI_REG_ESE, /* Event Status Enable Register */ SCPI_REG_OPER, /* OPERation Status Register */ SCPI_REG_OPERE, /* OPERation Status Enable Register */ + SCPI_REG_OPERC, /* OPERation Status Condition Register */ SCPI_REG_QUES, /* QUEStionable status register */ SCPI_REG_QUESE, /* QUEStionable status Enable Register */ @@ -113,7 +114,12 @@ typedef struct _scpi_command_t scpi_command_t; -#define SCPI_CMD_LIST_END {NULL, NULL, 0} +#if USE_COMMAND_TAGS + #define SCPI_CMD_LIST_END {NULL, NULL, 0} +#else + #define SCPI_CMD_LIST_END {NULL, NULL} +#endif + /* scpi interface */ typedef struct _scpi_t scpi_t; @@ -201,12 +207,29 @@ typedef scpi_result_t(*scpi_command_callback_t)(scpi_t *); + struct _scpi_error_info_heap_t { + size_t wr; + /* size_t rd; */ + size_t count; + size_t size; + char * data; + }; + typedef struct _scpi_error_info_heap_t scpi_error_info_heap_t; + + struct _scpi_error_t { + int16_t error_code; +#if USE_DEVICE_DEPENDENT_ERROR_INFORMATION + char * device_dependent_info; +#endif + }; + typedef struct _scpi_error_t scpi_error_t; + struct _scpi_fifo_t { int16_t wr; int16_t rd; int16_t count; int16_t size; - int16_t * data; + scpi_error_t * data; }; typedef struct _scpi_fifo_t scpi_fifo_t; @@ -259,7 +282,7 @@ SCPI_UNIT_BAR, SCPI_UNIT_DECIBEL, SCPI_UNIT_UNITLESS, - SCPI_UNIT_FAGRENHEIT, + SCPI_UNIT_FAHRENHEIT, SCPI_UNIT_KELVIN, SCPI_UNIT_DAY, SCPI_UNIT_YEAR, @@ -311,7 +334,7 @@ union { double value; int32_t tag; - }; + } content; scpi_unit_t unit; int8_t base; }; @@ -350,6 +373,9 @@ int_fast16_t input_count; scpi_bool_t cmd_error; scpi_fifo_t error_queue; +#if USE_DEVICE_DEPENDENT_ERROR_INFORMATION && !USE_MEMORY_ALLOCATION_FREE + scpi_error_info_heap_t error_info_heap; +#endif scpi_reg_val_t registers[SCPI_REG_COUNT]; const scpi_unit_def_t * units; void * user_context; -- Gitblit v1.9.1