Yahoo Groups archive

Lpc2000

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

Message

Re: [lpc2000] Re: RTC manipulation (ctd.)

2004-12-24 by Leighton Rowe

Have u experienced this problem too? I decided to rest the matter since nobody else could reproduce the problem or find the bug in my code (if any).

lp2000c <lp2000c@...> wrote:

Did you ever resolve this issue, or confirm that there is a bug?

--- In lpc2000@yahoogroups.com, "Leighton Rowe" <leightonsrowe@y...> 
wrote:
> 
> Yep,
> 
> PLLSTAT says that the PLL's enabled, connected & locked.
> 
> I'm running the code on a mcb2100 as well (12MHz crystal). I made a 
> mistake about the processor on the mcb2100 though...it's actually a 
> 2124 that replaced the original 2129 (it got toasted :-/). 
> My other board is the 2114 with a 14.7456MHz xtal.
> 
> So, I'd imagine the code will work ok on all 2129's, as you've 
> shown. There might be an issue with 2114/24's I'm using. I'm trying 
> to verify that with Philips...or anyone here that has them.
> 
> best regards,
> Leighton
> 
> --- In lpc2000@yahoogroups.com, "Pete" <peterbrown_abroad@y...> 
> wrote:
> > 
> > 
> > Hi Leighton,
> > 
> > Im using the MCB2100 development board from Keil for the time 
> being. 
> > Our main control unit is in development as we speak...
> > 
> > anyway, the MCB is stuffed with the LPC2129, crystal of 12Mhz.
> > 
> > I have tested my system using YOUR CODE that you pasted below, 
and 
> I 
> > agree with my previous answers...the clock WORKS OK at all VPBDiv 
> > settings....
> > 
> > i print the time to terminal (38400baud) and monitor the time for 
> > several minutes and it certainly does not run fast (or fast 
enough 
> > to visually see anyway!)...
> > 
> > so i am very confused why you see this problem....
> > 
> > so i guess i cannot help any further.... but hope the above helps 
> a 
> > little....
> > 
> > daft question - are u sure that your PLL is enabled and running?
> > 
> > let me know if you find the solution,
> > rgds
> > pete
> > 
> > 
> > 
> > --- In lpc2000@yahoogroups.com, "Leighton Rowe" 
> <leightonsrowe@y...> 
> > wrote:
> > > 
> > > Thanks for your results
> > > 
> > > What lpc are you using by the way? Is your RTC counting at the 
> > right 
> > > speed when VPBDIV=0? Try comparing the RTC timers against a 
> normal 
> > > clock if u can.
> > > 
> > > I tried your code on my 12 MHz board (M=5), and this is what I 
> get.
> > > VPBDIV = 0 so VPB = 15MHz (cclk/4)
> > > PREINT = 0x000001c8;
> > > PREFRAC = 0x000061c0;
> > > RTC runs OK, but it's going twice as fast.
> > > ....
> > > VPBDIV = 1 then  VPB = 60MHz (cclk)
> > > PREINT = 0x00000726;
> > > PREFRAC = 0x00000700;
> > > RTC runs OK. Speed is normal.
> > > ....
> > > VPBDIV = 2 then  VPB = 30MHz (cclk/2)
> > > PREINT = 0x00000392;
> > > PREFRAC = 0x00004380;
> > > RTC runs OK. Speed is normal.
> > > 
> > > For now, It's still unsolved over here.
> > > 
> > > Thanks,
> > > Leighton
> > > 
> > > I've included pieces of my code just for reference.
> > > ************************************
> > > #define XTAL_FREQ     12000000
> > > //#define XTAL_FREQ     14745600
> > > #define MULTIPLIER    5
> > > //#define MULTIPLIER    4
> > > #define CCLK          (XTAL_FREQ * MULTIPLIER)      // system 
> > clock 
> > > system clock (cclk)
> > > #define PCLK          (CCLK / 2)
> > > //#define PCLK          CCLK
> > > //#define PCLK          (CCLK / 4)
> > > 
> > > if(PCLK == CCLK)
> > > { 
> > >   VPBDIV = 1;
> > > }
> > > else if(PCLK == CCLK/2)
> > > { 
> > >   VPBDIV = 2;
> > > }
> > > else if(PCLK == CCLK/4)
> > > { 
> > >   VPBDIV = 0;
> > > }
> > > 
> > > CCR = AMR = CIIR = ILR = 0;   //clear all RTC Misc registers
> > > SEC = MIN = HOUR = 0;       //clear timer registers being used
> > > 
> > > //Setup Prescalar Values
> > > PREINT = (PCLK/32768) - 1;               //integer value
> > > PREFRAC =PCLK - ((PREINT + 1)* 32768);   //fraction value
> > > 
> > > CCR |= 2;                         //reset timer
> > > CCR &= ~2;
> > > CCR |= 1;                        //start timer
> > > 
> > > 
> > > 
> > > 
> > > --- In lpc2000@yahoogroups.com, "Pete" <peterbrown_abroad@y...> 
> > > wrote:
> > > > 
> > > > 
> > > > ok, got home and have tried on my dev board...
> > > > Using a 12Mhz crystal, I configured the VPBDiv=0
> > > > 
> > > > As a result modified the Fac and Int settings to:
> > > > PREINT             = 0x000001c8;//Set RTC prescaler for 
> > > 12.000Mhz Xtal,
> > > >       VBP=15Mhz
> > > > PREFRAC       = 0x000061c0;
> > > > 
> > > > using the calculations from databook.
> > > > 
> > > > I also then had to change my UART settings to match, sicne 
the 
> > > PCLK 
> > > > was now 1/4.....
> > > > Anyway: ALL WORKS OK. RTC functions normally.
> > > > 
> > > > Can you check what values you used for the Prefac/int when 
you 
> > > > adjusted the VPBDiv?
> > > > 
> > > > Or, since you have it working maybe issue is closed?
> > > > 
> > > > anyway, thought i would report my findings!
> > > > 
> > > > rgds
> > > > pete
> > > > 
> > > > 
> > > > So I am confused that you say you had problem with the 
> > > > 
> > > > --- In lpc2000@yahoogroups.com, "bty639886" 
<peter.brown@b...> 
> > > wrote:
> > > > > 
> > > > > when i get home i will check this out on my systsem.
> > > > > 
> > > > > I do however have a 12Mhz clock rather than the 14.xx that 
u 
> > are 
> > > > > using. So my preints and facs will be different.
> > > > > Im suspecting the problem could well be with your prefac 
> being 
> > 0 
> > > > > given the divider settings...
> > > > > 
> > > > > anyway, i will check it out and re-post for future 
reference.
> > > > > 
> > > > > glad you got it working !
> > > > > rgds
> > > > > pete
> > > > > 
> > > > > 
> > > > > --- In lpc2000@yahoogroups.com, "Leighton Rowe" 
> > > > <leightonsrowe@y...> 
> > > > > wrote:
> > > > > > 
> > > > > > > 3. have you tried running with vpbdiv set to 1 (ie 
> > resulting 
> > > > in 
> > > > > > > 60mhz opertion (ish).. i am using that for my system 
> > without 
> > > > any 
> > > > > > > problem...
> > > > > > 
> > > > > > Good news!
> > > > > > 
> > > > > > After setting VPBDIV = 1 (pclk =cclk) and setting PREINT 
> and 
> > > > > PREFRAC 
> > > > > > (based on the user manual), the RTC counted correctly. 
> > Thanks 
> > > > > Pete. 
> > > > > > The RTC also worked for VPBDIV = 2 (pclk = cclk/2).
> > > > > > 
> > > > > > But interestingly, the RTC still counted twice as fast 
> after 
> > > > using 
> > > > > > VPBDIV = 0. I repeated everything on 2 different lpcs 
> > (lpc2114 
> > > > > > @14.7456MHz & lpc2129 @12MHz). You can even try it out on 
> > your 
> > > > > own; 
> > > > > > I wouldn't be surprised you'll get the same results. and 
> got 
> > > the 
> > > > > > same results. 
> > > > > > 
> > > > > > So RTC's OK only when vpbdiv = 1 (pclk=cclk) or 2 (pclk = 
> > > > cclk/2). 
> > > > > > Otherwise RTC's doubles in speed when vpbdiv = 0 
(cclk/4). 
> I 
> > > > hope 
> > > > > > Philips has an explanation for this one...I have no clue 
> > why. 
> > > > > > 
> > > > > > For now, I can live with using a different vpbdiv setting 
> to 
> > > > make 
> > > > > > everything work. 
> > > > > > 
> > > > > > Thanks again




Yahoo! Groups SponsorADVERTISEMENT


---------------------------------
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
  
   Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service. 


		
---------------------------------
Do you Yahoo!?
 All your favorites on one personal page � Try My Yahoo!

[Non-text portions of this message have been removed]

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.