MSP430F2410: Neustart bei Daten auf UCA1RXD

Gast #1664724
Lesenswert?

Hallo!

Ich stehe gerade vor einem merkwürdigem Problem.
Egal ob ich den UCSI_A1 (UART-Mode) initialisiere, oder nicht, startet 
die MCU bei jedem Byte auf diesem Port neu.
Die Versorgungsspannung ist stabil. Es besteht kein Kurzschluss zu 
benachbarten Leitungen.
Watchdog ist aus (WDTCTL = WDTPW + WDTHOLD).

Weiß jemand woran das liegen könnte?
Bin für jeden Tipp dankbar!

Gruß
Mika
Gast #1664826
Lesenswert?

Ähm!?
Ich habe keine Interrupts aktiviert, dementsprechend auch keine 
Interrupthandler implementiert.

Welche brauche ich denn!?

BTW:
Ist es normal, dass wenn der MSP Reseted auch die RST/NMI Pin auf Low 
geht!? Dieser Pin ist via Pull-Up an VCC angeschlossen und wenn die CPU 
reseted geht der Pin auf low für ca. 1,3ms auf Low.
Gast #1665732
Lesenswert?

Hallo!

Danke für deine Antwort.
Momentan verwendet wird die "msp430x24x.h", so wie es auch in den 
Code-Beispielen von Ti der Fall ist. Und den Watchdog habe ich doch 
deaktiviert (WDTCTL = WDTPW + WDTHOLD). Oder ist das nicht ausreichend?

Gruß
Mika
#1665989
Lesenswert?

Du kannst ja auch nach so einem Reboot mal in das IFG1 Register gucken, 
ob wirklich das WDTIFG gesetzt ist. Das bleibt nach dem WDT-Reset aktiv, 
bis man es selbst zurück setzt. Damit kann man erkennen, ob der MSP 
normal gestartet oder durch den WDT zurückgesetzt wurde.
Mal noch was anderes: Hast du eventuell große Arrays im RAM angelegt? 
Bei großen Arrays dauert das Initialisieren durch den CStartup Code 
nämlich länger als das WDT Intervall und der MSP startet immer wieder 
durch. Daher muss bei großen RAM-Arrays das Anhalten des WDT vor den 
StartUp Code gelegt werden.
#1666120
Lesenswert?

Jörg S. schrieb:
> Mika schrieb:
>> BTW:
>> Ist es normal, dass wenn der MSP Reseted auch die RST/NMI Pin auf Low
>> geht!? Dieser Pin ist via Pull-Up an VCC angeschlossen und wenn die CPU
>> reseted geht der Pin auf low für ca. 1,3ms auf Low.
> Hört sich nicht normal an.

Hört sich auch nicht normal an, dass da nur ein Widerstand dran ist. Da 
gehört ja eigentlich noch ein Kondensator nach Masse dran.
Gast #1667167
Lesenswert?

Hallo!

Vielen Dank für eure Tipps!
Hab den Fehler gefunden. Und es lag nicht am MSP.
Parallel zu meinem Pull Up am Reset lag noch eine Steuerleitung von eine 
Adapterplatine, was ich komplett übersehen habe. Und die Adapterplatine 
war falsch konfiguriert und hat den MSP resetet. Komisch ist nur, dass 
ich der erste bin, der das festgestellt hat. Aber sei's drum. Problem 
gefunden und beseitigt. Auch wenn es mir jetzt schon peinlich ist diese 
Fehlerursache zu berichten. Hoffe ich hab draus gelernt.

Aus euren Antworten nehme ich auch noch zwei Dinge mit:
* den Kondensator am Reset
und
* die langen Arrays (Watchdog)

Danke euch noch mal! Das Forum hier kann man echt weiterempfehlen! ;)

Viele Grüße
Mika

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