PIC16F684-I/ST Microchip Technology Inc., PIC16F684-I/ST Datasheet - Page 111

no-image

PIC16F684-I/ST

Manufacturer Part Number
PIC16F684-I/ST
Description
14 PIN, 3.5 KB FLASH, 128 RAM, 12 I/O
Manufacturer
Microchip Technology Inc.
Datasheet

Specifications of PIC16F684-I/ST

A/d Inputs
8-Channel, 10-Bit
Comparators
2
Cpu Speed
5 MIPS
Eeprom Memory
256 Bytes
Input Output
12
Memory Type
Flash
Number Of Bits
8
Package Type
14-pin TSSO
Programmable Memory
3.5K Bytes
Ram Size
128 Bytes
Speed
20 MHz
Timers
2-8-bit, 1-16-bit
Voltage, Range
2-5.5 V
Lead Free Status / Rohs Status
RoHS Compliant part Electrostatic Device

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
PIC16F684-I/ST
Manufacturer:
KEMET
Quantity:
1 000
Part Number:
PIC16F684-I/ST
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
PIC16F684-I/STG
Manufacturer:
LYONTEK
Quantity:
100
Part Number:
PIC16F684-I/STG
Manufacturer:
MICROCHIP
Quantity:
1 000
Part Number:
PIC16F684-I/STG
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
12.5
During an interrupt, only the return PC value is saved
on the stack. Typically, users may wish to save key
registers during an interrupt (e.g., W and STATUS
registers). This must be implemented in software.
Temporary
STATUS_TEMP should be placed in the last 16 bytes
of GPR (see Figure 2-2). These 16 locations are
common to all banks and do not require banking. This
makes context save and restore operations simpler.
The code shown in Example 12-1 can be used to:
• Store the W register
• Store the STATUS register
• Execute the ISR code
• Restore the Status (and Bank Select Bit register)
• Restore the W register
EXAMPLE 12-1:
© 2006 Microchip Technology Inc.
Note:
MOVWF
SWAPF
MOVWF
:
:(ISR)
:
SWAPF
MOVWF
SWAPF
SWAPF
Context Saving During Interrupts
The PIC16F684 does not require saving
the PCLATH. However, if computed
GOTOs are used in both the ISR and the
main code, the PCLATH must be saved
and restored in the ISR.
holding
W_TEMP
STATUS,W
STATUS_TEMP
STATUS_TEMP,W
STATUS
W_TEMP,F
W_TEMP,W
SAVING STATUS AND W REGISTERS IN RAM
registers
;Copy W to TEMP register
;Swap status to be saved into W
;Swaps are used because they do not affect the status bits
;Save status to bank zero STATUS_TEMP register
;Insert user code here
;Swap STATUS_TEMP register into W
;(sets bank to original state)
;Move W into STATUS register
;Swap W_TEMP
;Swap W_TEMP into W
W_TEMP
and
PIC16F684
DS41202D-page 109

Related parts for PIC16F684-I/ST