MSP430-Anfängerfrage

#499387
Lesenswert?

Hallo,

ich bin ein absoluter Neuling in Sachen Mikrocontroller und habe 
folgendes Problem: Wenn bei meiner Schaltung kurz der Strom ausfällt 
soll der MSP-weiterlaufen. Also habe ich mir gedacht einfach einen 
großen Kondensator dazwischen und den Low Power Mode einschalten. Jetzt 
passiert folgendes - manchmal funktioniert es und manchmal verschwindet 
er in einen Dämmerungszustand. Ich habe bestimmt nur einen Denkfehler 
dabei und bitte euch um Rat.

Danke
#499464
Lesenswert?

Es soll nur ein kurzfristiger Ausfall - so 2 3 Sekunden - überbrückt 
werden.
Mit Dämmerzustand meine ich, dass ich nicht weis ob der µC irgendetwas 
macht ( Zumindest macht er nicht das was er soll :-) ). Dann muss ich 
die Spannung eine ganze weile wegnehmen und der µC fängt von vorn hat - 
hat aber dann alles vergessen).
Gast #499531
Lesenswert?

Der MSP430F149 hat Probleme beim Starten, wenn die Spannung vorher nicht 
ganz auf 0 Volt abgefallen ist. Er befindet sich dann in einem 
undefinierten Zustand.
Du könntest einen externen Resetbaustein verwenden, der dieses Problem
behebt, oder gleich zu einem moderneren Controller wie MSP430F169 
greifen.
#499552
Lesenswert?

Ich habe das Development Tool von TI und drumherum meinen "Draht-Igel" 
aufgebaut. Als C habe ich 47µ. Diese aber nur direkt für die 
Controller-Spannung. Dann habe ich die normale Betriebsspannung über 
einen Spannungsteiler auf P2.0 und wenn die verschwindet, löst es einen 
Interrupt aus der den LPM3 einschalten soll. Wie gesagt - manchmal 
gehts. Ich habe irgendwie denn Vedacht, wenn die Spannung am C unter 
einen bestimmten Wert sinkt und ich dann wieder die Betriebsspannung 
zuschalte - ist es zu wenig um wieder aufzuwachen und zu viel das ein 
POR durchgeführt wird.
Gast #499597
Lesenswert?

Der MSP430F169 ist pinkompatibel. Ich bin mir nicht sicher, ob der
Brown-Out wirklich 100%ig sicher funktioniert.
Es gibt aber vielleicht noch eine andere Möglichkeit:
Der MSP430F169 hat zusätzlich SVS. Damit kannst du die Spannung 
einstellen, bei der im SVSCTL-Register ein Flag gesetzt wird. Sobald 
dieses gesetzt ist, schickst du den Controller in den Ruhezustand.
Leider löst dieses Flag keinen Interrupt aus. Du mußt also mehrmals in 
der Sekunde eine Routine aufrufen, in der der Status des Flags abgefragt 
wird.
Gast #499647
Lesenswert?

Bevor man den 169 nimmt, sollte man schon eher einen externen Reset 
Baustein nehmen. Dürfte auch um längen billiger sein.

Wie schon gesagt wurde:
- Nach der Stromaufnahme schauen
- Spannung überwachen und schauen wie weit runter sie wirklich geht

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