Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Message

Re: WARNING: problem reading state of external interrupt lines.

2005-12-18 by Thiadmer Riemersma (ITB CompuPhase)

Hello Brendan,

> It sounds like you have a separate problem with your PCB. 

We DO have a problem with one particular board (we have tested only 20
so far, but this fault is only present on one of these).

However, we doubt that this is an unrelated problem. To explain it, I
need a little detour.

In normal operation, the board gets an interrupt every 25 ms
(roughly). This is an interrupt on the rising flank of a "data
request" line of an external chip. On an interrupt, the ISR toggles an
semaphore so that a high priority task will run. This high priority
task must push data over a serial link until the external chip drops
the data request line.

There is no way of knowing beforehand how many bytes to push,
monitoring the data request line is the only option. Which is why the
task toggles the pin from EINT0 to GPIO. When it is done pushing the
data, it toggles it back.

What we experienced on the one faulthy board were watchdog resets. We
traced this back to the high priority task running continously (the
watchdog is "tickled" by a lower priority task). We traced that back
to the ISR getting a flank interrupt even though the data request line
was low. This was our spurious interrupt. Our hypothesis is that
toggling GPIO to EINT0 caused this interrupt.

So your forum message rang a bell.

That said,... 

1) such a failure could hardly be missed on the other 19 boards that
we tested: watchdog resets are quite noticible;

2) when we exerted pressure on the board (bending the PCB slightly)
the board functioned normally: the spurious interrupts went away (and
no other disfunctionality was detected).

We will still keep an eye on this "spurious interrupt" issue. For
instance, I am implementing a test in the firmware that checks
specifically for this issue. But for the moment, we are unconvinced
that spurious interrupts (under these conditions) are "by design" for
the LPC2000 series.

Kind regards,
Thiadmer

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.