MSP430 RTC Alarm Interrupt

Gast #1112692
Lesenswert?

Hallo,
ich benutze einen MSP430F5418 und möchte mit dessen RTC einen Alarm zu 
jeder Stunde z.B. 3:40, 4:40, 5:40 usw. auslösen. Leider springt der 
controller nicht in die zuständige Interruptroutine. Das AE Bit im 
RTCAMIN Register und das RTCAIE Bit im RTCCTL0 Register sind gesetzt. 
Komischerweise wird nicht einmal das RTCAIFG Flag beim Minutenwechsel 
von der 39. auf die 40. Minute gesetzt. Ich hab das ganze auch schon mit 
einem Alarm zu bestimmten Stunden ausgetestet. Mit dem selben Ergebnis.
Ich benutze bereits den aktuellen Workaround aus dem Errata Sheet zu dem 
Problem mit der RTC.
Ist jemandem dieses ungewöhnliche Verhalten auch schon einmal 
aufgefallen bzw. hat jemand bereits eine Lösung für das Problem?

Viele Grüße
Gast #1115616
Lesenswert?

Hallo,
im Anhang der Code zum Ausprobieren.
Die extern definierten Funktionen stammen aus der Datei 
"RTCASMFunctions_IAR.s43", die im Workaround für die RTC der MSP430F543x 
und MSP430F541x Prozessoren enthalten ist. Hier der Link dazu: 
http://www.ti.com/lit/zip/slac166

Der Alarm sollte zu jeder 5. Minute also z.B. 4:05, 5:05, 6:05 usw. 
ausgelöst werden. In der entsprechenden Interruptroutine wird der Pin 
6.1 getoggelt.

Btw: In der aktuellen Fassung des User Guides für die MSP430x5xx Familie 
fehlt das Kapitel über die RTC komplett. Absichtlich? Hier der Link: 
http://www.ti.com/litv/pdf/slau208a

Viele Grüße
Angehängte Dateien:
Gast #1118602
Lesenswert?

Alles klar. Das Problem hat sich mit der neuen Version des User Guides 
(http://www.ti.com/litv/pdf/slau208b) gelöst. Das Kapitel über die RTC 
ist darin wieder enthalten.
Der Fehler lag darin, das ich die Definition mit High und Low Byte genau 
anders herum gemacht habe als hier:
RTCAMIN     RTCAMINHR_L
RTCAHOUR    RTCAMINHR_H
Aus dem alten User Guide und den Header Files ging das nicht hervor, wo 
Minuten und wo Stunden stehen sollen.

Viele Grüße

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