MSP430 Minutentakt

Gast #5958586
Lesenswert?

Walter L. schrieb:
> Hallo, an die MSP430-Spezialisten.
> Alle Minuten soll ein MSP430G2xx3 (32,768 Quarz) über IRQ aus dem
> LPx-Mod aufwachen.
> Brauche ich externe Hardware, oder ist dies auch über die Timer des
> MSP430 möglich?
> VG Walter

Ich hatte das gleiche Problem. Allerdings verwende ich den internen 
Clock. Ich wollte den Prozessor jede Stunde einen Verbindungs.- und 
Batterietest durchführen lassen. Die restliche Zeit sollte er schlafen 
und warten bis er ür die eigentliche Arbeit über PortPin's aufgeweckt 
wird.

Lösung: ich zähle im Timer Interrupt  ein Zähler herunter. Test, ob der 
Zählerstände null ist.

Wenn ja,  dann werden die Tests durchgeführt und der Zähler wieder 
initaliserter, bei nein wird der Prozessor sofort wieder schlafen 
gelegt. So ist die aufgewendeten Energie sehr gering.

PS: man kann anstelle des Timer auch den Watchdog verwenden.
Gast #5958588
Lesenswert?

Hallo Walter,

Du brauchst externe Hardware, nämlich den Quarz. Sonst ist alles im 
MSP430 drin.

Dann solltest Du dir im Family-Guide das Kapitel über Basic-Clock-System 
und über TimerA genau durchlesen.

- im BCS den AClk auf 32kHz konfigurieren
- TimerA Clocksource auf AClk
- TimerA Upmode
- TimerA Interrupt auf CCR0 aktivieren
- TA0CCR0 = 32767
- Interruptroutine:
  - der Interrupt löst jetzt jede Sekunde aus
  - im Interrupthandler eine static-Variable bis 59 zählen lassen
  - dann aufwecken: LPM0_EXIT

Gruß wv
Gast #5999894
Lesenswert?

Hallo, kurz berichtet.
Das mit dem 32KHz Uhrenquarz fkt. bei mir nicht (Hardware->LAUNCHPAD). 
Wenn ich nur den Finger auf das Gehäuse des Quarzes lege verändert sich 
signifikant die Fequenz bis auf NULL.
Ist bei Euch die Sache auch so empfindlich?
VG Walter

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