#define echo 2 #define trig 3 #define LED8 11 #define LED7 10 #define LED6 9 #define LED5 8 #define LED4 7 #define LED3 6 #define LED2 5 #define LED1 4 float duration; float distance; void setup() { pinMode(trig, OUTPUT); pinMode(echo, INPUT); for (int i = 4; i <= 11; i++) pinMode(i, OUTPUT); Serial.begin(9600); } void loop() { time_Measurement(); distance = duration * (0.0343) / 2; Serial.println(distance); led_Check(); delay(10); for (int i = LED1; i <= LED8; i++) { digitalWrite(i, LOW); } } void time_Measurement() { digitalWrite(trig, LOW); delayMicroseconds(2); digitalWrite(trig, HIGH); delayMicroseconds(10); digitalWrite(trig, LOW); duration = pulseIn(echo, HIGH); } void led_Check() { if (11 < distance && distance <= 15) digitalWrite(LED8, HIGH); else if (10 < distance && distance <= 11) digitalWrite(LED7, HIGH); else if (9 < distance && distance <= 10) digitalWrite(LED6, HIGH); else if (8 < distance && distance <= 9) digitalWrite(LED5, HIGH); else if (7 < distance && distance <= 8) digitalWrite(LED4, HIGH); else if (6 < distance && distance <= 7) digitalWrite(LED3, HIGH); else if (5 < distance && distance <= 6) digitalWrite(LED2, HIGH); else if (1 < distance && distance <= 5) digitalWrite(LED1, HIGH); else { for (int i = LED1; i <= LED8; i++) digitalWrite(i, LOW); } }
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter