Forum: Mikrocontroller und Digitale Elektronik MSP430 Anfänger


von Frankie (Gast)


Lesenswert?

Also Leute, ich könnte mir gerade voll innen A***h beißen.

Ich wollte mal anfangen, einen MSP430 zu programmieren und habe mir 
gleich mal den Chip bestellt. Jetzt bekomme ich natürlich die Quittung, 
dass ich mich davor nicht genügend informiert habe. Ich bekomme da jetzt 
einfach diesen Chip zugeschickt und ja toll. Auf der Homepage lese ich 
dann was von JTAG und Headerboards, was mir aber auch nicht viel sagt. 
Sind die Chips da schon integriert? Habe ich die Chips jetzt umsonst 
bestellt, was kann ich denn jetzt machen, was brauche ich noch, etc?

von Mathias U. (munter)


Lesenswert?

Frankie wrote:

> Ich wollte mal anfangen, einen MSP430 zu programmieren...

Ja, wie hast Du dir denn vorgestellt, den zu programmieren? Per 
Telepathie?
Du bist echt witzig! Ich hoffe, Du hast dafür nicht auch noch Geld 
ausgegeben...

von Frankie (Gast)


Lesenswert?

Ich dachte, ich kann mir die schaltung drumherum aufbauen, die annen PC 
anschließen und dann loslegen bzw. dachte ich, das kommt alles 
mitgeliefert. Was mach ich denn jetzt mit den einzelnen Chips? 
Wegwerfen?

von Frankie (Gast)


Lesenswert?

Warn Sch****e teuer die Dinger!

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> Was mach ich denn jetzt mit den einzelnen Chips?
> Wegwerfen?

Nö, aufheben. Die "Schaltung drumherum" musst Du Dir halt noch selbst 
zusammenbauen - Du musst also noch 'rausfinden, was dafür benötigt wird, 
welche Software Du brauchst etc.

- aber das ist bei JEDEM anderen Microcontroller EXAKT genauso.

Welchen MSP430 hast Du Dir denn gekauft? Den MSP430 gibt es 
genausowenig wie es den AVR gibt.

von Mathias U. (munter)


Lesenswert?

Frankie wrote:
> Ich dachte, ich kann mir die schaltung drumherum aufbauen, die annen PC
> anschließen und dann loslegen

Was hindert Dich jetzt daran, sich nen bissl über JTAG zu informieren, 
Dir nen JTAG-Adapter zu basten, Dir nen kleines MSP-Board zu basteln, wo 
die ganzen Pins schön nach aussen geführt sind, die Sache dann an den PC 
anzuschliessen (den JTAG, oft per parallel-Kabel) und dann 
loszuprogrammieren...
Ich versteh es nicht.

>Warn Sch****e teuer die Dinger!

ARGH, man kann (fast) alle MSP-Derivate als Samples beziehen...

von Frankie (Gast)


Lesenswert?

Iss der MSP430F169.

Hab ja mit dem Informieren schon angefangen und alles über JTAG auf der 
Homepage hier gelesen, mir wird da aber nicht ersichtlich, wie ich son 
Teil jetzt selber basteln soll.
Ja, noch zu dem JTAG-Adapter, mmmh. Da habe ich hier nen Schaltplan 
gefunden, mit dem ich aber null anfangen kann, da iss das JTAG ja schon 
drin, so wie ich das sehe, oder?

Hat denn wer nen Schaltplan?

von Frankie (Gast)


Lesenswert?

DAS versteh ich ja nicht, dachte eigentlich ein JTAG IST ein MSP-Board.

von Jörg S. (Gast)


Lesenswert?

JTAG ist die Bezeichung einer Schnittstelle. Der MSP hat somit eine JTAG 
Schnittstelle. Jetzt brauchst du einen JTAG MSP Programmer. Z.B. ebay 
Nr. 330204601242.
Wenn du nur den blanken MSP430F169 hast ohne Leiterplatte wird noch ein 
Nullkraftsockel oder eine fertige Adapterplatine fällig.
Dann noch ein passender Compiler, z.B. IAR EW430.

von Sebastian (Gast)


Lesenswert?

Wer glaubt, ohne JTAG auskommen zu können, kann sich auch mal unter dem 
Stichwort "serieller Bootloader" umhören. Das geht dann schon eher in 
die Richtung "direkt an den PC anschließen", erfordert aber einen 
Pegelwandler (MAX3232 o.ä.) und ist weniger komfortabel.

von Robin S (Gast)


Lesenswert?

Das ganze klingt sehr abenteuerlich! Bist du sicher dass du das tun 
willst?

von André R. (andrer) Benutzerseite


Lesenswert?

ouh man...

alles infos die man mit wenig suchen und lesen problemlos findet.

1. lies dir die datasheets und appnotes von ti durch (taugen sogar 
halbwegs auch wenn ich mir bessere gewünscht hätte)

2. wenn du eh schon auf der seite von ti bist, guck da nach der 
iar-kickstart-version für den msp430 (compiler/ide)

