Forum: Mikrocontroller und Digitale Elektronik MSP430 Einstieg


von 4EU (Gast)


Lesenswert?

Hallo!

Zum Einstieg in die MSP430 ASM-Sprache wurde bisher folgende Ausrüstung
angeschafft:

1.)Softbaugh BLCDA2 Modul (enthält MSP430F449, Display und JTAG
Schnittstelle). Infos unter:
http://www.softbaugh.com/ProductPage.cfm?strPartNo=BLCDA2

2.)Olimex MSP430-JTAG Programmieradapter. Infos unter:
http://www.olimex.com/dev/msp-jtag.html

3.) Als Software bisher IAR Embedded Workbench; von TI Website als
Version 2 B geladen.

Vor Beginn der eigenen Experimente sollte die grundsätzliche
Funktionsfähigkeit der Entwicklungsumgebung sichergestellt sein. Es
wäre mir daher sehr wichtig, ein fertiges Programm erfolgreich auf das
Board zu flashen. Von Softbaugh stehen dazu zwei Demoprogramme für
SBSIM430 und Quadravox Assembler zur Verfügung. Leider schluckt die IAR
Workbench diesen Code nicht.Schon bei der Include Anweisung kommt der
Fehler "Bad instruction". Auch einfache Zeilen wie

LCD_DIV_128    .EQU  010h

verursachen den selben Fehler.

Beim Atmel AVR wird einem die Einarbeitung sehr erleichtert
(zuverlässiges AVR Studio, STK500, kompatible Codebeispiele, gute
Datenblätter usw.).

Für den MSP habe ich auch nach ausgiebiger Suche keine auch nur
halbwegs brauchbaren Einsteigerinfos gefunden. Auch bei TI und in
unseren Scripten nur ein wahlloses Durcheinander inkompatibler
Softwaresammlungen (z.B. RS232 Flashprogramm für altes Demoboard obwohl
jetzt parallel mit JTAG gearbeitet wird).

FRAGEN:

1.)kann man den Quadravox bzw. den SBSIM430-Code einfach umschreiben
und in der IAR lauffähig machen?

2.)gibt es für reine ASM Programmierung bessere kostenlose Lösungen als
die von IAR?

3.)Gibt es im Web ein gutes MSP430-Tutorial? Falls nicht: wie ruft man
in der IAR Oberfläche die Flashfunktion für JTAG auf?

von Main666 (Gast)


Lesenswert?

Hallo 4EU,

schön das Du dich an das Thema MSP430 traust, meiner Meinung nach einer
der besten MC´s auf dem Markt.

Zu deinen Fragen:

Ich programmiere auch in ASM unter IAR. Da die Workbench eigentlich für
C ausgelegt ist gestalten sich viele Definitionen leicht anders:

LCD_DIV_128    .EQU  010h   sieht korrekt so aus:

#define LCD_DIV_128 010h

Und dann klappt das. Ich empfehle Dir dringenst die Codebeispiele von
TI für ganz einfache Projekte zu benutzen. Da steht alles drin, es gibt
sie getrennt für C und ASM. Zu finden auf der HP (Schnellzugriff mit
www.msp430.com) und dann unter Code Examples.
Da wird wohl kein Programm zum Testen des gesamten Boards dabei sein,
aber ein lauffähiges Grundgerüst und alle nötigen Syntaxeigenschaften
sind dann erkennbar.

Zu Frage 2. ) Meiner Meinung nach: NEIN, der Debugger ist unschlagbar

Zu FRage 3) Gutes Tutorial ist mir nicht bekannt, es gibt eins von IAR
ist aber nicht so der HIT. Zur FLashfunktion: Meinst Du damit das
Programmieren des MSP ?
Wenn ja: Ich bin mir nicht ganz sicher wie die Version 2B aussieht aber
es gibt immer einen Button genannt C-SPY, eine grüne Lupe oder so
ähnlich. Dann startet das wichtigste Tool, nämlich der CSPY und flasht
dein Programm in den MSP. Gleichzeitig kannst Du hier Step für Step
durch den Code gehen (IM Chip über JTAG) oder auch nur simulieren ohne
Chip. Dieses debuggen ist die große Stärke der MSP´s !


Ich hoffe ich konnte Dir weiter helfen.

Falls Du weitere Fragen hast oder Codebeispiele benötigst bitte melden
!


Viele Grüße


Main666

von 4EU (Gast)


Lesenswert?

Habe heute das Softbaugh Modul auf eine Lochraster gebaut (steckbar) und
einige Taster, LEDs, Stromversorgung etc. implementiert.

Morgen wird dann die IAR nochmals getestet. Gestern habe ich C-Spy
nicht gefunden und auch nach mehrmaligem Ändern die Definitionen nicht
hinbekommen. Muß da nochmal genauer schauen.

Gibt es eine Tabelle für die Direktiven in den verschiedenen
Assemblern? In der IAR Hilfe war nur eine Tabelle für die fremden
Direktiven. Die Übersetzung in die IAR Version war dort aber nicht
gelistet.

Eigentlich arbeite ich mit dem Atmel AVR. Dort habe ich eine ganz gute
Ausstattung (STK500-OLED Grafikdisplay usw.). Im Studium ist unser
Dozent aber auf den MSP eingeschworen und ohne private Arbeit mit der
eigenen Hardware wird das nicht sinnvoll zu lernen sein. Einige
probieren es zwar mit Papier und Stift; dies halte ich aber für
ziemlich ausweglos. Im Vergleich zum Atmel gibt es für den MSP leider
kaum industrietaugliche Demoboards in der Ausstattung und Qualität des
STK500. Besonders die fehlenden Sockel der größeren Boards sind sehr
störend (arbeite oft mit Leistungselektronik und da knallt es auch
schon mal mit 320V).

Bin mal gespannt, ob der MSP bei der Programmierung sich stärker
sträubt als der AVR. Der Chip sollte einfacher zu programmieren sein;
jedoch ist der Support seitens TI sehr verworren. Habe z.B. 30 Min im
Datenblatt nach dem zulässigen Portstrom gesucht und nichts gefunden.
Beim AVR findet man die Angabe in wenigen Sekunden.

Melde mich morgen nach Inbetriebnahme der Hard-Softwarekombi wieder.

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.