#define TRIG 2
#define ECHO 3
#define R 9
#define G 10
#define B 11
#define BUZZER 12
int distance = 0;
void setup() {
Serial.begin(9600);
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
pinMode(R, OUTPUT);
pinMode(G, OUTPUT);
pinMode(B, OUTPUT);
pinMode(BUZZER, OUTPUT);
}
void loop()
{
// Measuring the distance
distance = getDistance();
if (distance >= 255) {
digitalWrite(R, LOW);
digitalWrite(G, LOW);
digitalWrite(B, HIGH);
noTone(BUZZER); //
}
else if (distance >= 150 && distance < 255) {
digitalWrite(R, LOW);
digitalWrite(G, HIGH);
digitalWrite(B, LOW);
noTone(BUZZER);
}
else if (distance >= 0 && distance < 100) {
digitalWrite(R, HIGH);
digitalWrite(G, LOW);
digitalWrite(B, LOW);
tone(BUZZER, 1000);
}
delay(1000);
}
int getDistance() {
digitalWrite(TRIG, LOW); // Set the TRIG pin to LOW to ensure a clean start.
delayMicroseconds(2); // Wait for a short duration to ensure stability.
digitalWrite(TRIG, HIGH); // Set TRIG pin to HIGH to trigger the ultrasonic sensor.
delayMicroseconds(10); // Keep the TRIG pin HIGH for a specific duration.
digitalWrite(TRIG, LOW); // Set the TRIG pin back to LOW to end the trigger pulse.
return pulseIn(ECHO, HIGH) * 0.034 / 2; // Speed of sound (0.034 cm/microsecond)
}