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







Zitieren

Lesezeichen