Запрещаем регистрировать событие если ошибка чтения данных в Ds18b20

This commit is contained in:
2022-02-01 22:49:18 +03:00
parent 3b743a768d
commit 5b8c579396

View File

@@ -17,8 +17,8 @@ class Ds18b20 : public IoTSensor {
//описание параметров передаваемых из настроек датчика из веба
String _addr;
unsigned int _pin;
unsigned int _index;
int _pin;
int _index;
public:
//=======================================================================================================
@@ -28,10 +28,9 @@ class Ds18b20 : public IoTSensor {
//Все параметры хранятся в перемененной parameters, вы можете прочитать любой параметр используя jsonRead функции:
// jsonReadStr, jsonReadBool, jsonReadInt
Ds18b20(String parameters): IoTSensor(parameters) {
_pin = jsonReadInt(parameters, "pin");
_index = jsonReadInt(parameters, "index");
_addr = jsonReadStr(parameters, "addr");
jsonRead(parameters, "pin", _pin);
jsonRead(parameters, "index", _index);
jsonRead(parameters, "addr", _addr);
//учитываем, что библиотека может работать с несколькими линиями на разных пинах, поэтому инициируем библиотеку, если линия ранее не использовалась
if (oneWireTemperatureArray.find(_pin) == oneWireTemperatureArray.end()) {
@@ -75,7 +74,8 @@ class Ds18b20 : public IoTSensor {
char addrStr[20] = "";
hex2string(deviceAddress, 8, addrStr);
regEvent((String)value, "addr: " + String(addrStr)); //обязательный вызов для отправки результата работы
if (value != -127) regEvent((String)value, "addr: " + String(addrStr)); //обязательный вызов для отправки результата работы
else SerialPrint("E", "Sensor Ds18b20", "Error");
}
//=======================================================================================================