]> sigrok.org Git - libsigrok.git/blobdiff - src/hardware/fx2lafw/protocol.c
rigol-ds: Add DS1074Z Plus and DS1104Z Plus.
[libsigrok.git] / src / hardware / fx2lafw / protocol.c
index 3ec904c28aee66ab589a210f924b9a7e5636f7a3..70186518b6d5ade6b983a7b70f66ce8e1fd4eb9a 100644 (file)
@@ -331,7 +331,7 @@ static void finish_acquisition(struct sr_dev_inst *sdi)
 
        devc = sdi->priv;
 
-       std_session_send_df_end(sdi, LOG_PREFIX);
+       std_session_send_df_end(sdi);
 
        usb_source_remove(sdi->session, devc->ctx);
 
@@ -390,6 +390,10 @@ SR_PRIV void mso_send_data_proc(struct sr_dev_inst *sdi,
 {
        size_t i;
        struct dev_context *devc;
+       struct sr_datafeed_analog analog;
+       struct sr_analog_encoding encoding;
+       struct sr_analog_meaning meaning;
+       struct sr_analog_spec spec;
 
        (void)sample_width;
 
@@ -399,9 +403,9 @@ SR_PRIV void mso_send_data_proc(struct sr_dev_inst *sdi,
 
        /* Send the logic */
        for (i = 0; i < length; i++) {
-               devc->logic_buffer[i]  = data[i * 2];
+               devc->logic_buffer[i] = data[i * 2];
                /* Rescale to -10V - +10V from 0-255. */
-               devc->analog_buffer[i] = data[i * 2 + 1] - 128.0f / 12.8f;
+               devc->analog_buffer[i] = (data[i * 2 + 1] - 128.0f) / 12.8f;
        };
 
        const struct sr_datafeed_logic logic = {
@@ -417,17 +421,16 @@ SR_PRIV void mso_send_data_proc(struct sr_dev_inst *sdi,
 
        sr_session_send(sdi, &logic_packet);
 
-       const struct sr_datafeed_analog_old analog = {
-               .channels = devc->enabled_analog_channels,
-               .num_samples = length,
-               .mq = SR_MQ_VOLTAGE,
-               .unit = SR_UNIT_VOLT,
-               .mqflags = 0 /*SR_MQFLAG_DC*/,
-               .data = devc->analog_buffer
-       };
+       sr_analog_init(&analog, &encoding, &meaning, &spec, 2);
+       analog.meaning->channels = devc->enabled_analog_channels;
+       analog.meaning->mq = SR_MQ_VOLTAGE;
+       analog.meaning->unit = SR_UNIT_VOLT;
+       analog.meaning->mqflags = 0 /* SR_MQFLAG_DC */;
+       analog.num_samples = length;
+       analog.data = devc->analog_buffer;
 
        const struct sr_datafeed_packet analog_packet = {
-               .type = SR_DF_ANALOG_OLD,
+               .type = SR_DF_ANALOG,
                .payload = &analog
        };