/** * *CLS - This command clears all status data structures in a device. * For a device which minimally complies with SCPI. (SCPI std 4.1.3.2) * @param context * @return */ scpi_result_t SCPIParser::SCPI_CoreCls() { SCPI_EventClear(); SCPI_ErrorClear(); SCPI_RegSet( SCPI_REG_OPER, 0); SCPI_RegSet(SCPI_REG_QUES, 0); return SCPI_RES_OK; }
/** * *CLS - This command clears all status data structures in a device. * For a device which minimally complies with SCPI. (SCPI std 4.1.3.2) * @param context * @return */ scpi_result_t SCPI_CoreCls(scpi_t * context) { SCPI_EventClear(context); SCPI_ErrorClear(context); SCPI_RegSet(context, SCPI_REG_OPER, 0); SCPI_RegSet(context, SCPI_REG_QUES, 0); return SCPI_RES_OK; }
/** * *SRE * @param context * @return */ scpi_result_t SCPI_CoreSre(scpi_t * context) { int32_t new_SRE; if (SCPI_ParamInt(context, &new_SRE, TRUE)) { SCPI_RegSet(context, SCPI_REG_SRE, new_SRE); } return SCPI_RES_OK; }
/** * STATus:QUEStionable:ENABle * @param context * @return */ scpi_result_t SCPI_StatusQuestionableEnable(scpi_t * context) { INT32 new_QUESE; if (SCPI_ParamInt32(context, &new_QUESE, TRUE)) { SCPI_RegSet(context, SCPI_REG_QUESE, (scpi_reg_val_t) new_QUESE); } return SCPI_RES_OK; }
/** * *SRE * @param context * @return */ scpi_result_t SCPIParser::SCPI_CoreSre() { int32_t new_SRE; if (SCPI_ParamInt(&new_SRE, TRUE)) { SCPI_RegSet(SCPI_REG_SRE, new_SRE); } return SCPI_RES_OK; }
/** * STATus:QUEStionable:ENABle * @param context * @return */ scpi_result_t SCPI_StatusQuestionableEnable(scpi_t * context) { int32_t new_QUESE; if (SCPI_ParamInt(context, &new_QUESE, TRUE)) { SCPI_RegSet(context, SCPI_REG_QUESE, new_QUESE); } return SCPI_RES_OK; }
/** * STATus:QUEStionable[:EVENt]? * @param context * @return */ scpi_result_t SCPI_StatusQuestionableEventQ(scpi_t * context) { /* return value */ SCPI_ResultInt32(context, SCPI_RegGet(context, SCPI_REG_QUES)); /* clear register */ SCPI_RegSet(context, SCPI_REG_QUES, 0); return SCPI_RES_OK; }
/** * Update register value * @param context * @param name - register name */ static void regUpdate(scpi_t * context, scpi_reg_name_t name) { SCPI_RegSet(context, name, SCPI_RegGet(context, name)); }
/** * *ESR? * @param context * @return */ scpi_result_t SCPI_CoreEsrQ(scpi_t * context) { SCPI_ResultInt(context, SCPI_RegGet(context, SCPI_REG_ESR)); SCPI_RegSet(context, SCPI_REG_ESR, 0); return SCPI_RES_OK; }
/** * Clear event register * @param context */ void SCPI_EventClear(scpi_t * context) { /* TODO */ SCPI_RegSet(context, SCPI_REG_ESR, 0); }
/** * Clear register bits * @param name - register name * @param bits bit mask */ void SCPI_RegClearBits(scpi_t * context, scpi_reg_name_t name, scpi_reg_val_t bits) { SCPI_RegSet(context, name, SCPI_RegGet(context, name) & ~bits); }
/** * STATus:PRESet * @param context * @return */ scpi_result_t SCPI_StatusPreset(scpi_t * context) { /* clear STATUS:... */ SCPI_RegSet(context, SCPI_REG_QUES, 0); return SCPI_RES_OK; }
/** * *ESR? * @param context * @return */ scpi_result_t SCPIParser::SCPI_CoreEsrQ() { SCPI_ResultInt(SCPI_RegGet(SCPI_REG_ESR)); SCPI_RegSet(SCPI_REG_ESR, 0); return SCPI_RES_OK; }
/** * Clear event register * @param context */ void SCPIParser::SCPI_EventClear() { /* TODO */ SCPI_RegSet(SCPI_REG_ESR, 0); }
/** * Clear register bits * @param name - register name * @param bits bit mask */ void SCPIParser::SCPI_RegClearBits(scpi_reg_name_t name, scpi_reg_val_t bits) { SCPI_RegSet(name, SCPI_RegGet(name) & ~bits); }
/** * Update register value * @param context * @param name - register name */ void SCPIParser::regUpdate(scpi_reg_name_t name) { SCPI_RegSet(name, SCPI_RegGet(name)); }