int ultraSignal = 2; int value = 0; int ultraValue = 0; int timeCounter = 0; int led1 = 3; int led2 = 4; int led3 = 5; int led4 = 6; int led5 = 7; int led6 = 8; int led7 = 9; int led8 = 10; int led9 = 11; int led10 = 12; void setup() { Serial.begin(9600); pinMode(led1 , OUTPUT); pinMode(led2 , OUTPUT); pinMode(led3 , OUTPUT); pinMode(led4 , OUTPUT); pinMode(led5 , OUTPUT); pinMode(led6 , OUTPUT); pinMode(led7 , OUTPUT); pinMode(led8, OUTPUT); pinMode(led9 , OUTPUT); pinMode(led10, OUTPUT); } void loop() { timeCounter = 0; value = 0; pinMode(ultraSignal, OUTPUT); digitalWrite(ultraSignal, LOW); delayMicroseconds(2); digitalWrite(ultraSignal, HIGH); delayMicroseconds(5); digitalWrite(ultraSignal, LOW); pinMode(ultraSignal, INPUT); value = digitalRead(ultraSignal); while(value == LOW) { value = digitalRead(ultraSignal); } while(value == HIGH) { value = digitalRead(ultraSignal); timeCounter = timeCounter +1; } ultraValue = timeCounter; ultraValue = (ultraValue / 3); Serial.print("Distance is: "); Serial.print(ultraValue); Serial.println("mm"); if(timeCounter > 0){ if (ultraValue > 10) digitalWrite(led1 , HIGH); else digitalWrite(led1 , LOW); if (ultraValue > 20) digitalWrite(led2 , HIGH); else digitalWrite(led2 , LOW); if (ultraValue > 30) digitalWrite(led3 , HIGH); else digitalWrite(led3 , LOW); if (ultraValue > 40) digitalWrite(led4 , HIGH); else digitalWrite(led4, LOW); if (ultraValue > 50) digitalWrite(led5, HIGH); else digitalWrite(led5, LOW); if (ultraValue > 60) digitalWrite(led6 , HIGH); else digitalWrite(led6 , LOW); if (ultraValue > 70) digitalWrite(led7 , HIGH); else digitalWrite(led7 , LOW); if (ultraValue > 90) digitalWrite(led8 , HIGH); else digitalWrite(led8 , LOW); if (ultraValue > 100) digitalWrite(led9 , HIGH); else digitalWrite(led9, LOW); if (ultraValue > 110) digitalWrite(led10 , HIGH); else digitalWrite(led10 , LOW); } delay(100); }