Forum: Mikrocontroller und Digitale Elektronik MC-Netzwerk - gemeinsame Rest-Leitung


von Josef (Gast)


Lesenswert?

Hallo,
ich habe mehrere Mikrocontroller über ein I2C Netzwerk verbunden (1 
Master, mehrere Slaves).

Diese haben eine gemeinsame Resetleitung.

Gibt es eine (einfache) Lösung, dass ich mit einem Mikrocontroller 
(Master oder Slave) die Resetleitung auf GND ziehe und damit bei allen 
(auch den eigenen) Mikrocontroller einen Reset auslöse?

Danke für eure Hilfe,

Grüße Josef

von Peter D. (peda)


Lesenswert?

Josef schrieb:
> (auch den eigenen) Mikrocontroller einen Reset auslöse?

Schon ins Datenblatt des unbekannten MC geschaut?
Bei manchen kann der Resetpin auch Resetausgang (open-drain) sein.

Ansonsten kann man einen externen Reset-IC (MAX690) benutzen und den 
Watchdog vergessen zu triggern.

von Josef (Gast)


Lesenswert?

Hallo,

Danke für deine Antwort.

Meine Mikrocontroller sind ATMEGA328P.

Soweit ich glaube, selber herausgefunden zu haben, kann ich den PIN C6 
entweder als Reset-Pin oder als normalen I/O Pin verwenden. (je nach 
Einstellung des Fuses RSTDISBL.)

Daher kann ich mit den Mikrocontroller den Reset Pin nicht direkt auf 
GND ziehen, sondern nur mit einen anderen Port Pin (extra Hardware 
Verbindung).

Wenn ich einen externen Reset IC verwende, benötige ich eine 
zusätzliches Signal im Netzwerk (Watchdog-Signal), welches ich vermeiden 
möchte.

Daher eben meine ursprüngliche Frage, ob es eine Alternative gibt.

Grüße,
Josef

von Helge A. (besupreme)


Lesenswert?

Nö. Der Watchdog-IC wird nur vom Master bedient, das reicht. Der Ausgang 
von dem Stein gelt an alle Reset-Eingänge.

Oder du baust das zu Fuß mit einem bzw. zwei Monoflops.

von Stefan F. (Gast)


Lesenswert?

RSTDISBL ist eine schlechte Idee, denn danach funktioniert der ISP Port 
nicht mehr.

Du kannst am Master jeden beliebigen I/O Pin als Ausgang verwenden und 
damit die Reset Eingänge der Slaves ansteuern.

von Josef (Gast)


Lesenswert?

Hallo Stefan,

danke,

das mit dem ISP Port habe ich (leider) bereits herausgefunden :-(

Grüße,
Josef

von ... (Gast)


Lesenswert?

Einfach aus allen Controllern den Watchdog aktivieren und bei 
I2C-Aktivitaet zuruecksetzen (Auf jedem Controller natuerlich.)

Dann kannst Du auch SCL als (externes) low-aktives Reset benutzen.

von Georg (Gast)


Lesenswert?

... schrieb:
> Einfach aus allen Controllern den Watchdog aktivieren

Wieso eigentlich? Der TO wollte doch nur einen Reset. Bei den üblichen 
ICs z.B. von Maxim kann man den Watchdog benutzen, muss aber nicht. 
Ausserdem haben sie einen eigenen Reseteingang, an dem man normalerweise 
den zentralen Resetknopf anschliessen kann, den kann man natürlich auch 
mit einem Pin eines Controllers ansteuern (auch parallel zu einem 
Taster). Was einfacheres als einen 8poligen Chip wird man für die 
Aufgabe kaum finden.

Ein Watchdog hat natürlich auch seinen Sinn, aber gefragt war das nicht.

Georg

von Helge A. (besupreme)


Lesenswert?

Georg schrieb:
> Wieso eigentlich?

Spart eine Leitung. Find ich eine gute Idee.

von Josef (Gast)


Lesenswert?

Hallo,

danke für eure Antworten:

Soweit ich aus den Antworten herausgelesen habe und die Angelegenheit 
überdacht habe, empfiehlt sich folgendes:


-Der Master überprüft das ordnungsgemäße Arbeiten der Slave MCs durch 
regelmäßiges Abfragen der Slaves.


Auslösen der Reset Funktion:

-Reset Funktion über Watchdog auf jeden MC
Der Watchdog wird bei I2C Aktivität zurückgesetzt.
Wenn etwas nicht "passt", schickt, der Master keine neuen I2C 
Nachrichten mehr und jeder Slave schickt sich selbst in des Reset

-der Master MC setzt die Reset-Leitung mit einen freien Pin auf GND. 
(Benötigt zusätzlich MC-Pin, Netzwerk-Leitung, MC-Verdrahtung,)
VT: kann einfach manuell ausgelöst werden

-Verwendung eines externes Reset-IC (z.B (MAX690)
((Benötigt zusätzlich MC-Pin, zusätzlicher IC, Netzwerk-Leitung, 
MC-Verdrahtung)

von Klaus (Gast)


Lesenswert?

Mit welcher Situation soll denn umgegangen werden? Master abgestürzt, 
Slave aber nicht? Oder Slave abgestürzt, Master aber nicht? Beide 
abgestürzt? Die Strategie ist jedesmal eine andere.

MfG Klaus

von Josef (Gast)


Lesenswert?

Prinzipiell sollten natürlich alle 3 Varianten gemeistert werden können.

Für meinen Anwendungsfall sollte die Variante "Reset mittels Watchdog 
auf jeden MC" passen:

-Nach dem  eigenen Reset (Neustart) schickt der Master alle Slaves in 
den Reset
-Master schickt bei Abstürzen der Slaves nur die Slaves in Reset
-Beim Absturz des Masters wird nur der Master in den Reset geschickt, 
die Slaves unmittelbar nach dem Restart.(siehe Punkt 1)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.