Jan Breuer
2023-02-01 c91cb6533b18a9af8f677f6a787ac564905b150f
libscpi/src/ieee488.c
@@ -53,7 +53,15 @@
    { SCPI_REG_CLASS_EVEN, SCPI_REG_GROUP_QUES },
    { SCPI_REG_CLASS_ENAB, SCPI_REG_GROUP_QUES },
    { SCPI_REG_CLASS_COND, SCPI_REG_GROUP_QUES },
    /* Add device specific register details here*/
#if USE_CUSTOM_REGISTERS
#ifndef USER_REGISTER_DETAILS
#error "No user register details defined"
#else
    USER_REGISTER_DETAILS
#endif
#endif
};
static const scpi_reg_group_info_t scpi_reg_group_details[SCPI_REG_GROUP_COUNT] = {
@@ -65,7 +73,7 @@
        SCPI_REG_NONE,
        SCPI_REG_NONE,
        0
    }, //SCPI_REG_GROUP_STB
    }, /* SCPI_REG_GROUP_STB */
    { 
        SCPI_REG_ESR,
        SCPI_REG_ESE,
@@ -74,7 +82,7 @@
        SCPI_REG_NONE,
        SCPI_REG_STB,
        STB_ESR
    }, //SCPI_REG_GROUP_ESR
    }, /* SCPI_REG_GROUP_ESR */
    { 
        SCPI_REG_OPER,
        SCPI_REG_OPERE,
@@ -83,7 +91,7 @@
        SCPI_REG_NONE,
        SCPI_REG_STB,
        STB_OPS
    }, //SCPI_REG_GROUP_OPER
    }, /* SCPI_REG_GROUP_OPER */
    { 
        SCPI_REG_QUES,
        SCPI_REG_QUESE,
@@ -92,8 +100,16 @@
        SCPI_REG_NONE,
        SCPI_REG_STB,
        STB_QES
    }, //SCPI_REG_GROUP_QUES
    /* Add device specific register group details here*/
    }, /* SCPI_REG_GROUP_QUES */
#if USE_CUSTOM_REGISTERS
#ifndef USER_REGISTER_GROUP_DETAILS
#error "No user register group details defined"
#else
    USER_REGISTER_GROUP_DETAILS
#endif
#endif
};
/**
@@ -245,9 +261,12 @@
 */
scpi_result_t SCPI_CoreCls(scpi_t * context) {
    SCPI_ErrorClear(context);
    for (int i = 0; i < SCPI_REG_GROUP_COUNT; ++i) {
    int i;
    for (i = 0; i < SCPI_REG_GROUP_COUNT; ++i) {
        scpi_reg_name_t event_reg = scpi_reg_group_details[i].event;
        SCPI_RegSet(context, event_reg, 0);
        if (event_reg != SCPI_REG_STB) {
            SCPI_RegSet(context, event_reg, 0);
        }
    }
    return SCPI_RES_OK;
}