Forum: Mikrocontroller und Digitale Elektronik MSP430 und JTAG


von Gast (Gast)


Lesenswert?

hi,
kann man beim MSP430 eigentlich die JTAG-Schnittstelle als eine Art 
serielle Kommunikation missbrauchen, würde sowas gehen!?

Folgendes Problem: ich habe versch. Platinen bei denne es alle samt 
keine einheitliche Kommunikation nach aussen gibt, einziges Merkmal das 
alle Platinen haben ist die JTAG-Schnittstelle.

Nun suche ich nach einer Möglichkeit, bei diesen Platinen irgendwie ein 
Unterprogramm von aussen zu starten.
Hardware ist nicht ändernbar, nur Software, und da alle Platinen den 
gleichen JTAG-Stecker haben, ist eben die überlegung da es damit zu 
machen.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> Nun suche ich nach einer Möglichkeit, bei diesen Platinen
> irgendwie ein Unterprogramm von aussen zu starten.

Was genau stellst Du Dir darunter vor?

von Christian R. (supachris)


Lesenswert?

Kommt drauf an. Bei den größeren Modellen ist die JTAG Schnittstelle 
extra, kann nur JTAG und man kann sie per Software nicht ansprechen. Bei 
den kleineren wird die JTAG mit dem Test-Pin aktiviert, ansonsten sind 
das normale I/O-Leitungen.

Welchen MSP430 hast du denn da drauf?

von Gast (Gast)


Lesenswert?

Ein Programmteil der eben nur einmal ausgeführt wird, sowas ähnlich wie 
ein Abgleich.
Ich könnte auch über eine Brücke einen Port auf hi oder lo ziehen und 
dadurch diesen "Abgleich" nur einmal ausführen (nach dem Abgleich Br 
wieder öffnen/schließn), jedoch ist mir dir Portgeschichte wegen EMV zu 
unsicher, ausserdem müsste ich diese Brücke erst machen und das Layout 
überarbeiten, was auch nicht ideal ist.

Daher dachte ich zuerst daran das über seriell zu machen, z.B. direkt 
nach dem Einschalten ein Datenwort in den MSP schieben, kommt dies 
direkt nach dem Einschalten, dann soll er den Abgleich machen, kommen 
das Datenwort nicht, dann eben kein Abgleich.
Nur ist das Problem eben dass die Platinen unterschiedlich sind, einzige 
Gemeinsamkeit ist eben die JTAG-Schnittstelle.

Gruß

von Gast (Gast)


Lesenswert?

@Christian

hab den F148, gehört schon zu den grösseren Modellen mit 64pins, 
48ports, 2 UARTs, ADC.

Die zwei UARTs kann ich nicht verwenden!

von Christian R. (supachris)


Lesenswert?

Der F148 hat eine dedizierte JTAG-Schnittstelle, die kann man für nix 
anderes nehmen.

von arc (Gast)


Lesenswert?

Der Abgleich sollte über JTAG steuerbar sein, da die Funktionalität zum 
Starten, Anhalten und Speicherauslesen für's Debugging vorhanden ist.
Letztendlich also nichts anderes als "geskriptetes Debugging".

von Gast (Gast)


Lesenswert?

>Der Abgleich sollte über JTAG steuerbar sein, da die Funktionalität zum
>Starten, Anhalten und Speicherauslesen für's Debugging vorhanden ist.
>Letztendlich also nichts anderes als "geskriptetes Debugging".

Und wie geht das? - ich wüßte hier nicht wo und wie ich ansetzen soll!?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Eine Möglichkeit:

Deine Software ruft die Abgleichroutine auf, wenn eine Variable einen 
bestimmten Wert enthält. Das tut sie (die Variable) standardmäßig nicht, 
aber per JTAG kannst Du das Programm anhalten, die Variable mit dem 
bestimmten Wert beschreiben und das Programm weiterlaufen lassen.

Et voilà.

von Christian R. (supachris)


Lesenswert?

Oder gleich die Kalibrierdaten in die 2x 128Byte Information Flash 
schreiben. Dazu kann man sich leicht ein TI-Txt-File schreiben und dann 
per msp430-jtag reinschieben. Natürlich passende 
Kommandozeilenparameter, damit nur der INFOMEM gelöscht wird....

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.