#include <Servo.h>
#define leda 1
#define ledb 2
#define ledc 3
#define buzzer 4
#define button1 5
#define PIN_TRIG 9
#define PIN_ECHO 10
Servo myservo;
int status1;
int duration;
int condition;
void setup()
{
Serial.begin(115200);
myservo.attach(8);
pinMode(leda, OUTPUT);
pinMode(ledb, OUTPUT);
pinMode(ledc, OUTPUT);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECHO, INPUT);
pinMode(buzzer, OUTPUT);
pinMode(button1, INPUT_PULLUP);
}
void loop()
{
ultrasonic();
if(duration <= 100 && status1 == 1)
{
led();
status1 = 0;
}
else if(duration > 100)
{
status1 = 1;
}
}
void led()
{
status1 = digitalRead(button1);
digitalWrite(PIN_TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, LOW);
int duration = pulseIn(PIN_ECHO, HIGH);
Serial.print("distance in cm: ");
Serial.print(duration / 58);
duration = duration / 58;
delay(1000);
digitalWrite(leda, HIGH);
myservo.write(0);
delay(1000);
digitalWrite(leda, LOW);
digitalWrite(ledb, HIGH);
delay(500);
digitalWrite(ledb, LOW);
digitalWrite(buzzer, HIGH);
tone(buzzer, 1000);
myservo.write(180);
digitalWrite(ledc, HIGH);
delay(1000);
myservo.write(0);
digitalWrite(ledc, LOW);
digitalWrite(buzzer, LOW);
noTone(buzzer);
}
void ultrasonic()
{
status1 = digitalRead(button1);
digitalWrite(PIN_TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, LOW);
duration = pulseIn(PIN_TRIG, HIGH);
Serial.print("distance in cm: ");
Serial.print(duration / 5);
duration = duration / 58;
delay(1000);
}
// unfinished project