enable/disable calibration support

This commit is contained in:
Wolfgang Hottgenroth 2014-02-02 16:47:01 +01:00
parent 8677aeb749
commit 780048da8b
2 changed files with 15 additions and 4 deletions

View File

@ -39,13 +39,23 @@ uint16_t stringToUInt8(String i, uint8_t index) {
String CalibrationSupport::exec(String params) {
String res = "failed";
MeterBusMaster *mbm = (MeterBusMaster*)m_meterBusMaster;
if (params.equalsIgnoreCase("sample")) {
if (params.equalsIgnoreCase("sample") && enable) {
mbm->sample();
} else if (params.equalsIgnoreCase("hold")) {
res = "done";
} else if (params.equalsIgnoreCase("hold") && enable) {
mbm->hold();
res = "done";
} else if (params.equalsIgnoreCase("enable") && ! enable) {
enable = true;
res = "enabled";
} else if (params.equalsIgnoreCase("disable") && enable) {
enable = false;
res = "disabled";
}
return "Done";
return res;
}
String MeasureCurrent::exec(String params) {

View File

@ -42,12 +42,13 @@ private:
class CalibrationSupport : public Cmd {
public:
CalibrationSupport(RequestSender *meterBusMaster) : m_meterBusMaster(meterBusMaster) {}
CalibrationSupport(RequestSender *meterBusMaster) : m_meterBusMaster(meterBusMaster), enable(false) {}
virtual String getCmdName() { return "CS"; }
virtual String getHelp() { return "Calibration Support"; }
virtual String exec(String params);
private:
RequestSender *m_meterBusMaster;
bool enable;
};