Yahoo Groups archive

Lpc2000

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

Message

Re: [lpc2000] {To TomW} GCC-Bug in IRQs

2006-03-25 by David Hawkins

> YES, something like that! ;-) But without nesting and change of cpu-mode.

Then perhaps this :)

irq_isr:
     sub   lr, lr, #4
     stmfd sp!, {r0-r3, ip, lr}
     bl irq_handler
     ldmfd sp!, {r0-r3, ip, pc}^


/* VICVectAddr dispatch loop */
void irq_handler(void)
{
	/* Process IRQ interrupts */
	irq_handler_t handler;
	while (VICIRQStatus) {
		/* Get the address of the highest priority handler */
		handler = (irq_handler_t)VICVectAddr;

		/* Execute the handler */
		(*handler)();

		/* Acknowledge the VIC */
		VICVectAddr = 0;
	}
}

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.