#define TRIG_PIN 5
#define ECHO_PIN 18
#define GREEN_LED 12
#define RED_LED 14
long duration;
float distance;
void setup() {
Serial.begin(115200);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(GREEN_LED, OUTPUT);
pinMode(RED_LED, OUTPUT);
}
void loop() {
// Clear TRIG
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
// Send 10us pulse
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
// Measure pulse duration
duration = pulseIn(ECHO_PIN, HIGH);
// Calculate distance (cm)
distance = duration * 0.034 / 2;
Serial.print("Distance: ");
Serial.print(distance);
Serial.println(" cm");
if (distance < 10) {
// Car detected
digitalWrite(RED_LED, HIGH);
digitalWrite(GREEN_LED, LOW);
Serial.println("Parking Slot: OCCUPIED");
} else {
// Slot empty
digitalWrite(RED_LED, LOW);
digitalWrite(GREEN_LED, HIGH);
Serial.println("Parking Slot: AVAILABLE");
}
Serial.println("------------------------");
delay(1000);
}