PIC16F818-I/SO Microchip Technology Inc., PIC16F818-I/SO Datasheet - Page 99

no-image

PIC16F818-I/SO

Manufacturer Part Number
PIC16F818-I/SO
Description
18 PIN, 1.75 KB FLASH, 128 RAM, 16 I/O
Manufacturer
Microchip Technology Inc.
Datasheet

Specifications of PIC16F818-I/SO

A/d Inputs
5-Channel, 10-Bit
Cpu Speed
5 MIPS
Eeprom Memory
128 Bytes
Input Output
16
Interface
I2C/SPI
Memory Type
Flash
Number Of Bits
8
Package Type
18-pin SOIC
Programmable Memory
1.75K 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:
PIC16F818-I/SO
Manufacturer:
MICROCHIP
Quantity:
3 290
Part Number:
PIC16F818-I/SO
Manufacturer:
MICROCHIP/微芯
Quantity:
20 000
Part Number:
PIC16F818-I/SO
0
12.10.1
External interrupt on the RB0/INT pin is edge triggered,
either rising if bit INTEDG (OPTION_REG<6>) is set,
or falling if the INTEDG bit is clear. When a valid edge
appears on the RB0/INT pin, flag bit, INTF
(INTCON<1>), is set. This interrupt can be disabled by
clearing enable bit, INTE (INTCON<4>). Flag bit INTF
must be cleared in software in the Interrupt Service
Routine before re-enabling this interrupt. The INT inter-
rupt can wake-up the processor from Sleep if bit INTE
was set prior to going into Sleep. The status of Global
Interrupt Enable bit, GIE, decides whether or not the
processor branches to the interrupt vector following
wake-up. See Section 12.13 “Power-Down Mode
(Sleep)” for details on Sleep mode.
12.10.2
An overflow (FFh
flag bit, TMR0IF (INTCON<2>). The interrupt can be
enabled/disabled
TMR0IE (INTCON<5>) (see Section 6.0 “Timer0
Module”).
EXAMPLE 12-1:
 2004 Microchip Technology Inc.
MOVWF
SWAPF
CLRF
MOVWF
:
:(ISR)
:
SWAPF
MOVWF
SWAPF
SWAPF
INT INTERRUPT
TMR0 INTERRUPT
W_TEMP
STATUS, W
STATUS
STATUS_TEMP
STATUS_TEMP, W
STATUS
W_TEMP, F
W_TEMP, W
by
00h) in the TMR0 register will set
SAVING STATUS AND W REGISTERS IN RAM
setting/clearing
;Copy W to TEMP register
;Swap status to be saved into W
;bank 0, regardless of current bank, Clears IRP,RP1,RP0
;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
enable
bit,
12.10.3
An input change on PORTB<7:4> sets flag bit, RBIF
(INTCON<0>). The interrupt can be enabled/disabled
by setting/clearing enable bit, RBIE (INTCON<3>). See
Section 3.2 “EECON1 and EECON2 Registers”.
12.11 Context Saving During Interrupts
During an interrupt, only the return PC value is saved
on the stack. Typically, users may wish to save key
registers during an interrupt (i.e., W, Status registers).
This will have to be implemented in software as shown
in Example 12-1.
For PIC16F818 devices, the upper 64 bytes of each
bank are common. Temporary holding registers,
W_TEMP and STATUS_TEMP, should be placed here.
These 64 locations do not require banking and
therefore, make it easier for context save and restore.
For PIC16F819 devices, the upper 16 bytes of each
bank are common.
PORTB INTCON CHANGE
PIC16F818/819
DS39598E-page 97

Related parts for PIC16F818-I/SO