From 3cb42550e0eef8e91a99cf77e69aad69c1a64e4d Mon Sep 17 00:00:00 2001 From: Jan Breuer <jan.breuer@jaybee.cz> Date: 周三, 13 3月 2013 01:39:37 +0800 Subject: [PATCH] Add comments and optimize units handling --- libscpi/src/ieee488.c | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-) diff --git a/libscpi/src/ieee488.c b/libscpi/src/ieee488.c index e493a93..4b7cb67 100644 --- a/libscpi/src/ieee488.c +++ b/libscpi/src/ieee488.c @@ -39,6 +39,8 @@ #include "scpi/error.h" #include "scpi/constants.h" +#include <stdio.h> + /** * Update register value * @param name - register name @@ -55,6 +57,14 @@ scpi_reg_val_t SCPI_RegGet(scpi_t * context, scpi_reg_name_t name) { if ((name < SCPI_REG_COUNT) && (context->registers != NULL)) { return context->registers[name]; + } else { + return 0; + } +} + +static size_t writeControl(scpi_t * context, int ctrl, scpi_reg_val_t val) { + if (context && context->interface && context->interface->control) { + return context->interface->control(context, ctrl, val); } else { return 0; } @@ -131,8 +141,8 @@ // set updated register value context->registers[name] = val; - if (srq && context->interface && context->interface->srq) { - context->interface->srq(context); + if (srq) { + writeControl(context, SCPI_CTRL_SRQ, SCPI_RegGet(context, SCPI_REG_STB)); } } -- Gitblit v1.9.1