1.0
DEVICE OVERVIEW
This document contains device specific information.
Additional information may be found in the PIC
Mid-Range Reference Manual (DS33023), which may
be obtained from your local Microchip Sales Represen-
tative or downloaded from the Microchip website. The
Reference Manual should be considered a complemen-
tary document to this data sheet, and is highly recom-
mended reading for a better understanding of the device
architecture and operation of the peripheral modules.
FIGURE 1-1:
PIC16F873 AND PIC16F876 BLOCK DIAGRAM
Program
Device
FLASH
PIC16F873
4K
PIC16F876
8K
FLASH
Program
Memory
Program
14
Bus
Instruction reg
Instruction
Decode &
Control
Timing
Generation
OSC1/CLKIN
OSC2/CLKOUT
Timer0
Data EEPROM
CCP1,2
Note 1: Higher order bits are from the STATUS register.
1998-2013 Microchip Technology Inc.
®
MCU
Data
Data Memory
EEPROM
192 Bytes
128 Bytes
368 Bytes
256 Bytes
13
Program Counter
8 Level Stack
(13-bit)
RAM Addr
7
Direct Addr
8
Power-up
Timer
Oscillator
Start-up Timer
Power-on
Reset
Watchdog
Timer
Brown-out
Reset
In-Circuit
Debugger
Low Voltage
Programming
V
, V
MCLR
DD
SS
Timer1
Timer2
Synchronous
Serial Port
There are four devices (PIC16F873, PIC16F874,
PIC16F876 and PIC16F877) covered by this data
sheet. The PIC16F876/873 devices come in 28-pin
packages and the PIC16F877/874 devices come in
40-pin packages. The Parallel Slave Port is not
implemented on the 28-pin devices.
The following device block diagrams are sorted by pin
number; 28-pin for Figure 1-1 and 40-pin for Figure 1-2.
The 28-pin and 40-pin pinouts are listed in Table 1-1
and Table 1-2, respectively.
8
Data Bus
RAM
File
Registers
(1)
9
Addr MUX
Indirect
8
Addr
FSR reg
STATUS reg
3
MUX
ALU
8
W reg
10-bit A/D
USART
PIC16F87X
PORTA
RA0/AN0
RA1/AN1
RA2/AN2/V
-
REF
RA3/AN3/V
+
REF
RA4/T0CKI
RA5/AN4/SS
PORTB
RB0/INT
RB1
RB2
RB3/PGM
RB4
RB5
RB6/PGC
RB7/PGD
PORTC
RC0/T1OSO/T1CKI
RC1/T1OSI/CCP2
RC2/CCP1
RC3/SCK/SCL
RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
DS30292D-page 5
Need help?
Do you have a question about the PIC16F87X and is the answer not in the manual?