X-Git-Url: http://sigrok.org/gitweb/?a=blobdiff_plain;f=hardware%2Fcem-dt-885x%2Fprotocol.h;h=a7d6203baf70151dc92aad4e81d4173e1071cde1;hb=8417ebad122cfade0f9ae6db6cbd8e7249156753;hp=fa96d163fdfb0f21aa49395885c8b1e507df6287;hpb=14cf708fef6d1dfd371923c7749f8cecd8a896a2;p=libsigrok.git diff --git a/hardware/cem-dt-885x/protocol.h b/hardware/cem-dt-885x/protocol.h index fa96d163..a7d6203b 100644 --- a/hardware/cem-dt-885x/protocol.h +++ b/hardware/cem-dt-885x/protocol.h @@ -66,15 +66,25 @@ enum { TOKEN_MEAS_RANGE_80_130 = 0x4c, }; +enum { + CMD_TOGGLE_RECORDING = 0x55, + CMD_TOGGLE_WEIGHT_FREQ = 0x99, + CMD_TOGGLE_WEIGHT_TIME = 0x77, + CMD_TOGGLE_HOLD_MAX_MIN = 0x11, +}; + /** Private, per-device-instance driver context. */ struct dev_context { + /* Device state */ + uint64_t cur_mqflags; + int recording; + /* Acquisition settings */ uint64_t limit_samples; /* Operational state */ int state; uint64_t num_samples; - uint64_t cur_mqflags; /* Temporary state across callbacks */ void *cb_data; @@ -84,7 +94,6 @@ struct dev_context { unsigned char buf[BUF_SIZE]; float last_spl; gint64 hold_last_sent; - }; /* Parser state machine. */ @@ -96,5 +105,15 @@ enum { }; SR_PRIV int cem_dt_885x_receive_data(int fd, int revents, void *cb_data); +SR_PRIV int cem_dt_885x_recording_set(const struct sr_dev_inst *sdi, gboolean start); +SR_PRIV gboolean cem_dt_885x_recording_get(const struct sr_dev_inst *sdi, + int *state); +SR_PRIV int cem_dt_885x_weight_freq_get(const struct sr_dev_inst *sdi); +SR_PRIV int cem_dt_885x_weight_freq_set(const struct sr_dev_inst *sdi, int freqw); +SR_PRIV int cem_dt_885x_weight_time_get(const struct sr_dev_inst *sdi); +SR_PRIV int cem_dt_885x_weight_time_set(const struct sr_dev_inst *sdi, int timew); +SR_PRIV int cem_dt_885x_holdmode_get(const struct sr_dev_inst *sdi, + gboolean *holdmode); +SR_PRIV int cem_dt_885x_holdmode_set(const struct sr_dev_inst *sdi, int holdmode); #endif