Добавляем ds18b20 в конфиг для тестирования и адаптируем к новой инициализации базового класса

This commit is contained in:
2022-02-01 13:03:19 +03:00
parent 9ca620ada4
commit 0128a8966a

View File

@@ -27,9 +27,8 @@ class ds18b20 : public IoTSensor {
//Такие как ...begin и подставлять в них параметры полученные из web интерфейса.
//Все параметры хранятся в перемененной parameters, вы можете прочитать любой параметр используя jsonRead функции:
// jsonReadStr, jsonReadBool, jsonReadInt
ds18b20(String parameters) {
init(jsonReadStr(parameters, "key"), jsonReadStr(parameters, "id"), jsonReadInt(parameters, "int")); //обязательный вызов
ds18b20(String parameters): IoTSensor(parameters) {
_pin = jsonReadInt(parameters, "pin");
_index = jsonReadInt(parameters, "index");
_addr = jsonReadStr(parameters, "addr");
@@ -62,6 +61,8 @@ class ds18b20 : public IoTSensor {
sensors->requestTemperatures();
//Определяем адрес. Если парамтер addr не установлен, то узнаем адрес по индексу
// TODO: понять как лучше. в текущей реализации адрес вычисляется каждый раз при опросе шины, это хорошо при отладке,
// но при постоянном контакте и использовании правильнее генерировать адрес при инициализации модуля. Но тогда нужно перезагружать устройство при новом датчике
DeviceAddress deviceAddress;
if (_addr == "") {
sensors->getAddress(deviceAddress, _index);