#define TRIG_PIN 2
#define ECHO_PIN 3
const int StartingPosition = 0;
uint16_t duration = 0;
uint32_t interval = 0;
float distance = 0;
#include <Servo.h>
Servo myservo;
void setup(){
myservo.attach(11);
bool resistorsOnSegments = false;
bool updateWithDelays = false;
bool ButtonPresed = false;
bool leadingZeros = false;
bool disableDecPoint = false;
Serial.begin(9600);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
myservo.write(StartingPosition);
}
void loop(){
if ((millis() - interval) >= 100) {
interval = millis();
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(5);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
duration = pulseIn(ECHO_PIN, HIGH);
distance = (duration / 2) / 29;
Serial.println(distance);
if (distance < 5)
{
distance = map(distance, 1, 5, StartingPosition, 180);
delay(500);
myservo.write(distance);
delay(500);
myservo.write(StartingPosition);
delay(2000);
}
}
}