fredyxx
08.06.2016, 22:22
Hallo,
bei dem folgenden Progrämmchen würde ich erwarten, dass das UP alle 5 s angesprungen wird und die Konsole dann "Zeitueberlauf" schreibt.
#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
Statt dessen finde ich da :
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
bei dem folgenden Progrämmchen würde ich erwarten, dass das UP alle 5 s angesprungen wird und die Konsole dann "Zeitueberlauf" schreibt.
#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
Statt dessen finde ich da :
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