Naja, durch was wird die Pumpe genau angesteuert?
Naja, durch was wird die Pumpe genau angesteuert?
Kultuverein Metal Resurrection, für mehr Bands und Konzerte in Österreich (:
Der Watchdog timer ist im Prinzip schon richtig um einen hängenden µC wiederzubeleben - nur sollte das Programm im Prinzip auch ohne richtig laufen. Der
Watchdog ist mehr für den Fall das eventuell doch mal Fehler auftreten, die man bei der Fehlersuche nicht gefunden hat, weil sie so selten sind. Fehler die nach 5-10 minuten auftreten sollte man besser an der Ursache beheben. Es ist eine Frage des Programms ob der µC die Einstellungen vergisst, oder weiter lesen kann. Es fordert allerdings schon etwas mehr Aufwand als nur den WD zu aktivieren. Man kann testen ob der Reset vom WD ausgelöst wurde, und für den Fall die Variablen nicht neu initialisieren - dem C Compiler muss man dazu ggf. sagen das er die Variablen nicht automatisch alle 0 initialisieren soll.
Viel langsamer machen hilft nur begrenzt gegen Störungen, denn es verhindert nicht, das die Leitungen zusätzliche Pulse einfangen. Für einen richtigen I2C bus helfen sonst niederohmigere Pullups und ggf. auch zusätzliche RC Glieder und eventuell ein Kondensator gegen GND.
Hallo,
in den letzten Tagen hatte ich wenig Zeit, ich hab bis jetzt einfach mal bei allen I2C Befehlen (senden, empfangen, und initialisieren) statt der while Schleife ein _delay_ms(10) eingefügt, ohne irgendwas mit dem Oszi zu messen.
Es funktioniert bis jetzt sehr gut, die Steuerung läuft seit zwei Tagen durchgehend.
Sogar ohne Watchdog, aber den werde ich auch noch einbauen, vielleicht nächstes Wochenende...
Vielen Dank für die Hilfe!
lg
Christoph
Lesezeichen