Interrupt doppelt benutzen

Gast #271342
Lesenswert?

Hallo liebe Forennutzer.
Ich würde gerne einen externen Interrupteingang des mega128 benutzen,
um die Betriebsspannung zu überwachen.
Der Interrupt soll auf eine fallende Flanke programmiert werden, dann
wird der Prozessor runtergetaktet und alles Überflüssige abgeschaltet
um die Backup-Batterie zu schonen.
Frage:
Kann ich in der Interrupt-Routine den Eingang auf eine steigende Flanke
umprogrammieren, so dass ich auch bei Rückkehr der versorgungsspannung
einen Interrupt auslösen kann?
Die Aufbereitung, welche Flanke es nun war, muss dann natürlich in der
I-Routine erfolgen.
Gast #271344
Lesenswert?

Ich würde auf jede Flanke reagieren (fallend und steigend) und in der
ISR den Portpin auslesen (wenn das nicht gehen sollte was ich nicht
glaubekönnte mann eien anderen für diesen zweck nutzen)um die
Spannungszustand zu bestimmen. Das ist in jedem Falle fehlerfrei
programmmierbar. Das Eergebnis würde ich direkt in ein Flag übertragen
welches im Hauptprogramm genutzt wird, die Entscheidung zu treffen,
welche Hardware mit Strom versorgt wird und welche Prozesse folglich
ausgeführt werden und welche übersprungen werden.

PS. Das nichtversorgen von Sensoren(analog wie digitaleingänge
betreffend) kann fehlerhafte Interupts und Messungen bringen welche
folglich eleminiert werden.

MFG Winne
#271345
Lesenswert?

Ich arbeite zwar nicht mit dem Mega128, aber bei vielen anderen AVRs
kann man im "Stromspar-"Sleepmode keine flankengetriggerten externen
Interrupt auslösen, da dazu der Takt gebraucht wird, den man ja im
Stromsparmode abschalten möchte.
Es geht vermutlich nur der Level-Interrupt.

Alternativ kann man den Watchdog benutzen (längste mögliche Zeit) und
in der Watchdog-ISR einfach den Portpin mit der Stromversorgung prüfen
und bei Nichtvorhandensein ein Flag setzen, worauf das Hauptprogramm
den Controller sofort wieder mit aktiviertem Watchdog "ins Koma"
schickt...

Wie gesagt, das sind Möglichkeiten auf anderen Megas, welche
Möglichkeiten speziell der Mega128 bietet (und wie der Stromspar-Mode
beim 128er heißt), müsst ihr schon selbst im Datenblatt recherchieren.

...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren