const int trig = A0, echo = A1;
int time, distance; double speed = 0.0343;
void setup() {
pinMode(echo, INPUT);
pinMode(trig, OUTPUT);
for(int x = 4; x <= 9; x++){pinMode(x, OUTPUT);}
Serial.begin(9600);
}
void loop() {
distance = cal_distance(); Serial.println(distance);
int ON = map(distance, 2, 400, 9, 4);
for(int x = 9; x >= ON; x--){digitalWrite(x, HIGH);}
for(int x = 4; x < ON; x++) {digitalWrite(x, LOW);}
}
int cal_distance(){
digitalWrite(trig, LOW); delayMicroseconds(2);
digitalWrite(trig, HIGH); delayMicroseconds(10);
digitalWrite(trig, LOW);
time = pulseIn(echo, HIGH);
distance = (time * speed)/2;
distance = constrain(distance, 2, 400);
return distance;
}