Hallo zusammen,
ich habe eine Abstandsmessung. Je nach Entfernung soll eine der drei LEDs aufleuchten. Allerdings leuchten diese sehr dunkel. Der Vorwiderstand sollte passen, da die LEDs, wenn sie außerhalb der if-Schleife angeschaltet werden deutlich heller leuchten. Kann mir jemand sagen woran das liegt?
Vielen Dank
const int pingPin = 4;
const int LEDrichtig = 13;
const int LEDnah = 11;
const int LEDfern = 12;
void setup() {
Serial.begin(9600);
}
void loop()
long duration, cm;
pinMode(pingPin, OUTPUT);
digitalWrite(pingPin, LOW);
delayMicroseconds(2);
digitalWrite(pingPin, HIGH);
delayMicroseconds(5);
digitalWrite(pingPin, LOW);
pinMode(pingPin, INPUT);
duration = pulseIn(pingPin, HIGH);
cm = microsecondsToCentimeters(duration);
Serial.print(cm);
Serial.print("cm");
Serial.println();
if (cm > 50)
{
digitalWrite(LEDrichtig, LOW);
digitalWrite(LEDnah, LOW);
digitalWrite(LEDfern, HIGH);
}
else if (cm<20)
{
digitalWrite(LEDrichtig, LOW);
digitalWrite(LEDnah, HIGH);
digitalWrite(LEDfern, LOW);
}
else
{
digitalWrite(LEDrichtig, HIGH);
digitalWrite(LEDnah, LOW);
digitalWrite(LEDfern, LOW);
}
delay(500);
}
long microsecondsToCentimeters(long microseconds)
{
return microseconds / 29 / 2;
}