report unhandled interrupts

OP #1472560
Lesenswert?

Wer in der Gefahr steht, dass Interrupts zwar ausgelöst werden, aber 
dazu keine Interruptroutine besteht, wird diese Tatsache nicht mit den 
überall empfohlenen "reti"-Lücken in der Interruptvektortabelle 
erkennen.

Der angehängte Beispielcode (für einen ATMEGA8) stellt für alle 
Interrupts einen gemeinsamen Handler zur Verfügung, der mit nur 23 
Codeworten einen ggf. fehlenden Vektor bei Auslösung des Interrupts in 
einer Endlosschleife an den LEDs anzeigt.

Der Code setzt wesentlich voraus, dass auf dem Prozessor höchstens 23 
Interruptvektoren vorhanden sind.  (Bei mehr Vektoren kann der Code 
trotzdem verwendet werden, aber es wird dann Situationen geben, wo der 
auslösende Interrrupt nicht mehr eindeutig aus dem Blinkrhythmus der 
LEDs bestimmt werden kann.)
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren