Reset durch Watchdog Kategorie: Programmierung (von Hansi - 14.10.2007 15:31) | ||
| ||
Hallo Zusammen, ich suche seit einer Ewigkeit einen Fehler in meinem Programm. Der Watchdog setzt alle ca. 26 Tage mein Programm zurück. Mit einer 2.Unit und einem einfachen Testprogramm versuche ich den Fehler zu finden. Ob sich jemand erbarmt einem Ratlosen zu helfen? �ber die Suche Funktion habe ich nichts gefunden was mir hilft. Aktive Module: vmcodes, constant, system, ports, i2c, pcf8583, pcflcd Alle sind nach Andreès Seite Module und Funktionen auf dem neuesten Stand. Den Watchdog habe ich vorher in meiner Wintergarten Steuerung eingesetzt. Hiervon sind noch Werte gespeichert nach dem Muster: pcf8583.writeint(100,jal.TempAirInDoorOpen); pcf8583.writeint(102,jal.TempAirOutDoorOpen); Hier der Code des Testprogramms: byte ResetMarker; // Anzahl der ausgeführten Reset int L2; int watchdog; // Rückgabe Wert init Watchdog //************************************* thread test1 //************************************* { L2=L2+1; pcflcd.goto(1,0);pcflcd.zahl(L2);sleep 200; } //************************************* thread main //************************************* WatchDog=pcf8583.init(1,1,1,40,1); pcflcd.setpcf(0);pcflcd.init();pcflcd.clear(); if WatchDog > 0 { if WatchDog==128 // (reset ausgeführt) { pcflcd.goto(1,0);pcflcd.print("Reset durch Watchdog"); ResetMarker=ResetMarker+1;pcf8583.writebyte(19,ResetMarker); pcflcd.goto(2,0);pcflcd.print("Anzahl");pcflcd.zahl3(ResetMarker); pcflcd.goto(3,0);pcflcd.zahl2(system.hour());pcflcd.print(":"); pcflcd.zahl2(system.minute());pcflcd.print(":"); pcflcd.zahl2(system.second()); pcflcd.goto(4,0);pcflcd.zahl2(system.day());pcflcd.print(":"); pcflcd.zahl2(system.month());halt; } if WatchDog==255 { pcflcd.goto(2,0);pcflcd.print("Watchdog ok ");sleep 1000; } } pcflcd.goto(1,0);pcflcd.print("Start=");pcflcd.zahl2(system.day()); pcflcd.print(":");pcflcd.zahl2(system.month()); pcflcd.goto(2,0);pcflcd.zahl2(system.hour());pcflcd.print(":"); pcflcd.zahl2(system.minute());pcflcd.print(":"); pcflcd.zahl2(system.second()); sleep 1000; run test1; halt; } | ||
Antwort schreiben Antworten: Re: Reset durch Watchdog (von Jörg C. - 15.10.2007 22:26) Re: Reset durch Watchdog (von Hansi - 16.10.2007 7:37) Re: Reset durch Watchdog (von Jörg C. - 15.10.2007 22:10) Re: Reset durch Watchdog (von André H. - 17.10.2007 8:18) Re: Reset durch Watchdog (von Jörg C. - 17.10.2007 21:41) |