X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fhameg-hmo%2Fprotocol.h;h=af77c6da7e6dc09a0d2486a33809ce5881857270;hb=24be1e05d5f1cbe84c69b0bd27d422ad4b13cd77;hp=30efc8626ab9fb94da75a63fd33200a82204668a;hpb=396af5ad7d607085ba597b2318769127df58799e;p=libsigrok.git diff --git a/src/hardware/hameg-hmo/protocol.h b/src/hardware/hameg-hmo/protocol.h index 30efc862..af77c6da 100644 --- a/src/hardware/hameg-hmo/protocol.h +++ b/src/hardware/hameg-hmo/protocol.h @@ -28,17 +28,19 @@ #define LOG_PREFIX "hameg-hmo" -#define MAX_INSTRUMENT_VERSIONS 10 -#define MAX_COMMAND_SIZE 128 -#define MAX_ANALOG_CHANNEL_COUNT 4 -#define MAX_DIGITAL_CHANNEL_COUNT 16 -#define MAX_DIGITAL_GROUP_COUNT 2 +#define DIGITAL_CHANNELS_PER_POD 8 + +#define MAX_INSTRUMENT_VERSIONS 10 +#define MAX_COMMAND_SIZE 128 +#define MAX_ANALOG_CHANNEL_COUNT 4 +#define MAX_DIGITAL_CHANNEL_COUNT 16 +#define MAX_DIGITAL_GROUP_COUNT 2 struct scope_config { const char *name[MAX_INSTRUMENT_VERSIONS]; const uint8_t analog_channels; const uint8_t digital_channels; - const uint8_t digital_pods; + uint8_t digital_pods; const char *(*analog_names)[]; const char *(*digital_names)[]; @@ -71,8 +73,8 @@ struct scope_config { const uint64_t (*vdivs)[][2]; const uint8_t num_vdivs; - const uint8_t num_xdivs; - const uint8_t num_ydivs; + unsigned int num_xdivs; + const unsigned int num_ydivs; const char *(*scpi_dialect)[]; }; @@ -104,7 +106,10 @@ struct scope_state { int trigger_source; int trigger_slope; - char trigger_pattern[MAX_ANALOG_CHANNEL_COUNT + MAX_DIGITAL_CHANNEL_COUNT]; + char trigger_pattern[MAX_ANALOG_CHANNEL_COUNT + MAX_DIGITAL_CHANNEL_COUNT + 1]; + + gboolean high_resolution; + gboolean peak_detection; uint64_t sample_rate; };