Yes that stops th infinite loop, but another problem remains.
It seems that the ISR dont returns. The system freezes.
Any ideas?
--- In lpc2000@yahoogroups.com, Richard Duits <yahoo@r...> wrote:
> 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/>.
> >
> >Message
Re: EINT0 on LPC2106
2005-05-09 by frumbub
Attachments
- No local attachments were found for this message.