Gast
#337567
Es ist schon ein paar Tage her, daß ich hier einmal das Thema Spurious Interrupts ansprach. Ich bin noch am Setup des Default Interrupt Handler dran. Zum Thema Spurious Interrupts bei den Philips LPC2000 Serien hätte ich noch ein paar Fragen: Arbeite mit Keil Tools, und überlege gerade eine Handhabung der Spurious Interrupts, wie auch in der Philips AN10414 beschrieben. Die Surprise Interrupts habe ich bereits in der Startup.s direkt an den Interrupt-Vektoren, mit ein wenig Assemblercode, gemanagt. Das funktioniert gut. Jetzt die Spurious Interrupts: Interrupts können ja hier sowohl als reguläre Interrupts als auch als Default-Interrupts auftreten. Meine Idee ist, alle Interrupt-Funktionen jetzt als normale C-Funktionen zu deklarieren, die von 2 Quellen (Interrupts) angesprungen werden können, und zwar aus dem regulären Interrupt als auch aus dem Default-Interrupt-Handler, also aus 2 Quellen. Dazu rufe ich sowohl aus dem regulären Interrupt als auch aus dem Default-Handler, also von 2 verschiedenen Seiten, die Funktion auf. Im Test funktioniert das gut. Die reguläre Interrupt-Funktion, so wie sie ist, kann nicht aus dem Default-Handler aufgerufen werden. Es entstehen zwar keine Kompilier-Fehler, aber nach einem Aufruf des regulären Interrupts aus dem Default-Handler entsteht ein Undef-Abort. Ist ja auch klar, auf Grund der unterschiedlichen Rücksprungadressen und Regenerierung des Betriebsmodes. Hat da jemand Einwände, bzw. einen anderen (besseren) Vorschlag? Sehe ich was kompliziert, was auch einfach geht? Gruß Dietmar