From 9fa36c9eb1bb294c58b4e4dd7592893f829ce282 Mon Sep 17 00:00:00 2001 From: Justin Fichtner <Justin.Fichtner@lakeshore.com> Date: 周一, 14 8月 2017 23:36:13 +0800 Subject: [PATCH] Add support for STATus:OPERation:CONDition register and general handling of condition registers --- libscpi/src/minimal.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 52 insertions(+), 0 deletions(-) diff --git a/libscpi/src/minimal.c b/libscpi/src/minimal.c index 83ecec7..05e351e 100644 --- a/libscpi/src/minimal.c +++ b/libscpi/src/minimal.c @@ -139,6 +139,58 @@ } /** + * STATus:OPERation:CONDition? + * @param context + * @return + */ +scpi_result_t SCPI_StatusOperationConditionQ(scpi_t * context) { + /* return value */ + SCPI_ResultInt32(context, SCPI_RegGet(context, SCPI_REG_OPERC)); + + return SCPI_RES_OK; +} + +/** + * STATus:OPERation[:EVENt]? + * @param context + * @return + */ +scpi_result_t SCPI_StatusOperationEventQ(scpi_t * context) { + /* return value */ + SCPI_ResultInt32(context, SCPI_RegGet(context, SCPI_REG_OPER)); + + /* clear register */ + SCPI_RegSet(context, SCPI_REG_OPER, 0); + + return SCPI_RES_OK; +} + +/** + * STATus:OPERation:ENABle? + * @param context + * @return + */ + scpi_result_t SCPI_StatusOperationEnableQ(scpi_t * context) { + /* return value */ + SCPI_ResultInt32(context, SCPI_RegGet(context, SCPI_REG_OPERE)); + + return SCPI_RES_OK; +} + +/** + * STATus:OPERation:ENABle + * @param context + * @return + */ +scpi_result_t SCPI_StatusOperationEnable(scpi_t * context) { + int32_t new_OPERE; + if (SCPI_ParamInt32(context, &new_OPERE, TRUE)) { + SCPI_RegSet(context, SCPI_REG_OPERE, (scpi_reg_val_t) new_OPERE); + } + return SCPI_RES_OK; +} + +/** * STATus:PRESet * @param context * @return -- Gitblit v1.9.1