Hallo liebes Forum,
ich habe die folgende Aufgabe:
Man soll den Arduino als Batterietester verwenden. Dazu soll eine 1,5Volt Batterie angeschlossen werden. Ist die spannung der Batterie mindestens 1,4V, dann soll eine grüne LED leuchten, bei einer Spannung kleiner als 1,2V eine rote LED und für den Bereich dazwischen eine gelbe LED.
Ich habe nun das Problem, dass immer alle LEDs leuchten. Hat jemand von euch einen Tipp für mich.
int sensor=A0; //analoger Eingang A0 wird mit der Variable sensor ausgelesen
int messwert; //Variable messwert wir definiert
int volt; // Variable volt wird definiert
int ledgruen = 12;
int ledgelb = 11;
int ledrot = 10;
void setup(){
Serial.begin(9600); //Verbindung zum seriellen Monitor
}
void loop(){
float messwert=analogRead(sensor); //wert von A0(sensor) wird in der Variable Messwert gespeichert
float volt=messwert/1024*5; //Variable volt wird berechnet durch: messwert: 1024* volt
Serial.println(volt); //Ausgabe der Variable volt auf den seriellen Monitor
delay(500); //Pause 500ms
if(volt>=1,4){
digitalWrite(ledgruen,HIGH);
}
if (volt<1,4&&volt>=1,2){
digitalWrite(ledgelb,HIGH);
}
if(volt<1,2){
digitalWrite(ledrot,HIGH);
}
}
void loop()
{
float messwert=analogRead(sensor); //wert von A0(sensor) wird in der Variable Messwert gespeichert
float volt=messwert/1024*5; //Variable volt wird berechnet durch: messwert: 1024* volt
Serial.println(volt); //Ausgabe der Variable volt auf den seriellen Monitor
digitalWrite(ledgruen,volt>=1.4);
digitalWrite(ledgelb,volt<1.4&&volt>=1.2);
digitalWrite(ledrot,volt<1.2);
delay(500); //Pause 500ms
}
int sensor=A0; //analoger Eingang A0 wird mit der Variable sensor ausgelesen
int messwert; //Variable messwert wir definiert
int volt; // Variable volt wird definiert
int ledgruen = 12;
int ledgelb = 11;
int ledrot = 10;
void setup(){
pinMode(ledgruen, OUTPUT);
pinMode(ledgelb, OUTPUT);
pinMode(ledrot, OUTPUT);
Serial.begin(9600); //Verbindung zum seriellen Monitor
}
void loop(){
float messwert=analogRead(sensor); //wert von A0(sensor) wird in der Variable Messwert gespeichert
float volt=messwert/1024*5; //Variable volt wird berechnet durch: messwert: 1024* volt
Serial.println(volt); //Ausgabe der Variable volt auf den seriellen Monitor
delay(500); //Pause 500ms
if(volt>=1.4){
digitalWrite(ledgruen,HIGH);
}
else{
digitalWrite(ledgruen,LOW);
}
if (volt<1.4&&volt>=1.2){
digitalWrite(ledgelb,HIGH);
}
else{
digitalWrite(ledgelb,LOW);
}
if(volt<1.2){
digitalWrite(ledrot,HIGH);
} else{
digitalWrite(ledrot,LOW);
}
}