// Определяем пины для ультразвукового датчика движения
const int trigPin = 9;
const int echoPin = 10;
// Определяем пин для светодиода
const int ledPin = 13;
// Определяем переменные для расчета расстояния
long duration;
int distance;
void setup() {
// Настраиваем пины
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(ledPin, OUTPUT);
// Настраиваем скорость передачи данных через последовательный порт
Serial.begin(9600);
}
void loop() {
// Отправляем ультразвуковой сигнал
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Получаем время прохождения ультразвукового сигнала
duration = pulseIn(echoPin, HIGH);
// Рассчитываем расстояние до объекта
distance = duration * 0.034 / 2;
// Выводим расстояние в монитор порта
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
// Если расстояние меньше 10 см, зажигаем светодиод
if (distance < 200) {
digitalWrite(ledPin, HIGH);
} else {
digitalWrite(ledPin, LOW);
}
// Ждем 100 миллисекунд
delay(100);
}