www.mikrocontroller.net

Forum: Compiler & IDEs msp430 warum so oft DW RESET


Autor: Benno Gassmann (Gast)
Datum:
Angehängte Dateien:
  • RTC.txt (387 Bytes, 157 Downloads)

Bewertung
0 lesenswert
nicht lesenswert
warum wird hier die DW RESET sooft wiederholt?
Besten Dank für eure Antworten!

mfg B. Gassmann

Autor: Stefan Kleinwort (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das sind die Interrupt-Vektoren. Wenn keine IR-Routine für den
ntsprechenden Interrupt vorhanden ist, dann darf dieser (natürlich)
auch nicht auftreten. Wenn doch, dann ist das ein schwerer
Programm(ier)fehler. Als Notnagel wird in diesem Programm dann ein
Reset erzeugt. Analog funktioniert ja auch ein Watchdog: Programmfehler
löst dort auch einen Reset aus.

Stefan

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen!

msp430-gcc bietet die Möglichkeit, eine Funktion namens
'UNEXPECTED()' zu überlagern. Was macht diese routine? Ganz einfach,
anstelle der 'DW RESET' wird ein Assemblercode erzeugt, der einfach
nach 'UNEXPECTED()' verweist. Man kann in dieser Routine (in der
eigenen natürlich) dann selber entscheiden, was bei unbeabsichtigt
auftretenden Interrupts passieren soll. Diese unbeabsichtigten
Interrupts können beispielsweise dann auftreten, wenn das IE-Flag für
einen Interrupt gesetzt ist, aber keine Handlerroutine existiert.

Gruß,
Patrick...

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie Stefan schon sagte, es wird versucht durch einen Neustart einen
schweren Programmierfehler zu vertuschen.

Besser ist es daher, für jeden Interrupt auch einen Handler
aufzusetzen, der die CPU nachhaltig stopt und vielleicht noch einen
freien Pin setzt, als Zeichen, daß ein schwerwiegender Programmfehler
aufgetreten ist.


Peter

Autor: Benno Gassmann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz herzlichen Dank für eure Beiträge! Wenn ich richtig verstanden
habe, verweisen im Beispiel die meisten Interrupt-Vektoren auf das
RESET-Label. Bis jetzt habe ich gemeint, dass zB auf Platz 10 nur der
Vektor "Watchdog timer" stehen dürfe.

Auf jeden Fall bin ich glücklich, dass das msp430 Forum lebt. Dies ist
für mich als Einsteiger beruhigend!

Gruss  Benno

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.