Simple "backround" timer


Closed Thread
Results 1 to 5 of 5

Hybrid View

  1. #1


    Did you find this post helpful? Yes | No

    Default

    Thanks for the code protect advice but I'm using a flash PIC. I'm going to look for the Elapsed Timer now.

  2. #2
    Join Date
    Sep 2005
    Location
    Campbell, CA
    Posts
    1,107


    Did you find this post helpful? Yes | No

    Default

    Here is some code I use in an 18F8720 using a 20Mhz Xtal, You can modify the technique to run on nearly any other part. It works best when you you need accuracy over a long period, but don't need to time over very small intervals.

    '---------------------------------------------------------------------
    T0CON =$87 ' Set up TMR0 prescaler with 256 divisor


    LOOP:

    IF INTCON.2 = 1 THEN
    INTCON.2 = 0
    TMR0H = $69
    TMR0L = $7A
    GOSUB CountTime
    EndIF

    'Your code goes here'

    GOTO LOOP

    CountTime:

    Seconds = Seconds + 2
    IF Seconds = 60 THEN
    Seconds = 0
    Minutes = Minutes + 1
    .
    .
    .
    RETURN




    '-------------------------------------------------------------------------

    Explanation of what is going on above:

    Hardware Timer0 is set up with a 256 (/8) divisor
    INTCON.2 gets set whenever the timer rolls over.
    When the timer rolls over, the timer gets loaded with a value
    that insures it will time out again in 2 seconds.

    Your program executes normally, but exactly every two seconds
    the CountTime sub is executed.

    The only caveat: Your program MUST complete at least one loop every
    2 seconds!

    I have used a similar technique with the 16F series, but since the timers are "shorter", sometimes the maximum timeout is only 65 ms. Still, the procedure can be very useful.

Similar Threads

  1. Elapsed Timer Demo
    By Darrel Taylor in forum Code Examples
    Replies: 111
    Last Post: - 29th October 2012, 18:39
  2. Simple Timer question
    By jimseng in forum mel PIC BASIC Pro
    Replies: 1
    Last Post: - 25th September 2009, 00:12
  3. Timer interrupt frequency
    By Samoele in forum mel PIC BASIC Pro
    Replies: 1
    Last Post: - 18th January 2009, 00:49
  4. a simple boxe timer (code included)
    By hozone in forum Code Examples
    Replies: 24
    Last Post: - 13th October 2008, 13:57
  5. timer interupt help 16f73
    By EDWARD in forum mel PIC BASIC Pro
    Replies: 5
    Last Post: - 3rd July 2005, 09:41

Members who have read this thread : 0

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

Posting Permissions

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