Forum: Mikrocontroller und Digitale Elektronik MSP430: UART geht nur bei eingestecktem Programmiergerät


von noips (Gast)


Lesenswert?

Guten Morgen,

ich arbeite mit einem MSP430F147 und einem Flash Emulation Tool (am 
Parallel-Port) als Programmiergerät. Die Kommunikation mit PC 
(Hyperterminal) per UART geht einwandfrei, aber nur wenn der Stecker des 
Programmiergerätes eingesteckt ist. Sobald ich den Stecker abstecke, 
geht UART nicht mehr. Das Hauptprogramm ( LED-Blinken ) läuft sowohl mit 
als auch ohne Stecker problemlos.

Vielleicht kennt jemand dieses Problem und kann mir sagen was ich falsch 
mache?

Danke schon mal!

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dein JTAG-Adapter bedient die Reset-Leitung. Könnte es sein, daß die von 
Dir gänzlich unbeschaltet ist und der µC recht oft einen Reset 
durchführt, und das dann so aussieht, als ob Dein Programm liefe?

Die UART der 'F1xx-Reihe hat keine Abhängigkeit vom JTAG-Interface, 
jedenfalls keine, die ich kenne.

von suchender (Gast)


Lesenswert?

Ev. wird durch den UART-Anschluss eine zusätzliche Spannung in die 
Schaltung eingekoppelt oder Deine Betriebsspannung ist ohne 
angeschlossenenes Programmiergerät zu niedrig.

von T. H. (pumpkin) Benutzerseite


Lesenswert?

Wenn JTAG dran ist dann gebietet es über die Clocks. Hast du die 
gewählte Clock für das UART Modul kontrolliert? Hast du einen Reset 
ausgeführt nachdem du den JTAG Adapter gezogen hast? Hast du in die 
Errata geguckt (meine mich erinnern zu können, dass ich im Zusammenhang 
JTAG/UART bei den MSP's mal was gelesen habe)?

von Gunb (Gast)


Lesenswert?

Moin,

schau mal nach, ob dein Programmiergerät die /RST-Leitung bedient. Wenn 
datt Dingen ab iss, dann könnte der floaten. Zieh ihn dann mal per VCC 
per Draht auf HIGH und checke, was dann geht.

Gruß uss demm Kölner Raum,
Gunb

von Volker S. (volkerschulz)


Lesenswert?

noips schrieb:
> Die Kommunikation mit PC
> (Hyperterminal) per UART geht einwandfrei, aber nur wenn der Stecker des
> Programmiergerätes eingesteckt ist. Sobald ich den Stecker abstecke,
> geht UART nicht mehr. Das Hauptprogramm ( LED-Blinken ) läuft sowohl mit
> als auch ohne Stecker problemlos.

Ein Schaltplan oder eine Skizze wuerde schonmal weiterhelfen...

PC und µC sind auch bei abgezogenem Programmieradapter auf gemeinsamer 
Masse?

Volker

von Gunb (Gast)


Lesenswert?

Ich glaube, es ist wie Rufus beschreibt die RST-Leitung. Hatte das 
Problem auch einmal, ist mir die ganze Zeit während der Entwicklung nie 
aufgefallen, weil ich den JTAG permanent angeschlossen hatte. Später 
habe ich dann den Programmieradapter entfernt und mal lief die 
Schaltung, mal nicht - je nachdem, was sich der LOW-aktive RST-Pin eben 
gerade einfängt.

Die Tatsache, dass die LED blinkt, würde ich wie Rufus interpretieren: 
wenn die Schaltung mehr oder weniger regelmäßig neu startet, blinkt die 
LED, aber der USART macht's nicht mit.

Gruß
Gunb

von noips (Gast)


Angehängte Dateien:

Lesenswert?

Reset-Leitung ist beschaltet. Reset nach Ziehen des Programmers wurde 
auch durchgeführt. Ich hänge die Schaltplanauszüge der betroffenen 
Schaltungsteile an.

von noips (Gast)


Lesenswert?

Zu Bild RS232 wäre noch zu sagen, dass ein Jumper die Stifte 1 und 2 an 
der Stiftleiste verbindet und die Querverweise A1RXD und TB_TXD 
entsprechend zu RXD- und TXD-Pins des MSP430 führen.

von Gunb (Gast)


Lesenswert?

OK,

dann fällt mir spontan nur Folgendes ein:

a) Die State Machines des MSP430 haben bei mir anfangs Ärger gemacht, 
als ich mich nicht genau an die Vorgaben in der Reihenfolge des 
Datenblatts hielt. Keine Ahnung, ob sich dieses Verhalten ändert, wenn 
der JTAG dranhängt?!

b) Der BSL wird bei den JTAG-Varianten mir dem /RST- und TCK-Pin 
gestartet. Eigentlich sollte deine Resetschaltung so schnell genaug den 
/RST-Pin auf HI ziehen, die TCK scheint bei dir aber zu floaten, wenn 
der Adapter nicht angeschlossen ist. Vielleicht probierst du mal den 
TCK-Pin auf definierten Pegel zu legen. Der genaue BSL-Ablauf ist im 
App.Note. slaa089d.pdf beschrieben (damals jedenfalls).

Leider momentan etwas unter Zeitdruck, aber vielleicht hilft dir die 
Richtung weiter.

Gruß
Gunb

von noips (Gast)


Lesenswert?

Das mit dem TCK-Pin wird schon passen, ich habe diese Belegung 
eigentlich aus einer bestehenden Schaltung mit dem gleichen µC 
übernommen, die seit langem eingesetzt wird und keine Probleme macht.

Hab jetzt permanent ein Zeichen gesendet und das Signal TXD des µC mit 
Oszi angeschaut. Mit gestecktem Adapter schaut das signal normal aus, 
das heißt man kann die einzelnen Bits sauber ekrennen und die Pegel 
passen auch: high -> ca. 3.1V und low -> 0V. Bei nicht gestecktem 
Adapter ist das Signal weiterhin erkennbar mit dem Unterschied, dass 
low-Pegel jetzt nicht bei 0V sondern bei ca. 1V liegt.

Wie kann man das erklären.

von mui (Gast)


Lesenswert?

ich tippe auf Masseproblem...mit dem JTAG-Adapter wird eine 
Masseverbindung zwischen Board und PC hergestellt, die ohne JTAG-Adapter 
fehlt - da würde ich nochmal alles prüfen...

von noips (Gast)


Lesenswert?

War tatsächlich ein Masseproblem. Habe schon mehrmals die Platine 
durchgecheckt und nichts bemerkt. Erst jetzt stelle ich fest, dass ein 
Fädeldraht abgekommen ist. Ich schäme mich :-(

Danke euch allen!!!!!

von Gunb (Gast)


Lesenswert?

Warum schämen?

Gut gemacht :-))

Gruß
Gunb

von Volker S. (volkerschulz)


Lesenswert?

noips schrieb:
> War tatsächlich ein Masseproblem.

Ich sollte Ferndiagnostiker werden! ;)

Schoen dass es funktioniert...

Volker

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
Noch kein Account? Hier anmelden.