Forum: Mikrocontroller und Digitale Elektronik MSP430: Programm automatisch starten?


von Schmitz (Gast)


Lesenswert?

Ich habe da eine Anfängerfrage zum MSP430:
Ich programmiere einen MSP430 mittels C mit der Demoversion des ICC430
Compilers. Mein Programm läuft, wenn ich es über den Debugger starte.
Wie erreiche ich es, dass das Programm ohne angeschlossenen PC und
JTAG-Adapter automatisch startet, wenn die Betriebsspannung an den
Prozessor angelegt wird? Bislang funktioniert das ebensowenig, wie der
Versuch, das Programm aus der IDE über Tools->Flash Downloader mit
aktivierter Checkbox "Auto Run after programming" zu starten.

Für jede Hilfe dankbar
Sunnyheinz

von Sebastian (Gast)


Lesenswert?

Dann machst du irgendwas falsch ...

Normalerweise sollte das Programm automatisch starten, wenn VCC am
MSP430 anliegt und der Reset-Pin auf VCC liegt. Guck mal genau, was der
IAR macht, wenn du den "Debug"-Button drückst. Dann sollte nämlich
zuerst ein kleines Fenster mit "Getting Target Information" aufgehen,
direkt danach das Fenster mit "Downloading". Und genau dann findet
der Download deines Programms vom PC zum MSP430 statt. D.h., das
Programm ist im Flash drin und bleibt dort auch nach einem Neustart
drin.

Hast du auch in den Options unter C-Spy bei Driver "Flash Emulation
Tool" eingestellt? Default-mäßig ist das "Simulation", wobei KEIN
Download des Programms auf den MSP stattfindet.

Und noch was: Wo hast du bei Tools einen Eintrag "Flash
Downloader"?!? Den habe ich gar nicht ...

Grüße, Sebastian

von Schmitz (Gast)


Lesenswert?

Hallo Sebastian,

danke für Deine Antwort. Tja, die Frage ist: "Was mache ich falsch?"

VCC (knapp 3V) hängt am MSP430 und an Pin 58 (Reset).

Wenn ich den Debug-Button drücke kommt wenn das Programm nicht geändert
wurde eine Frage, ob ich trotzdem programmieren möchte. Wenn es eine
Änderung gab wird ohne Frage programmiert. Außerdem kommt ein Reset und
ein "saving ram". Dann springt der MSP in das main() Programm (habe
den Debugger so eingestellt) wo es dann stehenbleibt. Wenn ich es dort
starte läuft es ganz normal ab. Auch wenn ich dann den JTAG-Connector
abziehe, läuft das Programm weiter - nur eben nicht ohne Anstoß aus dem
Debugger heraus.

Ich habe unter Tools->FLASH Downloader das Interface "TI FET"
ausgewählt. Dass nur eine Simulation läuft glaube ich nicht, denn dann
könnte das Programm ja nicht auf dem Microcontroller laufen, wenn ich
den JTAG-Cobnector abziehe.

Ich benutze übrigens die Image Craft IDE for ICC430 (wg. des
Menüpunktes - schätze Du nutzt etwas anderes!?).

Gruß
Heinz

von Sebastian (Gast)


Lesenswert?

Ach so, sorry, dann habe ich dich missverstanden. Ich dachte, du würdest
den IAR benutzen. Von deiner IDE habe ich leider Null Ahnung ...
Notfalls müsstest du eben mal den IAR ausprobieren, den gibt es als
Demo kostenlos auf iar.com.

Grüße, Sebastian

von Martin (Gast)


Lesenswert?

Servus,

oft tritt das Problem auf wenn die Interruptvektor, vorallem der
Resetvektor falsch gesetzt sind. Überprüfe das mal !
Manche Debugger springen von sich aus auf die Richtige Startadresse,
der MSP alleine natürlich nicht und landet irgenwo im Nirvana.

---> poste mal deine Interruptvektoren !


Grüßle

Martin

von Schmitz (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

im Anhang der Ausschnitt aus der MSP430.h, der die Interruptvektoren
enthält. Stammt aus der c't.

Der RESET_VECTOR steht auf 30.

Gruß
Heinz

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.