3. jtag bauen: http://www.olimex.com/dev/images/msp430-jtag-d-sch.gif
ich hab mir das zurecht klamüstert und versorg das jtag über mein 
msp430-board   (macht das jtag einfacher)

4. bau dir ein board wie hier schon vorgeschlagen - hab ich auch 
gemacht. ich hoffe für dich es is was halbwegs lötbares was du da hast. 
(ich hab soic genommen, tsop geht wohl auch noch wenn man masochistisch 
veranlagt is und gute entlötlitze daheim hat)

5. merk dir: man informiert sich besser vorher als hinterher.

wenn du fragen hast, hier ins forum oder zB mir ne mail schreiben.

von Frankie (Gast)


Lesenswert?

Guten Morgen,

also erstmal vielen Dank für eure Beiträge und eure Geduld. Hatte halt 
bisher noch fast gar nix mit µC zu tun, bin eigentlich Maschinenbauer:). 
So wie ich das verstanden habe, ist es folgendermaßen:

Der JTAG dient dazu, den Code auf den Controller zu bringen und das 
Board dient der Funktion des Controllers, seine äußere Beschaltung also, 
richtig?

von Sebastian (Gast)


Lesenswert?

Ja, kann man so sagen.

von Christian R. (supachris)


Lesenswert?

Nur Code drauf bringen geht auch mit dem Bootloader über Serial-Port. 
Ist aber sehr langsam. Mit dem JTAG-Adapter kannst du den Prozessor 
debuggen, also Schritt für Schritt ausführen lassen, alle Register und 
Variablen anschauen usw.
Musst nur aufpassen, der parallel-Port-JTAG geht nicht unter Vista. Am 
besten gleich einen mit USB kaufen.

von Mathias U. (munter)


Lesenswert?

Aber nochmal zu Erinnerung:

MSP430-Derivate gibt es fast alle als Sample, d.h. kostenloses Muster 
von TI.
Die schicken dir die Dinger innerhalb von 3-4 Tagen zu.
Nur weil Du wohl soviel Kohle für den µC ausgegeben hast!

von Jörg S. (Gast)


Lesenswert?

Na ja, wenn er jetzt noch einen USB Progranmmer kauft, ist der Preis für 
den MSP eher gering gewesen ;)

von Frankie (Gast)


Lesenswert?


von Christian R. (supachris)


Lesenswert?

...das ist wahr, der kostet bei Olimex knapp 60 Euro. Dank des schwachen 
Dollars aber eine lohnenswerte Investition. Ich hab auch den JTAG Tiny, 
ist sogar viel schneller als der von TI, und kann auch Spy-Bi-Wire.

von Christian R. (supachris)


Lesenswert?

Frankie wrote:
> Also fahre ich gut, wenn ich mir die folgenden beiden Teile bestelle?
>
> 
http://shop.mikrocontroller.net/csc_article_details.php?nPos=0&saArticle%5BID%5D=59
>
> http://elmicro.com/de/msp430jtag.html

Jo, aber wie gesagt. Investier lieber die paar Euro mehr in den 
USB-Debugger. An dem langsamen Parallel-Port Ding hatte ich auch nicht 
lange Freude.
Und bei Elmicro gibts auch gleich Headerboards: 
http://elmicro.com/de/msp430hb.html

von Jörg S. (Gast)


Lesenswert?

Das Programmieren dauert halt etwas länger über Parellelport, aber beim 
Debuggen fällt das doch überhaupt nicht auf.

von Frankie (Gast)


Lesenswert?

Wozu benötigt man denn einen Flash Programmer?

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Frankie wrote:
> Wozu benötigt man denn einen Flash Programmer?

Um das FLASH-ROM des MSP430 mit dem entwickelten Programmcode zu 
befüllen.

von Frankie (Gast)


Lesenswert?

Wenn ich aber alles aufn RAM schreibe wird das nicht benötigt oder?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

> Das Programmieren dauert halt etwas länger über Parellelport,
> aber beim Debuggen fällt das doch überhaupt nicht auf.

O nein, gerade da fällt das auf, weil beim Debuggen auch Datenstrukturen 
aus dem Speicher gelesen werden etc.

Der JTAG-Tiny von Olimex ist derartig günstig, daß man sich den auf 
jeden Fall leisten sollte. Alternativ, wenn man nur SpyBiWire-Devices 
einsetzt, kann man auch den mit einem F2013 verkauften USB-"Stick" 
anschaffen, der kostet nur etwa 30 EUR. Und von TI gibts mittlerweile 
mehr SpyBiWire-fähige MSP430er als nur den '2013 und seine abgespeckten 
Derivate.

Besser aber ist die "Vollversion", die auch das klassische JTAG 
beherrscht, eben der JTAG-Tiny.

von Marc (Gast)


Lesenswert?

Eine Zwischenfrage an der Stelle:

Wo ist denn der Unterschied zwischen dem JTAG und dem Flash Programer? 
Mit beiden flashe ich doch das µC?

von Stefan (Gast)


Lesenswert?

