Меняем структуру FS для хранения модулей и добавляем скрипт сборки модулей для интеграции в меню и библиотеки

This commit is contained in:
2022-03-07 11:56:09 +03:00
parent d9e111470a
commit c453a98685
54 changed files with 964 additions and 308 deletions

View File

@@ -0,0 +1,54 @@
/******************************************************************
Used ClosedCube HDC1080 Driver (temperature and humidity sensor)
Support for HDC1080
https://github.com/closedcube/ClosedCube_HDC1080_Arduino
adapted for version 4 @Serghei63
******************************************************************/
#include "Global.h"
#include "classes/IoTItem.h"
#include "Wire.h"
#include "ClosedCube_HDC1080.h"
#include <map>
//создаем объект HDC1080
ClosedCube_HDC1080 hdc1080;
class Hdc1080t : public IoTItem {
public:
Hdc1080t(String parameters): IoTItem(parameters) { }
void doByInterval() {
value.valD = hdc1080.readTemperature();
if (value.valD < 124) regEvent(value.valD, "Hdc1080t");
else SerialPrint("E", "Sensor Hdc1080t", "Error");
}
~Hdc1080t() {};
};
class Hdc1080h : public IoTItem {
public:
Hdc1080h(String parameters): IoTItem(parameters) { }
void doByInterval() {
value.valD = hdc1080.readHumidity();
if (value.valD < 99 ) regEvent(value.valD, "Hdc1080h");
else SerialPrint("E", "Sensor Hdc1080h", "Error");
}
~Hdc1080h() {};
};
void* getAPI_Hdc1080(String subtype, String param) {
if (subtype == F("Hdc1080t")) {
hdc1080.begin(0x40);
return new Hdc1080t(param);
} else if (subtype == F("Hdc1080h")) {
hdc1080.begin(0x40);
return new Hdc1080h(param);
} else {
return nullptr;
}
}