www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Probleme mit dem Einschalten globaler Interrupts mit IAR Workbench und MSP430F2618


Autor: Lief Erickson (kallisti)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich würde gerne die globalen Interrupts des MSP430F2618 einstellen. Ich 
arbeite mit IAR Embedded Workbench IDE 5.10.4. Ich habe nun schon 
folgende Versuche gestartet, die globalen Interrupts einzuschalten:

EINT();
_EINT();
__bis_SR_register(GIE);

Leider kommt bei jedem dieser Versuche folgende Fehlermeldung:

Error[e46]: Undefined external "xxx" referred in main

Normalerweise arbeite ich mit Scintilla und MSPGCC, daher weiss ich nun 
ehrlich gesagt nicht, was ich falsch mache.
Vielleicht kennt jmd von euch das Problem?
Thx for help!

Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
_BIS_SR (GIE);

Autor: Nico H. (gecko2152)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Moin Moin

ich muss den Thread jetzt nochma aufwärmen weil ich genau das selbe 
Problem habe. Ich verwende den selben MSP430 und die IAR Version: IAR 
C/C++ Compiler for MSP430 5.20.2 [Kickstart LMS] (5.20.2.40217).
Egal welche der folgenden Versionen ich eingebe:
      EINT();
      _EINT();
      __bis_SR_register(GIE);
      _BIS_SR (GIE);
      _BIS_SR(GIE);

Leider kommt bei jedem dieser Versuche folgende Fehlermeldung:

Error[e46]: Undefined external "xxx" referred in main.

Gibt das hier noch irgendwo ne Einstellung oder sonste was ich vergessen 
habe?

Als Header ist natürlich die "io430.h" eingebunden die automatisch die 
"msp430x26x.h" einbindet.

Vielen Dank im Voraus

Autor: Erik (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
schon mal ohne Klammer probiert ?
EINT

mfg Erik

Autor: Nico H. (gecko2152)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab jetzt den Fehler gefunden.

der Befehl lautet:  _BIS_SR(GIE);

aber die Header-Datei Einbindung war net ganz richtig.
die "io430.h" hat die "io430x26x.h" eingebunden, welche aber an sich 
anscheinend nicht ausgereicht hat. Die Einbindung der "msp430x26x.h" hat 
zunächst aber auch nicht zum Erfolg geführt.

Aber als ich dann die "io430.h" in allen c-dateien entfernt habe und nur 
die "msp430x26x.h" eingebunden habe, hat es auf einmal funktioniert. 
Versteh einer diese Logik aber was solls.
Jut mal wieder Lehrgeld bezahlt.

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.