Forum: Mikrocontroller und Digitale Elektronik Aufwecken mit Low-Level


von Philipp H. (drame)


Angehängte Dateien:

Lesenswert?

Hallo

Ich habe eine Frage bezüglich dem Aufwecken aus dem Power-Down Mode 
mittels Externen Interrupts. Ich benutze als uP einen ATMega8.
Soweit ich aus dem Datenblatt schlau geworden bin, muss der Interrupt 
Pin auf LowLevel interrupt gestellt werden und der Pin mindestens 2 
WatchdogOszillator Cyclen auf Low gehalten werden. Laut Datenblatt 
entspricht das ungefähr eines Dauer von 2us.

Aufwachen soll der uP durch den Interrupt der RTC (Datenblatt siehe 
Anhang). Ich hab nur keinen Plan wie lang die RTC den Pin bei einem 
Interrupt runter zieht bzw ob das reicht den uP aufzuwecken.
Kann mir da jemand weiter helfen? Hab selber aus dem Datenblatt nicht 
wirklich viel rauslesen können.

mfg Phil

von johnny.m (Gast)


Lesenswert?

Da der RTC-Chip alle Aktualisierungen im Sekundentakt durchführt, sollte 
nach meinem Verständnis an dem betreffenden Pin auch mindestens eine 
Sekunde lang der entsprechende Pegel anliegen.

von Philipp H. (drame)


Lesenswert?

Hmmm also ich wär mir da nicht so sicher...
beim TWI läuft ja alles wesentlich schneller ab.
gibt es noch andre ansichten über die dauer des interrupts?

bitte um viele antworten

mfg phil

von Björn W. (bwieck)


Lesenswert?

Philipp Handle wrote:
> Hmmm also ich wär mir da nicht so sicher...
> beim TWI läuft ja alles wesentlich schneller ab.
> gibt es noch andre ansichten über die dauer des interrupts?

Ansonsten kannst Du die Low-Zeit etwas "verlängern" wenn du einen 
Widerstand und Kondensator einfügst:



                    100R
                     _
    INT RTC --------|___|----o--------------o  INT AVR
                             |
                            ---
                            --- 220nF
                             |
                             |
                             |
                             |

                            GND
(created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de)


Grüße
Björn

von johnny.m (Gast)


Lesenswert?

Hab mal weitergelesen: Anscheinend werden alle Register im Sekundentakt 
überprüft und aktualisiert. Wenn das betreffende Interrupt-Flag gesetzt 
wird, bleibt es anscheinend gesetzt (und damit der betreffende 
Interrupt-Ausgang auf LOW), bis es durch die Anwendung (also über den 
I²C-Bus) gelöscht wird. Es liegt also anscheinend in den Händen des 
Controllers, das Flag zu löschen und damit den Interrupt-Ausgang wieder 
auf HIGH zu bringen.

von Philipp H. (drame)


Lesenswert?

@ johnny.m

stimmt. steht eigentlich so da...hab ich irgendwie drüber gelesen...

danke für die mühe

mfg phil

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.