How to Set Up a Timer in PIC16F877A

How to Set Up a Timer in PIC16F877A - welcome to our blog that presents the full content How Gadget, the discussion this time we're discussing that you find that How to Set Up a Timer in PIC16F877A, we have provided complete information with images that are easy to understand, the explanation is simple but complete, therefore please read until the end :)

This is about : How to Set Up a Timer in PIC16F877A
And this article : How to Set Up a Timer in PIC16F877A

You can also see our article on:


How to Set Up a Timer in PIC16F877A



We have Three Timers in PIC16F877A , and here we have a look to how to setup the TIMER0 in PIC16F877A using HiTech C programm 




• To set up the timer, one must first disable interrupts so that an interrupt doesn’t occur when the timer expires.
• Then, enable the timer and assign the prescaler to the timer.
• Establish the prescaler value, and finally, load the timer register.
 Whenever the timer expires, the T0IF bit in the INTCON register will be set.
• We must clear this bit, reload the timer register, and then execute the code that is to be done at this time.

In code, the setup portion might look something like:
########################## IN ASSEMBLY PROGRAM ###########################
banksel INTCON
bcf INTCON,T0IE ; Mask timer interrupt
banksel OPTION_REG
bcf OPTION_REG,T0CS ; Enable timer
bcf OPTION_REG,PSA ; Prescaler to timer
bcf OPTION_REG,PS2 ; \
bsf OPTION_REG,PS1 ; >- 1:16 prescale
bsf OPTION_REG,PS0 ; /
movlw D’100’ ; Timer will count
movwf TMR0 ; 156 (256-100) counts

######################## IN HITECH C PROGRAM #######################################
OPTION_REG= 0x0F;
  TMR0=0x0F;
  while(TMR0IF=0);
  TMR0IF=0;
##################################################

• Clearly, the individual bits in the option register could all be set with a single store.
• If we didn’t care about the RB0 interrupt, the weak pullups, or the transition of RA4, then instead of five bit manipulations we could have said:
• movlw B’10000011’ ; Set up prescaler and
• movwf OPTION_REG ; timer

The execution loop might look something like:



main:
    btfss INTCON,T0IF ; Did timer overflow?
    goto main ; No, hang around some more 
    movlw D’100’ ; Timer will count
    movwf TMR0 ; 156 (256-100) counts
    bcf INTCON,T0IF ; reset overflow flag
    call DoCode ; Execute main code
    goto main ; Go back and wait





Information How to Set Up a Timer in PIC16F877A has been completed we present

A few of our information about the How to Set Up a Timer in PIC16F877A, we hope you benefit from this article

You have just read the article How to Set Up a Timer in PIC16F877A and many articles about gadget in our blog this, please read it. and url link of this article is https://howtomonetizeeverything.blogspot.com/2012/10/how-to-set-up-timer-in-pic16f877a.html Hopefully discussion articles on provide more knowledge about the world of tech gadgets.

Tag :

0 Response to "How to Set Up a Timer in PIC16F877A"

Post a Comment