Working clock example using 32K watch crystal


Closed Thread
Results 1 to 20 of 20

Hybrid View

  1. #1
    Join Date
    Jan 2005
    Location
    Boston MA
    Posts
    19


    Did you find this post helpful? Yes | No

    Default

    Thank you Bruce
    Smaller, tighter, yet perfect speed. Started the clock last night with your change and so far the PIC18F452 has not gained or lost one second.
    Tim C

  2. #2
    Join Date
    May 2004
    Location
    NW France
    Posts
    3,653


    Did you find this post helpful? Yes | No

    Default

    Hi,

    I didn't see that one :
    http://www.pbpgroup.com/modules/wfse...hp?articleid=8

    did I miss something ???

    Alain
    ************************************************** ***********************
    Why insist on using 32 Bits when you're not even able to deal with the first 8 ones ??? ehhhhhh ...
    ************************************************** ***********************
    IF there is the word "Problem" in your question ...
    certainly the answer is " RTFM " or " RTFDataSheet " !!!
    *****************************************

  3. #3
    Join Date
    Jan 2005
    Location
    Boston MA
    Posts
    19


    Did you find this post helpful? Yes | No

    Default

    Alain,
    Darrel's great example uses one crystal mine uses 2. And oh if something is sitting there soldered to the dev board and you don't have code to see if it works!!

  4. #4
    Join Date
    May 2004
    Location
    NW France
    Posts
    3,653


    Did you find this post helpful? Yes | No

    Default

    Quote Originally Posted by timc View Post
    Alain,
    Darrel's great example uses one crystal mine uses 2. And oh if something is sitting there soldered to the dev board and you don't have code to see if it works!!
    Hi, Timc

    Lol ... I didn't remember I had modified Darrel's code to use a 32 Khz Xtal ...

    and thought it was already done in the original release ...

    Here it is.

    Alain
    Attached Files Attached Files
    ************************************************** ***********************
    Why insist on using 32 Bits when you're not even able to deal with the first 8 ones ??? ehhhhhh ...
    ************************************************** ***********************
    IF there is the word "Problem" in your question ...
    certainly the answer is " RTFM " or " RTFDataSheet " !!!
    *****************************************

  5. #5
    Join Date
    Jul 2003
    Location
    Colorado Springs
    Posts
    4,959


    Did you find this post helpful? Yes | No

    Default

    There's a couple good examples. I like Bruce's.
    But it uses in-line assembly language instead of straight PBP.

    The Elapsed Timer modification is nice too ... but ...

    Nobody wins the LCD's.
    DT

  6. #6
    Join Date
    Sep 2009
    Posts
    755


    Did you find this post helpful? Yes | No

    Default Re: Working clock example using 32K watch crystal

    I was playing with TimC RTC code, and I found 1 problem...
    If the interrupt occurs between these lines
    Code:
          GoSub get_time      ' Update minutes and seconds
          TOGGLE LED_0
          LCDOut $fe,2,"Time: ",DEC hours, ":", DEC2 minutes, ":", DEC2 seconds, "   "
    There is a chance to show 60 seconds.
    It happened to me, so I then wondered what was going on...
    Solution:
    Code:
    seconds        VAR BYTE bankA  ' variables within myint must be in bank 0.
    minutes        VAR Byte bankA       ' Elapsed minutes
    hours          var byte bankA
    :
    :
    :
    @myint                  ; create myint label
       TMR1H.7=1
        seconds = seconds+1  ' Increment second
        if seconds > 59 then
            seconds = seconds - 60    ' better then making seconds=0
            minutes = minutes + 1
            if minutes > 59 then
                minutes = 0
                hours = hours + 1
                if hours > 12 then hours = 1    ' simple 12 hour clock format
            endif
        endif 
     PIR1.0=0             ' Clear TMR1 int flag
       @ retfie  FAST
    And remove get_time procedure
    Last edited by pedja089; - 25th May 2011 at 00:11. Reason: Repair CODE tag's

  7. #7
    Join Date
    Sep 2009
    Posts
    755


    Did you find this post helpful? Yes | No

    Default Re: Working clock example using 32K watch crystal

    I'm trying to add the calendar.
    Does anyone have an idea how to make a calculation of leap year.
    I tried this
    If day>30+month.0 or (Month=2 and day>28 and year//4<>0) or (Month=2 and day>29 and year//4=0)then
    month=month+1
    but the code is 300b larger then this
    If day>30+month.0 or (Month=2 and day>28)then
    month=month+1
    Is there a more efficient way?

Members who have read this thread : 0

You do not have permission to view the list of names.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts