Yahoo Groups archive

Lpc2000

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

Message

Re: [lpc2000] U1 IRQ works too well (sometimes)

2006-01-10 by Richard Duits

You need to check U1IIR (Interrupt Identification Register) and not 
U1LSR (Line Status Register). Also Bit 0 of IIR is 1 if there is no 
interrupt pending.

Richard.



nonuckingfumber wrote:

> I have a strange problem.
>
> I am using a vectored IRQ on UART1. Sometimes I boot the application
> and it works fine. Other times I boot it and it locks up on the IRQ
> vector handler, that is it keeps re-entering the IRQ handler and never
> process the 'main loop'.
>
> On Entry to the IRQ handler, VICIRQStatus=0x80, indicating Uart1, but
> the U1LSR register is 0 (most of the time, regular int's also occur).
> I am writing 0 to the VICVectAddr at the end of the routine, and like
> I said, sometimes it works fine.
>
> Is there some condition where it is possible to have a U1 interuppt
> when U1LSR=0?
>
>
>
>
>
> ------------------------------------------------------------------------
> YAHOO! GROUPS LINKS
>
>     *  Visit your group "lpc2000
>       <http://groups.yahoo.com/group/lpc2000>" on the web.
>        
>     *  To unsubscribe from this group, send an email to:
>        lpc2000-unsubscribe@yahoogroups.com
>       <mailto:lpc2000-unsubscribe@yahoogroups.com?subject=Unsubscribe>
>        
>     *  Your use of Yahoo! Groups is subject to the Yahoo! Terms of
>       Service <http://docs.yahoo.com/info/terms/>.
>
>
> ------------------------------------------------------------------------
>

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.