Spurious interrupts (LPC2000)
How does Freertos handle spurious interrupts? Or how should we handle it? This regards all ARM cores with VIC (LPC2000 series).ATMEL has AIC that is spurious protected.
Spurious interrupts (LPC2000)
Can you enlighten me by what you mean ‘spurious interrupts’. Seems to mean interrupts that dont exist really? Nothing in the lpc manual.
Spurious interrupts (LPC2000)
It is mentioned in the lpc2138 manual, page 59. At this moment I’m also reading AN10414 (Handling of spurious interrupts in the LPC2000).
Interrupts can be executed during disabling them (due to async nature of VIC and pipelining).
Spurious interrupts (LPC2000)
FreeRTOS does not itself contain a spurious interrupt handler. I think such code is fairly standard and involves finding the actual interrupt cause and acting upon it accordingly. This could be application specific as each application can have different causes.
I must admit I find spurious interrupts a bit confusing. It seems to be something to do with the fact that the instructions in the pipeline are executed before the interrupt is serviced. However, my reading is that this doesnt actually happen hence my confusion.
Thanks for the AN reference, should assist.
Spurious interrupts (LPC2000)
Also read the user manual at page 59 (as I posted earlier). Philips recommends that test code (page 60) is placed in front of the interrupt routine.