PIC micro Timer Code

Here’s the minimal code to make timer 1 (a 16 bit timer) work using PICBasic. General descriptions of PIC timer variables used to control the timer: (you should be able to use these no matter what programming language you use): T1CON.0 is the first bit of the timer configuration byte, this bit is used to start and stop the timer. PIC micro Timer Code –so– T1CON.0=1, starts the timer T1CON.0=0, stops the timer TMR1H is the timer value’s high byte (bits 8-15) TMR1L is the timer value’s low byte (bits 0-7) –so– TMR1H = 0 ‘resets the timer value’s high byte TMR1L = 0 ‘resets the timer value’s low byte –and– MyTime.Lowbyte = TMR1L ‘puts the timer’s low byte in MyTime’s lower 8 bits MyTime.Highbyte = TMR1H ‘puts the timer’s high byte in MyTime’s upper 8 bits NOTE: the MyTime should be declared as a word, not a byte since it has to be 16 bits long to hold the whole 16 bit timer1 value NOTE: When writing to or reading from the timer, it is very important in which order it is done. When reading the timer values you have to read first the LOW then the HIGH byte. When writing the timer values write first the HIGH then the LOW, this is due to complications in how the timer works.   For more detail: PIC micro Timer Code

Leave a Comment

= 4 + 4

Read previous post:
Long Period Astable Timer
Long Period Astable Timer using PIC12F629

Description This software functions as a long period astable mutivibrator.  The mark and space period can be set from 1...

Scroll to top