Yahoo Groups archive

Lpc2000

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

Message

Re: Undocumented Timer Interrupt Feature, or Silicon Bug...

2004-10-12 by itsjustimpossible

As an aside, you MAY have cured a wierd problem I am seeing. I am 
also using Keil but with the LPC2294. I have a similar setup, MAM 
enabled, PLL to 60MHz, VPBDIV is set to 1 & 10MHz clock. I am running 
(and debugging) from internal FLASH.

Sometimes when debugging the timer interrupt would just stop working. 
Everything else appears normal.
I have added a timer stop to the interrupt and it seems to have 
helped. I don't want to appear too positive because as soon as I say 
its OK it will fail again ;-)

void tc0 (void) __irq
{
  T0TCR = 0;		// Stop the clock while we do the interrupt

  if(Auto == TRUE)DO_FAST_PULSE;
  ++timeval;

  T0IR  = 1;		// Clear interrupt flag
  T0TCR = 1;		// ReStart the clock counter
  VICVectAddr = 0;	// Acknowledge Interrupt
}

The IRQ is now as above, and so far seems OK.

Thanks for your help!
cheers
Simon

--- In lpc2000@yahoogroups.com, Robert Adsett <subscriptions@a...> 
wrote:
> At 12:42 AM 10/12/04 +0000, you wrote:
> 
> 
> >--- In lpc2000@yahoogroups.com, Robert Adsett <subscriptions@a...>
> >wrote:
> > > At 08:03 PM 10/11/04 +0000, you wrote:
> > >
> > >
> > > >...Or am I doing something wrong?
> > > No answers, only questions.
> > >
> > > You are running at full speed, ie MAM fully enabled, a divisor 
of 1
> > > on the peripheral bus?
> >
> >External clock is 10MHz, PLL is enabled and multiplies this to 
60MHz.
> >MAM is enabled and MAMTIM is set to 3. VPBDIV is set to 1. As far 
as
> >I can see, the core is working at 60MHz (e.g. baud rate divisors 
work
> >out as expected for this value). Interestingly, I tried clocking TC
> >at this rate (i.e. one count every 16.7ns) with appropriate MR
> >values. The problem I've outlined was much much worse i.e. 
interrupts
> >were lost almost immediately.
> 
> Interesting, not sure what that means but interesting.

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.