X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Fhardware%2Fscpi-pps%2Fprotocol.h;h=b75feb2ec2a1d0fcc75abe445ac5671aa60985f9;hb=HEAD;hp=3ffe3cb7292e60a8ab2b34ef1de026fb675f6f18;hpb=8b5eadf427323318967da09a2824e57920e70a7d;p=libsigrok.git diff --git a/src/hardware/scpi-pps/protocol.h b/src/hardware/scpi-pps/protocol.h index 3ffe3cb7..b75feb2e 100644 --- a/src/hardware/scpi-pps/protocol.h +++ b/src/hardware/scpi-pps/protocol.h @@ -2,7 +2,7 @@ * This file is part of the libsigrok project. * * Copyright (C) 2014 Bert Vermeulen - * Copyright (C) 2017 Frank Stettner + * Copyright (C) 2017,2019 Frank Stettner * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -66,6 +66,8 @@ enum pps_scpi_cmds { SCPI_CMD_GET_OVER_CURRENT_PROTECTION_ACTIVE, SCPI_CMD_GET_OVER_CURRENT_PROTECTION_THRESHOLD, SCPI_CMD_SET_OVER_CURRENT_PROTECTION_THRESHOLD, + SCPI_CMD_GET_OVER_CURRENT_PROTECTION_DELAY, + SCPI_CMD_SET_OVER_CURRENT_PROTECTION_DELAY, }; /* Defines the SCPI dialect */ @@ -74,6 +76,7 @@ enum pps_scpi_dialect { SCPI_DIALECT_HP_COMP, SCPI_DIALECT_HP_66XXB, SCPI_DIALECT_PHILIPS, + SCPI_DIALECT_HMP, }; /* @@ -107,6 +110,8 @@ struct scpi_pps { int (*probe_channels) (struct sr_dev_inst *sdi, struct sr_scpi_hw_info *hwinfo, struct channel_spec **channels, unsigned int *num_channels, struct channel_group_spec **channel_groups, unsigned int *num_channel_groups); + int (*init_acquisition) (const struct sr_dev_inst *sdi); + int (*update_status) (const struct sr_dev_inst *sdi); }; struct channel_spec { @@ -118,16 +123,20 @@ struct channel_spec { double frequency[5]; double ovp[5]; double ocp[5]; + double ocp_delay[5]; }; struct channel_group_spec { const char *name; uint64_t channel_index_mask; uint64_t features; + /* The mqflags will only be applied to voltage and current channels! */ + enum sr_mqflag mqflags; }; struct pps_channel { enum sr_mq mq; + enum sr_mqflag mqflags; unsigned int hw_output_idx; const char *hwname; int digits;