Yahoo Groups archive

Lpc2000

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

Message

Re: [lpc2000] EINT0 on LPC2106

2005-05-09 by Richard Duits

You need to clear the external interrupt (even with level sensitive 
interrupts) with like in the following code:

void eint_ISR( void )
{
  vParTestToggleLED( 0 );
    EXTINT = 1;  /* clear EINT0 */
    VICVectAddr = 0; /* acknowledge interrupt */
}


Richard Duits


frumbub wrote:

> Hello
>
> I am having problems with the EINT0 interrupt.
> I have searched the posts and tried all suggested sollutions, but my
> problem persists.
>
> The problem is that the system stays in the ISR like in an infinite loop.
>
> Code:
> void eint_ISR( void )
> {
>       vParTestToggleLED( 0 );
>       VICVectAddr = ringCLEAR_VIC_INTERRUPT;
> }
> And thats it... the vParTestToggleLED( 0 ) function just toggles a led
> one time, that is verified, but when EINT0 is triggered if flashes
> endlessly and the other processes are blocked.
>
> The EINT0 setp code:
>
> VICIntSelect &= ~( RING_VIC_CHANNEL_BIT );
> VICIntEnable |= RING_VIC_CHANNEL_BIT;
> VICVectAddr2 = ( portLONG ) vRING_ISR;
> VICVectCntl2 = RING_VIC_ENABLE | RING_VIC_CHANNEL;
>
> /* Enable EINT0 interrupt. */
> PCB_PINSEL1 |= EINT0_ENABLE;
>
> Please help me out...
>
>
>
> ------------------------------------------------------------------------
> *Yahoo! Groups Links*
>
>     * To visit your group on the web, go to:
>       http://groups.yahoo.com/group/lpc2000/
>        
>     * 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.