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 CalibrationSupport::exec(String params) {
String res = "failed";
MeterBusMaster *mbm = (MeterBusMaster*)m_meterBusMaster; MeterBusMaster *mbm = (MeterBusMaster*)m_meterBusMaster;
if (params.equalsIgnoreCase("sample")) { if (params.equalsIgnoreCase("sample") && enable) {
mbm->sample(); mbm->sample();
} else if (params.equalsIgnoreCase("hold")) { res = "done";
} else if (params.equalsIgnoreCase("hold") && enable) {
mbm->hold(); 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) { String MeasureCurrent::exec(String params) {

View File

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