mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-30 03:49:13 +03:00
Делаем Ds18b20 с большой буквы
This commit is contained in:
@@ -11,5 +11,17 @@
|
|||||||
"multiply": 1,
|
"multiply": 1,
|
||||||
"pin": 0,
|
"pin": 0,
|
||||||
"int": 15
|
"int": 15
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "Reading",
|
||||||
|
"subtype": "Ds18b20",
|
||||||
|
"id": "tmp",
|
||||||
|
"widget": "anydataTmp",
|
||||||
|
"page": "Сенсоры",
|
||||||
|
"descr": "Температура",
|
||||||
|
"int": 15,
|
||||||
|
"pin": 0,
|
||||||
|
"index": 0,
|
||||||
|
"addr": ""
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
//============================================================================================
|
//============================================================================================
|
||||||
//здесь скопируйте строку и вставьте ниже, заменив имя AnalogAdc на название вашего сенсора
|
//здесь скопируйте строку и вставьте ниже, заменив имя AnalogAdc на название вашего сенсора
|
||||||
void* getAPI_AnalogAdc(String subtype, String params);
|
void* getAPI_AnalogAdc(String subtype, String params);
|
||||||
void* getAPI_ds18b20(String subtype, String params);
|
void* getAPI_Ds18b20(String subtype, String params);
|
||||||
//============================================================================================
|
//============================================================================================
|
||||||
|
|
||||||
void* getAPI(String subtype, String params) {
|
void* getAPI(String subtype, String params) {
|
||||||
@@ -11,7 +11,7 @@ void* getAPI(String subtype, String params) {
|
|||||||
//===============================================================================================================
|
//===============================================================================================================
|
||||||
//здесь нужно скопировать строку еще раз и вставить ее ниже, переименовав AnalogAdc на название вашего сенсора
|
//здесь нужно скопировать строку еще раз и вставить ее ниже, переименовав AnalogAdc на название вашего сенсора
|
||||||
if ((tmpAPI = getAPI_AnalogAdc(subtype, params)) != nullptr) return tmpAPI;
|
if ((tmpAPI = getAPI_AnalogAdc(subtype, params)) != nullptr) return tmpAPI;
|
||||||
if ((tmpAPI = getAPI_ds18b20(subtype, params)) != nullptr) return tmpAPI;
|
if ((tmpAPI = getAPI_Ds18b20(subtype, params)) != nullptr) return tmpAPI;
|
||||||
//================================================================================================================
|
//================================================================================================================
|
||||||
|
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
std::map<int, OneWire*> oneWireTemperatureArray;
|
std::map<int, OneWire*> oneWireTemperatureArray;
|
||||||
std::map<int, DallasTemperature*> sensorsTemperatureArray;
|
std::map<int, DallasTemperature*> sensorsTemperatureArray;
|
||||||
|
|
||||||
class ds18b20 : public IoTSensor {
|
class Ds18b20 : public IoTSensor {
|
||||||
private:
|
private:
|
||||||
//для работы библиотеки с несколькими линиями необходимо обеспечить каждый экземпляр класса ссылками на объекты настроенные на эти линии
|
//для работы библиотеки с несколькими линиями необходимо обеспечить каждый экземпляр класса ссылками на объекты настроенные на эти линии
|
||||||
OneWire* oneWire;
|
OneWire* oneWire;
|
||||||
@@ -27,7 +27,7 @@ class ds18b20 : public IoTSensor {
|
|||||||
//Такие как ...begin и подставлять в них параметры полученные из web интерфейса.
|
//Такие как ...begin и подставлять в них параметры полученные из web интерфейса.
|
||||||
//Все параметры хранятся в перемененной parameters, вы можете прочитать любой параметр используя jsonRead функции:
|
//Все параметры хранятся в перемененной parameters, вы можете прочитать любой параметр используя jsonRead функции:
|
||||||
// jsonReadStr, jsonReadBool, jsonReadInt
|
// jsonReadStr, jsonReadBool, jsonReadInt
|
||||||
ds18b20(String parameters): IoTSensor(parameters) {
|
Ds18b20(String parameters): IoTSensor(parameters) {
|
||||||
|
|
||||||
_pin = jsonReadInt(parameters, "pin");
|
_pin = jsonReadInt(parameters, "pin");
|
||||||
_index = jsonReadInt(parameters, "index");
|
_index = jsonReadInt(parameters, "index");
|
||||||
@@ -79,15 +79,15 @@ class ds18b20 : public IoTSensor {
|
|||||||
}
|
}
|
||||||
//=======================================================================================================
|
//=======================================================================================================
|
||||||
|
|
||||||
~ds18b20(){};
|
~Ds18b20(){};
|
||||||
};
|
};
|
||||||
|
|
||||||
//после замены названия сенсора, на функцию можно не обращать внимания
|
//после замены названия сенсора, на функцию можно не обращать внимания
|
||||||
//если сенсор предполагает использование общего объекта библиотеки для нескольких экземпляров сенсора, то в данной функции необходимо предусмотреть
|
//если сенсор предполагает использование общего объекта библиотеки для нескольких экземпляров сенсора, то в данной функции необходимо предусмотреть
|
||||||
//создание и контроль соответствующих глобальных переменных (см. пример реализации сенсора ds18b20)
|
//создание и контроль соответствующих глобальных переменных
|
||||||
void* getAPI_ds18b20(String subtype, String param) {
|
void* getAPI_Ds18b20(String subtype, String param) {
|
||||||
if (subtype == F("ds18b20")) {
|
if (subtype == F("Ds18b20")) {
|
||||||
return new ds18b20(param);
|
return new Ds18b20(param);
|
||||||
} else {
|
} else {
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user