const int trigPin = 9;
const int echoPin = 8;
// LED pins
const int led40 = 2;
const int led80 = 3;
const int led120 = 4;
const int led160 = 5;
long duration;
int distance;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(led40, OUTPUT);
pinMode(led80, OUTPUT);
pinMode(led120, OUTPUT);
pinMode(led160, OUTPUT);
Serial.begin(9600);
}
void loop() {
// Trigger pulse
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Read echo and calculate distance
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
// Turn OFF all LEDs first
digitalWrite(led40, LOW);
digitalWrite(led80, LOW);
digitalWrite(led120, LOW);
digitalWrite(led160, LOW);
// Turn ON LED based on distance range
if (distance >= 30 && distance < 50) {
digitalWrite(led40, HIGH);
} else if (distance >= 70 && distance < 90) {
digitalWrite(led80, HIGH);
} else if (distance >= 110 && distance < 130) {
digitalWrite(led120, HIGH);
} else if (distance >= 150 && distance < 170) {
digitalWrite(led160, HIGH);
}
delay(200);
}
No comments:
Post a Comment