};
} __attribute__((packed));
-static const uint32_t devopts[] = {
- SR_CONF_OSCILLOSCOPE,
- SR_CONF_LIMIT_FRAMES | SR_CONF_GET | SR_CONF_SET,
- SR_CONF_TRIGGER_SOURCE | SR_CONF_GET | SR_CONF_SET | SR_CONF_LIST,
- SR_CONF_TIMEBASE | SR_CONF_GET | SR_CONF_SET | SR_CONF_LIST,
- SR_CONF_NUM_HDIV | SR_CONF_GET,
- SR_CONF_TRIGGER_SLOPE | SR_CONF_GET | SR_CONF_SET | SR_CONF_LIST,
- SR_CONF_HORIZ_TRIGGERPOS | SR_CONF_GET | SR_CONF_SET,
- SR_CONF_SAMPLERATE | SR_CONF_GET,
-};
-
-static const uint32_t analog_devopts[] = {
- SR_CONF_NUM_VDIV | SR_CONF_GET,
- SR_CONF_COUPLING | SR_CONF_GET | SR_CONF_SET | SR_CONF_LIST,
- SR_CONF_VDIV | SR_CONF_GET | SR_CONF_SET | SR_CONF_LIST,
-};
-
static const char *coupling_options[] = {
"A1M", // AC with 1 MOhm termination
"D50", // DC with 50 Ohm termination
};
static const char *scope_trigger_slopes[] = {
- "POS",
- "NEG",
- NULL,
+ "POS", "NEG", NULL,
};
static const char *trigger_sources[] = {
- "C1",
- "C2",
- "C3",
- "C4",
- "LINE",
- "EXT",
- NULL,
+ "C1", "C2", "C3", "C4", "LINE", "EXT", NULL,
};
static const struct sr_rational timebases[] = {
};
static const char *scope_analog_channel_names[] = {
- "CH1",
- "CH2",
- "CH3",
- "CH4",
+ "CH1", "CH2", "CH3", "CH4",
};
static const struct scope_config scope_models[] = {
.analog_channels = 4,
.analog_names = &scope_analog_channel_names,
- .devopts = &devopts,
- .num_devopts = ARRAY_SIZE(devopts),
-
- .analog_devopts = &analog_devopts,
- .num_analog_devopts = ARRAY_SIZE(analog_devopts),
-
.coupling_options = &coupling_options,
.trigger_sources = &trigger_sources,
.trigger_slopes = &scope_trigger_slopes,
tmp, state->analog_channels[i].vertical_offset);
}
- tmp = sr_period_string(((float)config->timebases[state->timebase].q) /
- ((float)config->timebases[state->timebase].p));
+ tmp = sr_period_string(config->timebases[state->timebase].p,
+ config->timebases[state->timebase].q);
sr_info("Current timebase: %s", tmp);
g_free(tmp);
if (sr_scpi_get_string(scpi, command, &tmp_str) != SR_OK)
return SR_ERR;
- if (array_float_get(tmp_str, vdivs, ARRAY_SIZE(vdivs), &j) != SR_OK) {
+ if (array_float_get(tmp_str, ARRAY_AND_SIZE(vdivs), &j) != SR_OK) {
g_free(tmp_str);
sr_err("Could not determine array index for vertical div scale.");
return SR_ERR;
if (sr_scpi_get_string(sdi->conn, "TIME_DIV?", &tmp_str) != SR_OK)
return SR_ERR;
- if (array_float_get(tmp_str, timebases, ARRAY_SIZE(timebases), &i) != SR_OK) {
+ if (array_float_get(tmp_str, ARRAY_AND_SIZE(timebases), &i) != SR_OK) {
g_free(tmp_str);
sr_err("Could not determine array index for timbase scale.");
return SR_ERR;
* the first enabled channel.
*/
if (++devc->num_frames == devc->frame_limit) {
- sdi->driver->dev_acquisition_stop(sdi);
+ sr_dev_acquisition_stop(sdi);
} else {
devc->current_channel = devc->enabled_channels;
lecroy_xstream_request_data(sdi);