// Define the pins for the ultrasonic sensor
const int trigPin = 11;
const int echoPin = 12;
// Define the pins for the LEDs
const int ledPins[] = {8,7,6,5,4,3,2};
const int numLeds = 7; // Number of LEDs
void setup() {
// Initialize ultrasonic sensor pins
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
// Initialize LED pins
for (int i = 0; i < numLeds; i++) {
pinMode(ledPins[i], OUTPUT);
}
// Start with all LEDs off
for (int i = 0; i < numLeds; i++) {
digitalWrite(ledPins[i], LOW);
}
}
void loop() {
// Variables to store distance measurement
long duration, distance;
// Trigger the ultrasonic sensor to send a pulse
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
// Measure the pulse from the echo pin
duration = pulseIn(echoPin, HIGH);
// Calculate the distance in centimeters
distance = (duration / 2) / 29.1;
// Update LED indicators based on distance
for (int i = 0; i < numLeds; i++) {
if (distance >= (i + 1) * 10) {
digitalWrite(ledPins[i], HIGH);
} else {
digitalWrite(ledPins[i], LOW);
}
}
}