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-12 by brendanmurphy37

Thiadmer,

Thanks for the suggestion. However, we've determined that it's 
definitely a "feature" of the LPC213x. The reason I phrased it as I 
did was that we didn't investigate all possible variations. However, 
the following definitely produces a "spurious" interrupt:

- place a high value on the P0.20 pin (and don't change it)
- configure EINT3 on P0.20 to generate an interrupt on a rising edge
- change the pin from EINT3 to GPIO
- read the pin value
- change it back to EINT3
- result: unexpected interrupt

There are many possible work-arounds for this: a simple and obvious 
one is just to take the interrupt (knowing it's spurious).

The points I was warning against are that:

- you can't read a pin value on the LPC213x without changing it to 
GPIO

- it can give an unexpected interrupt (unexpected in this case as no 
rising edge has happened on the pin and yet you get an interrupt)

As I said, we haven't investigated all possible combinations (e.g. 
rising/falling edge; edge/level; high/low value on i/p pin). There 
may or may not be other combinations where you see this.

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

Regards
Brendan

--- In lpc2000@yahoogroups.com, "Thiadmer Riemersma (ITB 
CompuPhase)" <go@c...> wrote:
>
> Hello Brendan Murphy,
> 
> On our LPC2138-based design, we noticed too that you cannot use a 
pin
> as EINT and GPIO at the same time, and we used the same work-
around:
> reconfigure the pin to GPIO after detecting the interrupt.
> 
> So far, only one board (out of approximately 20) gave the "spurious
> interrupt" that you described, and on this board, the spurious
> interrupt goes away when we bend the board (very) slightly. Our
> hypothesis was that there is a problem in the PCB, and that perhaps
> some ground or power wire is floating.
> 
> In your message, you mention that the spurious interrupt occurs
> "depending on the mode of the interrupt and the state of the pin". 
I
> am interested in the conditions that the interrupt does and does 
not
> appear.
> 
> If your hypothesis (that this spurious interrupt is a 
feature/property
> of the LPC2000 series) is correct, then I will have to consider
> implementing a work-around in the firmware. But if our hypothesis
> (that this is due to a broken PCB or a design error in the PCB) is
> correct, you may want to review your PCB.
> 
> Kind regards,
> Thiadmer Riemersma
>

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.