ARM7: spurious interrupts

Gast #429082
Lesenswert?
• ▲
▼
Hallo,

hab mal wieder ein Problem mit den spurious interrupts beim ARM7:

Es gibt in meinem Programm nur eine Interruptquelle, und zwar
die I2C-Schnittstelle als FIQ (Fast Interrupt Request).

Wenn ich jetzt Daten über I2C an den ARM sende, springt er in
den Spurious-Interrupt-Handler:

__irq __arm void default_ISR()
{
  I2C0CONCLR=0x00000008;        //I2C-Interrupt-Flag SI löschen

  VICVectAddr=0xFF;          //VICVectAddr löschen
}

Das Problem ist jetzt, dass er die Routine immer wieder aufruft,
die Interruptanforderung wird offenbar nicht gelöscht. Sobald er
die Routine verlassen hat, ruft er sie wieder auf.

Woran könnte das liegen?

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