Переведите с языка C++ на обычный Код (Text): if (!lockLow && millis() - lowIn > pause) { lockLow = true; digitalWrite(relayPin, HIGH); delay(50); }
Код не весь, но рискну предположить, что relayPin ставится в HIGH по прошествии pause миллисекунд если ещё не в HIGH
Код (Text): int sensor = A0; //фоторезистор unsigned int value = 0; long unsigned int lowIn; long unsigned int pause = 700; //Пауза, после которой движение считается оконченным boolean lockLow = true; boolean takeLowTime; int pirPin = 2; //вывод подключения PIR датчика int ledPin = 13; //вывод сигнального диода int relayPin = 4; //реле пин void setup() { pinMode(pirPin, INPUT); pinMode(ledPin, OUTPUT); pinMode(relayPin, OUTPUT); } void loop() { value = analogRead(sensor); if (value < 300)//если темно { if (digitalRead(pirPin) == HIGH) //Если движение есть { if (lockLow) { lockLow = false; digitalWrite(relayPin, LOW); delay(50); } takeLowTime = true; } if (digitalRead(pirPin) == LOW)//Еcли движения нет { if (takeLowTime) { lowIn = millis(); takeLowTime = false; } if (!lockLow && millis() - lowIn > pause) { lockLow = true; digitalWrite(relayPin, HIGH); delay(50); } } } else { digitalWrite(relayPin, HIGH); delay(2); } }
А обычный это какой? Русский? Языки программирования и человеческие языки слишком разные, чтобы осмысленно переводить с одного на другой. Если не понимаете кода, то советую почитать вот это http://wiki.amperka.ru/программирование А лучше полноценную книгу по C++
Ну правильно, после 700 мс(pause), когда движение по PIR датчику прекратилось, включается реле на relayPin. Или ,когда светло, реле включено всегда.