Files
IoTManager/src/modules/AnalogAdc.cpp

40 lines
997 B
C++
Raw Normal View History

#include "Global.h"
#include "Classes/IoTSensor.h"
2022-01-15 16:41:25 +01:00
class AnalogAdc : public IoTSensor {
public:
// setup()
AnalogAdc(String parameters) {
init(jsonReadStr(parameters, "key"), jsonReadStr(parameters, "id"), jsonReadInt(parameters, "int"));
2022-01-15 16:41:25 +01:00
_pin = jsonReadInt(parameters, "pin");
}
2022-01-15 16:41:25 +01:00
// loop()
void doByInterval() {
float value = analogRead(_pin);
regEvent((String)value, "AnalogAdc");
2022-01-15 16:41:25 +01:00
}
2022-01-15 16:41:25 +01:00
~AnalogAdc();
private:
unsigned int _pin;
};
void* getAPI_AnalogAdc(String parameters) {
String subtype;
if (!jsonRead(parameters, F("subtype"), subtype)) { //если нет такого ключа в представленном json или он не валидный
SerialPrint(F("E"), F("Config"), F("json error AnalogAdc"));
return nullptr;
} else {
if (subtype == F("AnalogAdc")) {
return new AnalogAdc(parameters);
} else {
return nullptr;
}
}
}