Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Reset und Start per Software !! Kategorie: C-Control I V1.2/2.0 (von Henrik, Homepage - 26.12.2004 14:16)
 Als Antwort auf Reset und Start per Software !! von Roland - 26.12.2004 1:29
Hallo,

ich werde meiner Absicht untreu, hier nichts mehr zu posten, aber irgendwie muss man
ja verhindern, daß Fragesteller das Forum dümmer verlassen, als sie es betreten haben.

> [....]
> Sollstand:
> 1. Wiederanlauf sollte Softwaremäßig ausführbar sein ohne die Netzspannung unterbrechen zu müssen
> 2. Reset sollte auch Softwaremäßig erfolgen können um danach zb. eine Programmänderung  
>     durchführen zu können.
>     Immer das Gehäuse aufzuschrauben zu müssen wirkt eigentlich etwas unprofessionell.
>     Und auf eine Resettaste wollte ich eigentlich bisweilen auch verzichten.
>     Habe zu diesen Punkten zwar schon einiges probiert, bin jetzt aber mit meinem Latein am Ende.


Deine Idee ist richtig und in einigen Fällen auch unabdingbar für den ordentlichen Aufbau
eines Steuerungssystemes. Es gibt viele Möglichkeiten ein µC-System "außer Tritt" zu bringen (von
Spikes auf der Leitung bis hin zur Fehlbedienung) und dann braucht man einen automatischen Reset
und einen erneuten automatischen Systemstart.

Das nur für alle Dumpfbacken, die weder eine Lösung noch den Durchblick haben aber trotzdem
dummes Zeug schreiben müssen.

Gerade mit der V2 ist die Lösung leider nicht ganz ohne Hardware hinzubekommen.
Soweit ich sehen kann, läßt sich der an sich vorhande Watchdog nicht mehr ansprechen
(dazu bräuchte man eine Assemblerroutine und eigene Assemblerroutinen gibt/darf es nicht
mehr geben).

Mir fällt zu Lösung auf Anhieb nur ein, an einer Stelle des Programmes sie bei ordnungsgemäßem
arbeiten immer durchlaufen werden muß, einen Befehl/eine Funktion unterzubringen, die z.B.
einen Impuls auf einen Port ausgibt. Dieser Impuls kann dann eine "Totmannschaltung" am Leben
erhalten oder nach einer Zeit x des Ausbleibens einen Reset auslösen. Hardwaremäßig käme
z,B, ein retriggerbares Monoflop oder ein Timer (NE555 bzw. Derivate) in Frage. In den Tiefen
des Archivs gibt es nach meiner Erinnerung sogar eine Bauanleitung für letzteres.

OK... Nun haben wir unser Reset hinbekommen und müssen das Programm nur noch neu starten.
Das ist bei Atmel & Co kein Thema, da zeigen die Resetvektoren von Hause aus auf den Programm-
anfang, können aber auch beliebig gesetzt werden. Nicht so bei der C-Control. Die landet im
Programmiermodus und hängt da fest.

Also muss auch hier Hardware her. Am einfachsten wäre es, mit dem Resetimpuls unseres
Harware Watchdogs ein weiteres Monoflop zu triggern, das an eine Relaisschaltstufe. einen
verzögerten Impuls abgibt, der die Stromzufuhr zur CPU ...ääm µC... kurz unterbricht.
Danach greift dann der Autostart Mechanismus wieder.

Das ist natürlich noch keine fertige Lösung. Es soll nur zeigen, wie man das Problem
überhaupt angehen kann.

Um ehrlich zu sein: Wenn ich eine Failsafesteuerung dieser Art brauche, nehme ich
einfach einen Atmel.

Grüße
Henrik

Meine Homepage: http://www.henrik-reimers.de/control/

 Antwort schreiben

Bisherige Antworten: