]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/agilent-dmm/agilent-dmm.h
resource: Improve logging output.
[libsigrok.git] / src / hardware / agilent-dmm / agilent-dmm.h
index 789358c485c9f0b08458ac5dbfd965634e34858d..e89c7c149886310e7f0e4efefd0b46678642dcfa 100644 (file)
 
 #define LOG_PREFIX "agilent-dmm"
 
-#define AGDMM_BUFSIZE  256
+#define AGDMM_BUFSIZE 256
+
+/* Always USB-serial, 1ms is plenty. */
+#define SERIAL_WRITE_TIMEOUT_MS 1
 
 /* Supported models */
 enum {
@@ -30,9 +33,15 @@ enum {
        AGILENT_U1232,
        AGILENT_U1233,
 
+       AGILENT_U1241,
+       AGILENT_U1242,
+
        AGILENT_U1251,
        AGILENT_U1252,
        AGILENT_U1253,
+
+       KEYSIGHT_U1281,
+       KEYSIGHT_U1282,
 };
 
 /* Supported device profiles */
@@ -46,24 +55,22 @@ struct agdmm_profile {
 /* Private, per-device-instance driver context. */
 struct dev_context {
        const struct agdmm_profile *profile;
-       uint64_t limit_samples;
-       uint64_t limit_msec;
-
-       /* Opaque pointer passed in by the frontend. */
-       void *cb_data;
+       struct sr_sw_limits limits;
 
        /* Runtime. */
-       uint64_t num_samples;
        int64_t jobqueue[8];
        unsigned char buf[AGDMM_BUFSIZE];
        int buflen;
        int cur_mq;
        int cur_unit;
        int cur_mqflags;
-       int cur_divider;
+       int cur_digits;
+       int cur_encoding;
+       int cur_exponent;
        int cur_acdc;
        int mode_tempaux;
        int mode_continuity;
+       int mode_squarewave;
 };
 
 struct agdmm_job {