Forum: Mikrocontroller und Digitale Elektronik LPC17xx: RTC => Counter Increment Interrupt identifizieren


von Tobias (Gast)


Lesenswert?

Hallo,

irgendwie habe ich gerade ein Brett vor dem Kopf: Ich will jede Minute 
einen Interrupt haben, um einen kleinen Test zu machen. Dazu nehme ich 
IMMIN. Klar soweit.
Jede Stunde will ich dann statt dem kleinen einen großen Test machen. 
Dazu benutze ich IMHOUR. Auch klar soweit. Nun finde ich aber kein 
Flagregister das mir anzeigt, welcher der beiden Interrupts ausgelöst 
hat (zumal bei der Stunde ja auch beide ausgelöst werden). Ich kann im 
ILR nur schauen, ob der Interrupt durch einen Counterincrement (Sekunde 
oder Minute oder Stunde oder ...) oder einen Alarm ausgelöst wurde. Klar 
kann man das irgendwie durch die Hintertür mit Statusvariablen in der 
ISR hinkriegen (z.B. IMMIN bis 59 zählen lassen). Aber der LPC17xx hat 
so viele Register, da kann doch so etwas einfaches und absolut 
sinnvolles nicht fehlen? Der normale Weg ist doch bei einem 
"Sammelinterrupt", im Flagregister den Verursacher zu identifizieren und 
entsprechend zu verzweigen? Wie gesagt, irgendwie bin ich wohl gerade 
falsch davor.

von Stefan (Gast)


Lesenswert?

Hallo,

Wenn du nur den Minuten- und Stunden-Interrupt enabled hast, dann
kannst du doch leicht prüfen ob das min-Register auf Null ist, wenn ja 
war es ein Stunden interrupt.
Wenn nicht dann sec-Register auf Null testen, wenn ja war es ein 
Minuten-Interrupt und wenn nein ein ERROR.

Gruss Stefan

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.