Yahoo Groups archive

Lpc2000

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

Message

Re: EINT2 Problems on LPC2124

2005-09-07 by fbpmania

Hey Gilles Faurie,

i checked the Errata sheet and build in the workaround.
I´ve modified my Code to this:

void init_interrupts(void){
  SCB_MEMMAP = 1;         //interrupt vectors reside in flash
  toggle_led(28);toggle_led(28);toggle_led(28); // Function Start -
Blink 3 times
  VICProtection = 0;  //No Protection
  VICIntEnClear = 0xffffffff;  //Clear all Interrupts
  
  SCB_VPBDIV = 0x00;				// --- workaround for EXTINT2 bug
  SCB_EXTMODE = 0x04;				// set mode for EINT2
  SCB_VPBDIV = 0x02;				// ---
  SCB_VPBDIV = 0x01;				// --- end workaround
  SCB_EXTINT = 0x04;				// clear INT flags 
  VICIntSelect = 0x00000000;		// EINT2 is IRQ
  toggle_led(25);
  VICIntEnable = (1<<VIC_EINT2);	// Enable EINT2
  VICVectAddr0 = (unsigned long)EINT2_ISR;
  VICVectCntl0 = (1<<5) | (1<<VIC_EINT2);
  toggle_led(25);
  enableIRQ();
  toggle_led(25);
}

EnableIRQ comes from the armVIC.h , which is in the example dir of
WinARM.
My problem is, that the System hangs now on the execution of
"enableIRQ()".

Could it be, that there are some Problems with my Startup Code ?
I use the Startupcode from the UART Example included in WinARM.

Greetings

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.