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
Der Ansatz mit dem Kondensator ist schon ganz gut! Wie lange fällt denn der Strom aus? Was meinst Du mit Dämmerungszustand?
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).
halloe, ich hab zuerst mal gesagt keine Ahnung von der genannten Cpu. Aber für mich hört sich das so an wie wenn man vergessen hätte den Brown Out Detector einzuschalten. Falls das nicht gemacht wurde: -> ins Datenblatt guggen nach Brown Out. HTH danie
Hallo Daniel, ich gerade mal das Datenblatt durchgeschaut-soweit ich das erkenne gibt es das bei meinem µC (MSP430F149) leider nicht. Habe nur ein Power On Reset gefunden und das geht irgendwie automatisch.
Richtig, der F149 hat keine brown-out Erkennung! Was benutzt Du denn für ein µC-Board? Wieviel Strom braucht es und wie groß hast Du den Kondensator gewählt?
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.
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.
@Martin, könnte ich Deiner Meinung nach den 149 einfach mit dem 169 ersetzen und diese Probleme sind gelöst? Gibt es dabei irgendetwas zu beachten oder ist der 169 "abwärtskompatibel"?
Der Brown-Out-Detector funktioniert bei den MSPs nur mäßig. Lieber einen externen Baustein nehmen.
Hatt von Euch schon jemand Erfahrungen mit externen Resetbausteinen und könnt Ihr mir einen empfehlen?
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.
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
Für mich hört sich das an als wenn am Ko noch mehr hängt... Vcc->Diode->Ko->µC
Berti wrote:
> Vcc->Diode->Ko->µC
genau so hab ich zusammengebastelt, ich bin jetzt erst mal auf der Suche
nach so einem externen Reset-Baustein. Gibst da welche die geeignet sind
für den MSP?
Überleg dir erstmal ab welchem Pegel du Reset haben willst. Danach kann man auf die Suche gehen.
...und achte ggf. auf die Stromaufnahme, sonst schluckt Der Überwachungsbaustein ein Mehrfaches des Controllers (stört nicht so sehr bei Betrieb an einem Netzteil, aber sehr bei Batteriebetrieb).
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.