>Wo ist denn der Unterschied zwischen dem JTAG und dem Flash Programer?
>Mit beiden flashe ich doch das µC?
Mit JTAG kann ich flashen und debuggen. Ist also ein Entwicklungstool!
Mit dem Programmer kann ich nur flashen (programmieren) und je nach 
Ausführung auch noch die JTAG-Fuse brennen (Ausleseschutz). Der 
Programmer ist eigentlich dazu gedacht, in der Serienproduktion das 
Programm auf den MSP zu flashen

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Bin ich beim MSP430 nicht sattelfest.

Bei meinem ARM7 kann man per Debugger und JTAG-Verbindung das RAM mit 
Code füllen und dann den Code dort starten. Ein spezieller 
Flash-Programmieren ist dann nicht nötig (der spezielle ARM7 hat auch 
kein eigenes FLASH-ROM). Der Code muss allerdings speziell für Runmode 
"RAM" kompiliert und gelinkt sein.

Mit einem JTAG-Adapter kannst du grundsätzlich auch das FLASH 
beschreiben, wenn du das mal machen willst (#1).

Ein "richtiger" FLASH-Programmer (#2) hat mehrere Möglichkeiten, das 
FLASH zu beschreiben. Einmal über JTAG (wenn die Security-Fuse noch heil 
ist) und einmal über BSL (Boot Strap Loader - Bootloader) Interface 
(#3).

#1
http://focus.ti.com/mcu/docs/mcusupporttechdocsc.tsp?sectionId=96&tabId=1502&abstractName=slaa149c

#2
http://www.elprotronic.com/xpro430_B.html
http://kurt.on.ufanet.ru/page_docs_en.htm#fet_adapter

#3
http://focus.ti.com/mcu/docs/mcusupporttechdocsc.tsp?sectionId=96&tabId=1502&abstractName=slaa089d

von Christian R. (supachris)


Lesenswert?

Naja, beim MSP ist es etwas anders als beim ARM. Im Normalfall führt der 
MSP430 den Code vom Flash aus. Man kann mit Anpassungen auch RAM-Code 
schreiben, ist aber nur nötig, wenn man z.B den gesamten Flash aus dem 
Programm heraus neu Programmieren will, also einen eigenen Bootloader 
bauen will.

Den Flash-Programm braucht man wie gesagt nur in der Serienproduktion, 
der ist nochmal um einiges schneller als der Debugger. Aber zum Software 
entwickeln und Testen ist ein Debugger sehr sinnvoll.

Der Par-Port Debugger ist beim Debuggen wirklich sehr langsam, das macht 
keinen Spaß. Das dauert ganz schön lange, bis der mal Arrays geladen hat 
usw.

Der JTAG Tiny ist vom Preis-/Leistungsverhältnis her ausgezeichnet.

von Jörg S. (Gast)


Lesenswert?

> O nein, gerade da fällt das auf, weil beim Debuggen auch Datenstrukturen
> aus dem Speicher gelesen werden etc.
Wüsste nicht was da schneller gehen sollte. Wenn ich auf Memory klicke 
wird sofort das gesamte Memory angezeigt wenn ich auf Register klicke 
werden sofort alle Register Inhalte angezeigt. Wo soll es da Wartezeiten 
geben??

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Definiere "sofort".

von Jörg S. (Gast)


Lesenswert?

So schnell wie der Monitor das Bild aufbauen kann.

von Christian R. (supachris)


Lesenswert?

Hmm...ich konnte da deutliche Geschwindigkeitsunterschiede feststellen, 
allerdings mit Eclipse und MSPGCC. Vielleicht werden die Variablen usw 
vom IAR schon beim Anspringen des Breakpoints gecached, und dann nicht 
nochmal extra übertragen. Der MSPGCC lädt dann be bedarf, und das dauert 
viel länger als per USB. Auch das reine Programmieren, besonders bei 
mehreren kByte Programmgröße.

von Marc (Gast)


Lesenswert?

Kann jemand an dieser Stelle Compiler und Debugger ( Kenne nur NOICE???? 
)empfehlen?

von Christian R. (supachris)


Lesenswert?

IAR ist der teuerste und professionellste. Dann gibts noch das andere 
Ende: Eclipse mit MSPGCC als "Frickel-Variante", kostenlos, aber 
natürlich viel selber zu tun. Crossworks gibts noch und von Texas 
Instruments den Code Composer Essentials.

von Stefan (Gast)


Lesenswert?

>IAR ist der teuerste und professionellste.
Die kostenlose IAR-Kickstart Version nicht zu vergessen...

von Marc (Gast)


Lesenswert?

ICC? Jemand Erfahrug?

von Oliver O. (olivero)


Lesenswert?

Christian R. wrote:
> IAR ist der teuerste und professionellste. Dann gibts noch das andere
> Ende: Eclipse mit MSPGCC als "Frickel-Variante", kostenlos, aber
> natürlich viel selber zu tun. Crossworks gibts noch und von Texas
> Instruments den Code Composer Essentials.


Den TI Code Composer Essential benutze ich auch, kann ich nur empfehlen! 
Einfach installieren, µC auswählen und geht. :-)

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.