PIC17C756A-33/L Microchip Technology Inc., PIC17C756A-33/L Datasheet - Page 99

no-image

PIC17C756A-33/L

Manufacturer Part Number
PIC17C756A-33/L
Description
68 PIN, 32 KB OTP, 902 RAM, 50 I/O
Manufacturer
Microchip Technology Inc.
Datasheet

Specifications of PIC17C756A-33/L

A/d Inputs
12-Channel, 10-Bit
Cpu Speed
8.25 MIPS
Eeprom Memory
0 Bytes
Input Output
52
Interface
I2C/SPI/USART
Memory Type
OTP
Number Of Bits
8
Package Type
68-pin PLCC
Programmable Memory
32K Bytes
Ram Size
902 Bytes
Speed
16 MHz
Timers
2-8-bit, 2-16-bit
Voltage, Range
3-5.5 V
Lead Free Status / Rohs Status
RoHS Compliant part

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC17C756A-33/L
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
PIC17C756A-33/L
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
PIC17C756A-33/L-G
Manufacturer:
MICOROCHIP
Quantity:
1 000
Part Number:
PIC17C756A-33/L-G
Manufacturer:
MICOROCHIP
Quantity:
20 000
12.3
Although TMR0 is a 16-bit timer/counter, only 8-bits at
a time can be read or written during a single instruction
cycle. Care must be taken during any read or write.
12.3.1
The problem in reading the entire 16-bit value is that
after reading the low (or high) byte, its value may
change from FFh to 00h.
Example 12-1 shows a 16-bit read. To ensure a proper
read, interrupts must be disabled during this routine.
EXAMPLE 12-1:
FIGURE 12-3:
MOVPF
MOVPF
MOVFP
CPFSLT
RETURN
MOVPF
MOVPF
RETURN
2000 Microchip Technology Inc.
AD15:AD0
Instruction
Executed
TMR0H
TMR0L
Read/Write Consideration for
TMR0
Fetch
TMR0L, TMPLO
TMR0H, TMPHI
TMPLO, WREG
TMR0L
TMR0L, TMPLO
TMR0H, TMPHI
ALE
READING 16-BIT VALUE
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
16-BIT READ
TMR0 TIMING: WRITE HIGH OR LOW BYTE
T0
PC
;read low tmr0
;read high tmr0
;tmplo
;tmr0l < wreg?
;no then return
;read low tmr0
;read high tmr0
;return
MOVFP W,TMR0L
Write to TMR0L
T0+1
wreg
PC+1
MOVFP TMR0L,W
(Value = NT0)
Read TMR0L
New T0 (NT0)
PC+2
12.3.2
Since writing to either TMR0L or TMR0H will effectively
inhibit increment of that half of the TMR0 in the next
cycle (following write), but not inhibit increment of the
other half, the user must write to TMR0L first and
TMR0H second, in two consecutive instructions, as
shown in Example 12-2. The interrupt must be dis-
abled. Any write to either TMR0L or TMR0H clears the
prescaler.
EXAMPLE 12-2:
12.4
Timer0 has an 8-bit prescaler. The prescaler selection
is fully under software control; i.e., it can be changed
“on the fly” during program execution. Clearing the
prescaler is recommended before changing its setting.
The value of the prescaler is “unknown” and assigning
a value that is less than the present value, makes it dif-
ficult to take this unknown time into account.
BSF
MOVFP
MOVFP
BCF
Prescaler Assignments
MOVFP TMR0L,W
CPUSTA, GLINTD ; Disable interrupts
RAM_L, TMR0L
RAM_H, TMR0H
CPUSTA, GLINTD ; Done, enable
WRITING A 16-BIT VALUE TO TMR0
(Value = NT0)
Read TMR0L
PC+3
16-BIT WRITE
PIC17C7XX
MOVFP TMR0L,W
;
;
;
(Value = NT0 +1)
New T0+1
Read TMR0L
PC+4
interrupts
DS30289B-page 99

Related parts for PIC17C756A-33/L