Hallo,
ich sehe jetzt auf den ersten Blick keinen Fehler. Außer das der Schutzdiode am Analogeingang im Controller ordentlich auf die Füße getreten wird, wenn man mal die Batterie falsch rum dranhält.
Den Sketch habe ich gerade mal etwas besser eingerückt und auf einen Uno geladen. Statt LEDs habe ich eine zusätzliche Ausgabe über Serial eingebaut:
Code:
const int newLED = 2;
const int okLED = 4;
const int oldLED = 6;
int analogValue = 0;
float voltage = 0;
int ledDelay = 2000;
void setup() {
// put your setup code here, to run once:
pinMode (newLED, OUTPUT);
pinMode (okLED, OUTPUT);
pinMode (oldLED, OUTPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
analogValue = analogRead(0);
voltage = 0.0048*analogValue;
if (voltage >=1.5)
{
Serial.write("New\r\n");
digitalWrite(newLED, HIGH);
delay(ledDelay);
digitalWrite(newLED, LOW);
}
else if (voltage < 1.5 && voltage > 1.4)
{
Serial.write("Ok\r\n");
digitalWrite(okLED, HIGH);
delay(ledDelay);
digitalWrite(okLED, LOW);
}
else if (voltage <=1.4)
{
Serial.write("Old\r\n");
digitalWrite(oldLED, HIGH);
delay(ledDelay);
digitalWrite(oldLED, LOW);
}
}
Er gibt immer nur "New" aus, wenn nichts angeschlossen ist. Das hatte ich auch so erwartet. Dass die LEDs nacheinander angehen, kann ich mir dabei eigentlich nicht vorstellen.
Lesezeichen