Hallo,
bei dem folgenden Progrämmchen würde ich erwarten, dass das UP alle 5 s angesprungen wird und die Konsole dann "Zeitueberlauf" schreibt.
Statt dessen finde ich da :Code:#include <SimpleTimer.h> // einbinden der Library
SimpleTimer timer1; // Benennung der Timer
int zeitId;
boolean Zeitueberlauf = false;
void setup() {
Serial.begin (250000); // diese Buadrate muss auch in der Konsole (Serieller Monitor) eingestellt sein
while (!Serial);
}
void loop() {
Serial.print ("zeitId = ");
Serial.println (zeitId);
if (Zeitueberlauf = true) {
timer1.disable(zeitId); // Timer1 löschen
delay (1000);
}
zeitId = timer1.setInterval(5000, Zeitablauf1); // Endzeit und UP, wenn Endzeit erreicht ist
timer1.run();
}
//**************************** UP Zeitablauf1 **************************************
void Zeitablauf1() { // wird ausgeführt, wenn SimpleTimer timer 1 abgelaufen ist
Zeitueberlauf = true; //
Serial.println (" Zeitueberlauf ");
} // *********** ENDE UP Zeitablauf1
zeitId = 0
zeitId = 0
zeitId = 1
zeitId = 2
zeitId = 3
zeitId = 4
zeitId = 5
zeitId = 6
zeitId = 7
zeitId = 8
zeitId = 9
zeitId = -1
zeitId = -1
und Zeitueberlauf kommt überhaupt nicht.
Was bedeuten die Zahlen hinter "zeitId" und wieso wird die plötzlich negativ und bleibt auch so?
Gruß
fredyxx