Yahoo Groups archive

Lpc2000

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

Message

VIC Programming Model

2004-05-10 by James Dabbs

On Page 70 of my LPC210X User's Manual..

"Although multiple sources can be selected (VICIntSelect) to generate
FIQ request, only one interrupt service routine should be dedicated to
service all available/present FIQ request(s). Therefore, if more than
one interrupt sources are classified as FIQ the FIQ interrupt service
routine must read VICFIQStatus to decide based on this content what to
do and how to process the interrupt request.  However, it is recommended
that only one interrupt source should be classified as FIQ. Classifying
more than one interrupt sources as FIQ will increase the interrupt
latency."

I don't understand why I need to look at VICFIQStatus.  Can't I just put
a "mov pc,[pc,#-0xfec]" at address 0x1c? As long as my IRQ and FIQ
interrupt service routines know what to do, it seems like this should
work without having to go further to determine the source of the
interrupt.  In fact, in non-preemptive designs, I don't know why you
wouldn't make everything FIQ.

What am I missing?

Thanks,

James Dabbs, TGA

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.