#include <Servo.h>
Servo servo;
#define TRIG_PIN 2
#define ECHO_PIN 3
long GetDistance()
{
pinMode(TRIG_PIN, OUTPUT); // сброс Trig
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH); // установка TRIG на 10 мкс
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
pinMode(ECHO_PIN, INPUT); // измерение длительности ECHO
return pulseIn(ECHO_PIN, HIGH);
}
void setup() {
servo.attach(9);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
}
void loop() {
int distance = GetDistance() / 58;
int angle = map(distance, 0, 400, 180, 0);
servo.write(angle);
delay(10);
}