Yahoo Groups archive

Lpc2000

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

Thread

Interrupt vectors

Interrupt vectors

2004-11-03 by robert.wood@apostrophe.co.uk

Hi folks,

I'm just trying to make sure I understand the way the ARM devices
service interrupts. It looks like the peripherals have an interrupt
number assigned to them and they are assigned to one of sixteen
interrupt vectors; therefore, if an peripheral is assigned to, say,
vector 3, when the interrupt occurs the program will jump to the
address stored in VICVectAddr3. 

All reasonably easy to understand. What it also seems to indicate
though is that each peripheral only has one interrupt number you can
assign to each vector. So, for example, if a UART flags up an
interrupt, you won't know, until you go to the interrupt vector and
check the flags, whether it's a transmit, receive or error interrupt.
Is that correct? Seems a bit primitive if so! 

Cheers,

Rob

Re: [lpc2000] Interrupt vectors

2004-11-03 by microbit

Hi Robert,

> All reasonably easy to understand. What it also seems to indicate
> though is that each peripheral only has one interrupt number you can
> assign to each vector. So, for example, if a UART flags up an
> interrupt, you won't know, until you go to the interrupt vector and
> check the flags, whether it's a transmit, receive or error interrupt.
> Is that correct? Seems a bit primitive if so! 

Yes, the INT handler needs to check in IIR register (low nibble) whether
it's an RDA, char Timeout, THE, or some error INT.
Seemingly silly, bit like an 8051, but I'm sure there's a reason for it....
I personally don't like it either.
Could be worse though, we could still have a single INT vector on a PIC :-)

-- Kris

Re: [lpc2000] Interrupt vectors

2004-11-04 by Robert Wood

Hi Kris,

>> Could be worse though, we could still have a single INT vector on a PIC :-) 
<<

<lol>

Isn't it amazing how many people are on this *and* the MSP430 group? And 
someone just posted about Codevision too. I think I'm being stalked! ;-) 

Cheers,

Rob

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.