#define PIN_TRIG1 3
#define PIN_ECHO1 2
#define PIN_TRIG2 9
#define PIN_ECHO2 8
#define PIN_TRIG3 10
#define PIN_ECHO3 11
int ledr = 7;
int ledg = 6;
int ledy = 5;
#define buzzer 4
int sensor;
void setup ()
{
Serial.begin(115200);
pinMode(PIN_TRIG1, OUTPUT);
pinMode(PIN_ECHO1, INPUT);
pinMode(PIN_TRIG2, OUTPUT);
pinMode(PIN_ECHO2, INPUT);
pinMode(PIN_TRIG3, OUTPUT);
pinMode(PIN_ECHO3, INPUT);
pinMode(ledr, OUTPUT);
pinMode(ledg, OUTPUT);
pinMode(ledy, OUTPUT);
pinMode(buzzer, OUTPUT);
pinMode(A0, INPUT);
//delay(500);
//noTone(buzzer, sensor);
}
void loop ()
{
sensor = analogRead(A0);
// tone(buzzer, sensor);
// Start a new measurement:
digitalWrite(PIN_TRIG1, HIGH);
delayMicroseconds(1);
digitalWrite(PIN_TRIG1, LOW);
// Read the result:
int duration1 = pulseIn(PIN_ECHO1, HIGH);
Serial.print("Distance in CM: ");
Serial.println(duration1 / 58); //ULTRASONIK
duration1 = duration1 / 58;
digitalWrite(PIN_TRIG2, HIGH);
delayMicroseconds(1);
digitalWrite(PIN_TRIG2, LOW);
int duration2 = pulseIn(PIN_ECHO2, HIGH);
Serial.print("Distance in CM: ");
Serial.println(duration2 / 58);
duration2 = duration2 / 58;
digitalWrite(PIN_TRIG3, HIGH);
delayMicroseconds(1);
digitalWrite(PIN_TRIG3, LOW);
int duration3 = pulseIn(PIN_ECHO3, HIGH);
Serial.print("Distance in CM: ");
Serial.println(duration3 / 58);
duration3 = duration3 / 58;
if(duration1 <= 100)
{
tone(buzzer, sensor);
digitalWrite(ledr, 1);
// tone(buzzer, sensor);
}
if (duration1 >= 100)
{
noTone(buzzer);
digitalWrite(ledr, 0);
}
if(duration2 <= 100)
{
// tone(buzzer, sensor);
digitalWrite(ledg, 1);
}
if(duration2 >= 100)
{
//noTone(buzzer);
digitalWrite(ledg, 0);
}
if(duration3 <= 100)
{
digitalWrite(ledy, 1);
}
if(duration3 >= 100)
{
digitalWrite(ledy, 0);
}
// else
// {
// digitalWrite(ledg, 1);
// digitalWrite(ledr, 0);
// digitalWrite(ledy, 0);
// }
// delay(1000);
}