// номер цифрового датчика влажности почвы #define MOISTURE_PIN A0 // номер цифрового пина пищалки #define BUZZER_PIN 3 // номера цифровых пинов светодиодов #define LED_RED_PIN 2 #define LED_GREEN_PIN 4 // минимальный порог влажности почвы #define HUMIDITY_MIN 400 // длительность сигнала в миллисекундах #define DURATION 500 void setup() { // пины светодиодов в режим выхода pinMode(LED_RED_PIN, OUTPUT); pinMode(LED_GREEN_PIN, OUTPUT); } void loop() { // считываем текущее показания датчика влажности почвы int valueMoisture = analogRead(MOISTURE_PIN); // если показания датчика почвы больше допустимой границы // значит между электродами датчика находиться вода if (valueMoisture > HUMIDITY_MIN) { // гасим зелёный светодиод digitalWrite(LED_GREEN_PIN, LOW); // пищим баззером и мигаем красным светодиодом digitalWrite(LED_RED_PIN, HIGH); tone(BUZZER_PIN, 500, DURATION); delay(DURATION); digitalWrite(LED_RED_PIN, LOW); delay(DURATION); } else { // гасим красный светодиод и зажигаем зелёный digitalWrite(LED_RED_PIN, LOW); digitalWrite(LED_GREEN_PIN, HIGH); } }