LPC2368 Vectored Interrupts Controller anders?

OP #1225403
Hallo,

kann es sein, dass die den VIC von LPC21xx nach LPC23xx umgestrickt 
haben? Bisher konnte man sich den Slot für seine ISR doch frei auswählen 
und im VICVectCntrl Register festlegen, welcher Slot welchem IRQ 
zugeordnet wird. Ist das jetzt so zu verstehen, dass jeder Slot genau 
einer IRQ Quelle entspricht, also zB Slot 4 wird Timer 0 (Nr.4) 
zugeordnet? Das VicVectCntrol Register vermisse ich beim LPC23xx auch 
:-( Kein wunder, dass mein alter Code nicht mehr läuft.

Weiss jemand, ob der GNU CC die Register bei Einsprung in eine ISR 
automatisch auf den Stack rettet oder ob man das manuell tun muss?

Gruss,
Christian
#1226129
Hallo Christian,

nur zu Deiner Bestaetigung, der VIC auf dem 23xx/24xx ist ander als der 
auf den LPC21xx/22xx. Die Anzahl der verfuegbaren Interrupts beim 
urspruenglichen VIC war lediglich 16, alle schon benuetzt. Jetzt hiess 
es entweder mehrere Quellen auf so ziemlich jeden Vector oder einen 
erweiterten VIC. Mehrere Quellen auf die Vectoren waere der Tod 
jeglicher schnellen Interrupt Antwortzeit gewesen, deshalb und aus ein 
paar anderen Gruenden ist der neue erweiterete VIC drin. Kaskadierte 
VICs waere zwar gegangen aber hatte sehr grosse Nachteile.

Gruss, Robert
OP #1226686
Hallo Robert,

Du scheinst Dich ja gut damit ausszukennen. Ich bin allerdings auch 
schon weiter meinem Baby ein Betriebssystem zu verpassen. ARM7 
programmiert sich laangsamer als ein PIC wegen der fehlenden HAL beim 
GNU. Der VIC ist aber nicht so schwer wie ich dachte, Sachen wie nested 
interrupts mache ich nicht, da ich keinen ARM Assember kann und lernen 
will.

Könnte ich Dir ggf. per e-mail ab und an mal ein paar Fragen stellen, 
wenn ich nicht mehr weiterkomme? zB verstehe ich nicht, warum mein 
Programm nicht mehr läuft, wenn ich beim GNU "Optimize for size" setze, 
Rowley spuckt dann auch eine Warnung aus, dass der erzeugte Code 
unbenutzbar sein kann.

Oder lieber im Forum stellen?

Gruss,
Christian
#1226912
Hallo Christian,

mit GNU kennen sich hier viele besser aus als ich, also lieber im FOrum 
stellen. Ich schau regelmaessig rein und antworte auch oft, wenn ich was 
vernuenftiges beitragen kann.
Ausserdem bin ich 9h zeitversetzt, da kommt Hilfe im Forum doch oft 
etwas schneller.

Robert (in Silicon Valley, California)

p.s. mit der Hardware im Chip kenne ich mich schon ziemlich gut aus.
OP #1227024
Hallo Robert,

prima, dann kannst Du mir vielleicht sagen, wie man die PLL des ARM 
wieder abschaltet und den Oszi wieder ankoppelt. Im Handbuch ist leider 
nur beschrieben, wie man die PLL einschaltet. Beim Absschalten hängt 
sich mein Proz völlig auf und ich komme auch nicht mehr mit dem JTAG 
rein, muss über die Uart ein Dummyprogramm flashen. Der Grund ist 
einfach, dass mir der Chip zuviel Strom verbraucht, bei 24 Mhz zieht 
sich mein Board 110ma rein, davon vermutlich 20ma für andere bauteile 
und das meiste für den ARM. Das ist zuviel für einen Akku der mit einer 
Solarzelle geladen wird.

Gibt es da eine bestimmte Vorschrift?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.