mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Grundlagen zum LPC2294 Interrupt


Autor: Michael Gerkens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,
ich arbeite zum ersten mal mit einem ARM7 (LPC2294) und teste mich nun 
heran. Als IDE benutze ich CrossWorks.

Meine Frage:

Ich habe ein Test-Programm geschrieben, welches den Timer1 Interrupt 
benutzt. Die Interrupts sind freigeschaltet, das Flag kommt, aber der 
Controller springt im startup-file immer zum default irq-handler.
Was muß ich wo eintragen, damit der Sprung in den Interrupt 
funktioniert?

Vielen Dank

Michi

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Interrupt-Controller entsprechend programmieren.

Autor: Michael Gerkens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo A. K.
sicherlich hast du recht und ich bin nicht würdig.

Ein kleines Beispiel wäre schon schön.

Michi

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meine Antwort war so präzise wie deine Frage. Soll heissen: Ich habe ins 
Blaue geraten, dass du vielleicht den VIC nicht programmiert hast. Ins 
Blaue deshalb, weil du kein bischen deines Codes preisgegeben hast. Also 
spar dir den Zynismus bitte.

Mit einem Beispiel für Crossworks kann ich nicht dienen, bin aber 
sicher, dass sich dort entsprechende Beispiele finden lassen.

Autor: Martin Thomas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da der default-handler angesprungen wird, scheinen die grundlegenenden 
Einstellungen korrekt (Sprungaddresse im Excpetions-Vector), Aktivieren 
der INT-Excpetions und des Timer-Interrupts. Scheint eher, dass die 
Adresse des Interrupt-Handlers im VIC nicht inititalisiert. Könnte 
allerdings auch ein andere Fehler in der Initialisierierung sein. 
Detaillierte Analyse ohne Vorzeigen des Quellcodes kaum möglich.

Vielleicht ist mein Beispiel hilfreich: 
http://www.siwawi.arubi.uni-kl.de/avr_projects/arm...

Code sollte relativ leicht an die Crossworks-Umgebung und den LPC2294 
anpassbar sein. Im Hintergrund arbeiten die gleichen Tools ("GNU arm-elf 
Toolchain") wie die bei der von mir genutzten WinARM und die VIC-Zelle 
ist bei LPC2106 und LPC2294 meines Wissens identisch (besitze selbst 
kein Board mit LPC2294).

Martin Thomas

Autor: Michael Gerkens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Martin, vielen Dank für Deine Mühen, aber mein Code war soweit in 
Ordnung, ich hatte lediglich vergessen in der Preprozessor Anweisung 
VECTORED_IRQ_INTERRUPTS einzutragen.

Interrupts Funktionieren.

CU

Michi

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.