Gast
#987326
Ich habe folgendes Problem mit meinen MSP430F2132: Meine Anwendung muss sehr Energieparend sein, deshalb möchte ich den LPM4 einnehmen. Da ich nicht weiss wie lange das System schläft und wie sich die Umgebung ändert muss ich den Systemclock mit dem 32kHz Quarz nach jedem Aufwachen kalibrieren. (Die Forderungen an den Systemtakt sind sehr strikt, deshalb kann ich die vorgegebenen Calib-Register im Segment A nicht verwenden.) Das Kalibrieren (Routine aus den TI-Beispielen) funktioniert problemlos, solange der Quarz nicht ausgeschaltet wird, also in LPM0..3 . Sobald der Controller jedoch vom LPM4 aufwacht (durch einen externen Int) fängt sich der ACLK nicht mehr und produziert nur instabile Pulse von 100Hz bis 10kHz. Mit dem Oszi direkt am Quarz gemessen, dauert es einige 100ms bis er anläuft. Bei der Ausgabe des ACLK auf den entsprechenden Port-Pin ist jeddoch nur der oben beschriebene unregelmässsige Takt zu sehn. Das ändert sich auch längerer Wartezeit nicht. In einer App-Note stand: "There is an important difference in the-start up behavior of the 32-kHz oscillator between a reset and a return from LPM4. The frequency integrator is not reset when returning from LPM4, so the DCO remains set at the same frequency it was when the system went into LPM4." Frage: Wie kann ich den 'frequency integrator' resetten ? Muss ich den Frequenzgenerator irgendwie neu initialisieren? Gibt es eine andere Lösung für das Problem?