]> 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 2277111f62c3d3ecc74f760af40f7b437dbc3799..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 {
-       AGILENT_U1231A = 1,
-       AGILENT_U1232A,
-       AGILENT_U1233A,
-       AGILENT_U1251A,
-       AGILENT_U1252A,
-       AGILENT_U1253A,
+       AGILENT_U1231 = 1,
+       AGILENT_U1232,
+       AGILENT_U1233,
+
+       AGILENT_U1241,
+       AGILENT_U1242,
+
+       AGILENT_U1251,
+       AGILENT_U1252,
+       AGILENT_U1253,
+
+       KEYSIGHT_U1281,
+       KEYSIGHT_U1282,
 };
 
 /* Supported device profiles */
@@ -45,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 {