]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/norma-dmm/protocol.c
scpi-pps: don't break SCPI devices when scanning for HP-IB devices
[libsigrok.git] / src / hardware / norma-dmm / protocol.c
index fcaae133b494e7e67a8c398cff2cd0db10aeac75..39924176d484c4ddab04f126a4d245c8dba888c0 100644 (file)
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-/** @file
- *  Norma DM9x0/Siemens B102x DMMs driver.
- *  @internal
- */
-
 #include <config.h>
 #include "protocol.h"
 
@@ -123,7 +118,8 @@ static void nma_process_line(const struct sr_dev_inst *sdi)
        /* Start decoding. */
        value = 0.0;
        scale = 1.0;
-       sr_analog_init(&analog, &encoding, &meaning, &spec, 0);
+       /* TODO: Use proper 'digits' value for this device (and its modes). */
+       sr_analog_init(&analog, &encoding, &meaning, &spec, 2);
 
        /*
         * The numbers are hex digits, starting from 0.
@@ -349,13 +345,13 @@ static void nma_process_line(const struct sr_dev_inst *sdi)
        /* 4: Flags. Evaluating this after setting value! */
        flags = xgittoint(devc->buf[4]);
        if (flags & 0x04) /* Invalid value */
-           value = NAN;
+               value = NAN;
        else if (flags & 0x01) /* Overload */
-           value =  INFINITY;
+               value = INFINITY;
        if (flags & 0x02) { /* Duplicate value, has been sent before. */
-           sr_spew("Duplicate value, dismissing!");
-           devc->buflen = 0;
-           return;
+               sr_spew("Duplicate value, dismissing!");
+               devc->buflen = 0;
+               return;
        }
 
        sr_spew("range=%d/scale=%f/value=%f", range,
@@ -413,7 +409,7 @@ SR_PRIV int norma_dmm_receive_data(int fd, int revents, void *cb_data)
        }
 
        if (sr_sw_limits_check(&devc->limits)) {
-               sdi->driver->dev_acquisition_stop(sdi);
+               sr_dev_acquisition_stop(sdi);
        } else {
                /* Request next package. */
                if (devc->last_req_pending) {