PIC16F87XA
FIGURE 1-2:
PIC16F874A/877A BLOCK DIAGRAM
13
8
PORTA
Data Bus
Program Counter
FLASH
RA0/AN0
RA1/AN1
Program
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RA4/T0CKI/C1OUT
RA5/AN4/SS/C2OUT
RAM
File
Registers
Memory
8 Level Stack
(13-bit)
Program
Bus
14
PORTB
RAM Addr(1)
9
RB0/INT
RB1
RB2
RB3/PGM
RB4
Addr MUX
Instruction reg
Indirect
Addr
7
Direct Addr
8
RB5
FSR reg
RB6/PGC
RB7/PGD
STATUS reg
8
PORTC
RC0/T1OSO/T1CKI
RC1/T1OSI/CCP2
RC2/CCP1
3
MUX
Power-up
Timer
RC3/SCK/SCL
RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
Oscillator
Instruction
Decode &
Control
Start-up Timer
ALU
Power-on
Reset
8
Timing
Generation
Watchdog
Timer
W reg
PORTD
OSC1/CLKIN
OSC2/CLKOUT
Brown-out
Reset
RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7
In-Circuit
Debugger
Low-Voltage
Programming
PORTE
MCLR VDD, VSS
RE0/AN5/RD
RE1/AN6/WR
RE2/AN7/CS
Timer2
Timer0
Timer1
10-bit A/D
USART
Parallel Slave Port
Voltage
Synchronous
Serial Port
Data EEPROM
Comparator
CCP1,2
Reference
Device
Program FLASH
Data Memory
Data EEPROM
PIC16F874A
PIC16F877A
4K words
8K words
192 Bytes
368 Bytes
128 Bytes
256 Bytes
Note 1: Higher order bits are from the STATUS register.
2001 Microchip Technology Inc.
Advance Information
DS39582A-page 7