Не могу понять почему нет опроса датчиков, пытался сделать опрос через каждые 5 мин. но ничего не происходит. Прошу Подскажите что в скетче не так. #include <OneWire.h> #include <DallasTemperature.h> OneWire oneWire(10); // вход датчиков 18b20 DallasTemperature ds(&oneWire); DeviceAddress sensor1 = {0x28, 0x6D, 0x74, 0x23, 0x05, 0x0, 0x0, 0x28}; DeviceAddress sensor2 = {0x28, 0xB, 0x41, 0x23, 0x05, 0x0, 0x0, 0xF}; #define POLL_INTERVAL 50000 #define POLL_PERIOD (60*60*1000) bool poll_sensor = false; unsigned long time_start; unsigned long time_poll; void setup() { Serial.begin(38400); ds.begin(); Serial.print("Zamer Dathikov Po Vremeni ******** "); } void loop() { char c = 0; if (Serial.available()) c = Serial.read(); // Нажать 1 if ('1'==c) { time_start = millis(); time_poll = time_start; poll_sensor = true; } else { if (0!=c) poll_sensor = false; if (poll_sensor && ((millis()-time_start)>POLL_PERIOD)) poll_sensor = false; } if (poll_sensor) { if ((time_poll==time_start) || ((millis()-time_poll)>POLL_INTERVAL)) { ds.requestTemperatures(); // считываем температуру с датчиков Serial.print("Temper1 "); Serial.print(ds.getTempC(sensor1)); // отправляем температуру Serial.println(" *C"); Serial.println(); time_poll = millis(); } } }
Спасибо Unixon за подсказки. теперь на основе этого делаю авто полив. и электроды не так подвержены коррозии, если интервал запроса будет больше.