PIC16F767-E/ML Microchip Technology, PIC16F767-E/ML Datasheet - Page 186

IC,MICROCONTROLLER,8-BIT,PIC CPU,CMOS,LLCC,28PIN,PLASTIC

PIC16F767-E/ML

Manufacturer Part Number
PIC16F767-E/ML
Description
IC,MICROCONTROLLER,8-BIT,PIC CPU,CMOS,LLCC,28PIN,PLASTIC
Manufacturer
Microchip Technology
Series
PIC® 16Fr

Specifications of PIC16F767-E/ML

Rohs Compliant
YES
Core Processor
PIC
Core Size
8-Bit
Speed
20MHz
Connectivity
I²C, SPI, UART/USART
Peripherals
Brown-out Detect/Reset, POR, PWM, WDT
Number Of I /o
25
Program Memory Size
14KB (8K x 14)
Program Memory Type
FLASH
Ram Size
368 x 8
Voltage - Supply (vcc/vdd)
4 V ~ 5.5 V
Data Converters
A/D 11x10b
Oscillator Type
Internal
Operating Temperature
-40°C ~ 125°C
Package / Case
28-VQFN Exposed Pad, 28-HVQFN, 28-SQFN, 28-DHVQFN
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
Eeprom Size
-
Lead Free Status / RoHS Status
Lead free / RoHS Compliant
PICmicro MID-RANGE MCU FAMILY
DS31012A-page 12-6
Example 12-2
in
Example 12-2:
Writing a 16-bit value to the 16-bit TMR1 register is straight forward. First the TMR1L register is
cleared to ensure that there are many Timer1 clock/oscillator cycles before there is a rollover into
the TMR1H register. The TMR1H register is then loaded, and finally the TMR1L register is loaded.
Example 12-3
Example 12-3:
; All interrupts are disabled
;
; TMR1L may have rolled over between the read of the high and low bytes.
; Reading the high and low bytes now will read a good value.
;
; Re-enable the Interrupt (if required)
CONTINUE
; All interrupts are disabled
; Re-enable the Interrupt (if required)
CONTINUE
Example
MOVF
MOVWF
MOVF
MOVWF
MOVF
SUBWF
BTFSC
GOTO
MOVF
MOVWF
MOVF
MOVWF
CLRF
MOVLW
MOVWF
MOVLW
MOVWF
12-1. This is useful if the timer cannot be stopped.
shows a routine to read the 16-bit timer value with experiencing the issues shown
shows this:
TMR1H, W
TMPH
TMR1L, W
TMPL
TMR1H, W
TMPH,
STATUS,Z
CONTINUE
TMR1H, W
TMPH
TMR1L, W
TMPL
TMR1L
HI_BYTE
TMR1H, F
LO_BYTE
TMR1H, F
Reading a 16-bit Free-Running Timer
Writing a 16-bit Free Running Timer
W
; Read high byte
;
; Read low byte
;
; Read high byte
; Sub 1st read with 2nd read
; Is result = 0
; Good 16-bit read
; Read high byte
;
; Read low byte
;
; Continue with your code
; Clear Low byte, Ensures no
;
; Value to load into TMR1H
; Write High byte
; Value to load into TMR1L
; Write Low byte
; Continue with your code
rollover into TMR1H
1997 Microchip Technology Inc.

Related parts for PIC16F767-E/ML