mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-27 14:42:18 +03:00
Скопом добавляем несколько сенсоров
This commit is contained in:
54
src/modules/Hdc1080.cpp
Normal file
54
src/modules/Hdc1080.cpp
Normal 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 > -46.85F) 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 > -46.85F) 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;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user