Yahoo Groups archive

Lpc2000

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

Message

Re: [lpc2000] Re: Timer/counter interrupt

2006-05-30 by Mukund Deshmukh

> > I have come across strange problem of time interrupt. My timer
> > interrupt routine is very simple.
> > 
> > void __attribute__ ((interrupt("IRQ"))) tc0_cmp(void);
> > 
> > /* Timer0 Compare-Match Interrupt Handler (ISR) */
> > 
> > void tc0_cmp(void)
> > 
> > {
> > 
> > T0FLG=1;
> > 
> > main1000++;
> > 
> > // haul1000++;
> > 
> > T0IR = TxIR_MR0_FLAG; // Clear interrupt flag by writing 1 to Bit 0
> > 
> > VICVectAddr = 0; // Acknowledge Interrupt (rough?)
> > 
> > }
> > 
> > The interrupt works ok. The moment I uncomment  haul1000++, the
> > first interrupt works and there after stops.
> > 
> > In short if  I increment one variable it works, if I  increment
> > more than one variable it stops.
> > 
> > The processor is LPC2138 and this is the only interrupt I am using.
> 
> What version of GCC are you using?  Version 3.3 and older had bugs in 
> the interrupt entry/exit code that could show up like this.
> 

No its winarm with gcc 4.0.


Best Regards,

Mukund Deshmukh.
Beta Computronics Pvt Ltd
10/1, IT Park, Parsodi,
Nagpur-440022
Cell - 9422113746

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.