Microchip Technology

PIC16F877-10E/P - 8-Bit 10MHz 14KB FLASH MCU | Microchip | DIP-40

MPN: PIC16F877-10E/P ✓ Active
In Stock Ships in 1-3 business days
4.0 V to 5.5 V (10 MHz grade) Vdss 40-pin PDIP (P) Package 10 MHz (200 ns instruction cycle, 5 MIPS) Speed 14 KB Flash (8K x 14 words) Memory
From $4.3 USD / Unit
MOQ: 1 |
Price updated: 2026-09-21
Volume Pricing
Qty Unit Price Extended
1 $7.1 $7.10
10 $6.39 $63.90
100 $5.4 $540.00
500 $4.82 $2,410.00
1,000 $4.3 $4,300.00
ℹ️ All prices are in USD

PIC16F877-10E/P Overview

The Microchip Technology PIC16F877-10E/P is a CMOS Flash-based 8-bit microcontroller in the PIC16F family, delivering 10 MHz maximum CPU clock (200 ns instruction cycle) from 14 KB of on-chip Flash program memory in a 40-pin PDIP package. It offers 368 bytes of RAM, 256 bytes of EEPROM, and 33 digital I/O pins organized across five ports (PORTA–PORTE), making it one of the most widely deployed mid-range PIC microcontrollers for embedded control. The -10E suffix indicates the 10 MHz speed grade and the Extended (E) industrial temperature range of -40 °C to +125 °C.

An 8-bit microcontroller (MCU) is a single-chip computer built around an 8-bit data path, integrating a CPU core, program memory, data RAM, non-volatile EEPROM, timers, and configurable peripherals. The PIC16F877 belongs to the mid-range PIC16 family, which sits hierarchically between the baseline PIC10/12/16/17 families and the high-performance PIC18/dsPIC33 families within Microchip's 8-bit MCU portfolio. It executes a RISC instruction set of only 35 single-word instructions, which simplifies code development, accelerates interrupt latency, and enables deterministic real-time behavior ideal for control loops.

Key features include an integrated 10-bit Analog-to-Digital Converter (ADC) with 8 input channels, two 8-bit timers (Timer0, Timer2) plus one 16-bit timer (Timer1), two Capture/Compare/PWM (CCP) modules, a Synchronous Serial Port (SSP) configurable as either SPI or I²C, a USART for asynchronous or synchronous serial communication, and a parallel Slave Port (PSP) for external bus interfacing. The device also integrates a brown-out reset (BOR), power-on reset (POR), watchdog timer (WDT), and in-circuit serial programming (ICSP) capability, allowing field firmware updates without removing the device from the board.

Architecturally, the PIC16F877 uses a Harvard memory architecture with separate program and data buses, a 14-bit instruction word, and a hardware stack 8 levels deep. The Harvard layout allows simultaneous instruction fetch and data access, giving the 10 MHz oscillator a true 5 MIPS throughput. In-circuit debugging (ICD) is supported through two of the I/O pins, enabling developers to step through code in real time using Microchip's MPLAB ICD tools. The Flash-based program memory supports 100,000 erase/write cycles typical, and the EEPROM supports 1,000,000 cycles, providing long-term reliability for parameter storage.

Typical applications include industrial automation and motor control (HVAC, fans, small pumps), consumer electronics (washing machines, microwave ovens, remote controls), educational development boards and hobbyist projects, automotive body and accessory modules (non-safety-critical), and instrument front panels with mixed digital/analog I/O. The wide operating voltage range (typically 2.0 V to 5.5 V for the -10E variant) allows battery-powered and 5 V regulated designs alike.

When designing with this part, always reserve the ICSP clock (RB6) and data (RB7) pins for the programming/debug interface; tying them to unrelated loads can prevent in-system programming. Decouple VDD with a 100 nF ceramic placed within 5 mm of the supply pin, and use the MCLR reset pin with the recommended 10 kΩ pull-up and a 100 nF delay capacitor for reliable POR behavior. The extended temperature grade (-E) makes this part preferable over the commercial-grade (-I) variant for outdoor enclosures or industrial cabinets.

Drop-in alternatives for PIC16F877-10E/P — same package, pin-to-pin compatible. Different-package parts requiring PCB rework are excluded.

Variants in this series

Same-series models that are drop-in compatible with PIC16F877-10E/P (same form factor and footprint) — differing in Core Architecture, Package, I/O Pins, Timers, Maximum CPU Frequency.

Microchip Technology
Core Architecture: PIC (8-bit RISC, Harvard)
Package: 44-pin MQFP (10 x 10 mm), PQ suffix
I/O Pins: 33 digital I/O
Microchip Technology
Core Architecture: PIC16 (8-bit Harvard RISC)
Package: 44-pin MQFP (10x10 mm)
I/O Pins: 33
Microchip Technology
Core Architecture: 8-bit PIC RISC (PIC16 mid-range)
Package: 40-pin PDIP (DIP-40)
I/O Pins: 33 (PORTA-PORTE)
Microchip Technology
Core Architecture: PIC16 RISC (Harvard)
Package: 44-MQFP (10 mm x 10 mm)
I/O Pins: 33 programmable digital I/O
Microchip Technology
Core Architecture: PIC16 enhanced mid-range 8-bit RISC
Package: 40-pin PDIP (DIP-40) through-hole
I/O Pins: 36

Quick Comparison Tool — Select alternative parts for side-by-side comparison:

PIC16F877A-10E/P

✅ Drop-In
📦 40-pin PDIP
identical 40-pin PDIP footprint, same 14KB Flash/368B RAM, adds 1% internal oscillator calibration, otherwise pin-to-pin compatible

📋 Reference alternative (not in catalog)

PIC16F877-04E/PQ

✅ Drop-In
Microchip Technology
📦 40-pin PDIP
PIC (8-bit RISC, Harvard) · PIC16F877 Series · 14 KB (8K x 14 words) · 368 bytes · 256 bytes · 4 MHz (200 ns instruction cycle) · 2.0 V to 5.5 V · 33 digital I/O

✓ In Stock

$5.72 / Unit

View Datasheet →

PIC16F877-10I/P

✅ Drop-In
📦 40-pin PDIP
same 40-pin PDIP footprint, industrial -40 °C to +85 °C range vs -40 °C to +125 °C extended, otherwise identical specs

📋 Reference alternative (not in catalog)

PIC16F887-I/P

✅ Drop-In
Microchip Technology
📦 40-pin PDIP
PIC16 enhanced mid-range 8-bit RISC · 20 MHz (50 ns instruction cycle) · 14 KB (8K x 14 words) · 368 bytes · 256 bytes · 36 · 14 channels x 10-bit · 2

✓ In Stock

$1.88 / Unit

View Datasheet →

PIC16F877A-I/P

✅ Drop-In
📦 40-pin PDIP
identical 40-pin PDIP footprint, same 14KB Flash/368B RAM, industrial -40 °C to +85 °C temp range (vs -E extended +125 °C), pin-to-pin compatible

📋 Reference alternative (not in catalog)

PIC16F877-10E/P Maximum Ratings & Electrical Characteristics

Core Architecture 8-bit PIC16 (mid-range) RISC, 35 single-word instructions
Program Memory 14 KB Flash (8K x 14 words)
Data RAM 368 bytes
Data EEPROM 256 bytes
Maximum CPU Frequency 10 MHz (200 ns instruction cycle, 5 MIPS)
Operating Voltage Range 4.0 V to 5.5 V (10 MHz grade)
Operating Temperature Range -40 °C to +125 °C (Extended, -E suffix)
Digital I/O Pins 33 (PORTA 6, PORTB 8, PORTC 8, PORTD 8, PORTE 3)
ADC 10-bit, 8 channels
Timers 3 (Timer0 8-bit, Timer1 16-bit, Timer2 8-bit)
CCP Modules 2 (Capture/Compare/PWM)
Serial Interfaces USART/SCI, SSP (SPI or I²C master/slave), PSP
Watchdog Timer Yes (software-enabled)
In-Circuit Programming/Debug ICSP + ICD via RB6/RB7
Brown-out Reset / Power-on Reset Yes (BOR + POR)
Hardware Stack 8 levels
Package 40-pin PDIP (P)
Mounting Type Through-hole (DIP)
RoHS Status Compliant (lead-free matte-tin finish)

PIC16F877-10E/P Pin Configuration

DIP-40 Package Pinout Diagram DIP-40 40-pin dual inline, 7.62mm pitch, JEDEC MS-001. 1 40 2 39 3 38 4 37 5 36 6 35 7 34 8 33 9 32 10 31 11 30 12 29 13 28 14 27 15 26 16 25 17 24 18 23 19 22 20 21 DIP-40
Pin 1 MCLR/VPP — Master Clear (Reset) input / ICSP programming voltage
Pin 2 RA0/AN0 — PORTA bit 0 / analog input channel 0
Pin 3 RA1/AN1 — PORTA bit 1 / analog input channel 1
Pin 4 RA2/AN2/VREF- — PORTA bit 2 / analog input channel 2 / ADC negative reference
Pin 5 RA3/AN3/VREF+ — PORTA bit 3 / analog input channel 3 / ADC positive reference
Pin 6 RA4/T0CKI — PORTA bit 4 (open-drain) / Timer0 clock input
Pin 7 RA5/AN4/SS — PORTA bit 5 / analog input channel 4 / SPI slave select
Pin 8 RE0/RD/AN5 — PORTE bit 0 / parallel slave port read / analog input channel 5
Pin 9 RE1/WR/AN6 — PORTE bit 1 / parallel slave port write / analog input channel 6
Pin 10 RE2/CS/AN7 — PORTE bit 2 / parallel slave port chip select / analog input channel 7
Pin 11 VDD — Positive supply voltage (4.0 V to 5.5 V)
Pin 12 VSS — Ground reference
Pin 13 OSC1/CLKIN — Oscillator input / external clock input
Pin 14 OSC2/CLKOUT — Oscillator output / clock out (Fosc/4)
Pin 15 RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator output / Timer1 clock input
Pin 16 RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator input / CCP2 PWM output
Pin 17 RC2/CCP1 — PORTC bit 2 / CCP1 PWM output
Pin 18 RC3/SCK/SCL — PORTC bit 3 / SPI clock / I²C clock
Pin 19 RD0/PSP0 — PORTD bit 0 / parallel slave port data bit 0
Pin 20 RD1/PSP1 — PORTD bit 1 / parallel slave port data bit 1
Pin 21 RD2/PSP2 — PORTD bit 2 / parallel slave port data bit 2
Pin 22 RD3/PSP3 — PORTD bit 3 / parallel slave port data bit 3
Pin 23 RC4/SDI/SDA — PORTC bit 4 / SPI data in / I²C data
Pin 24 RC5/SDO — PORTC bit 5 / SPI data out
Pin 25 RC6/TX/CK — PORTC bit 6 / USART transmit / USART clock
Pin 26 RC7/RX/DT — PORTC bit 7 / USART receive / USART data
Pin 27 RD4/PSP4 — PORTD bit 4 / parallel slave port data bit 4
Pin 28 RD5/PSP5 — PORTD bit 5 / parallel slave port data bit 5
Pin 29 RD6/PSP6 — PORTD bit 6 / parallel slave port data bit 6
Pin 30 RD7/PSP7 — PORTD bit 7 / parallel slave port data bit 7
Pin 31 VSS — Ground reference (second VSS pin)
Pin 32 VDD — Positive supply voltage (second VDD pin)
Pin 33 RB0/INT — PORTB bit 0 / external interrupt 0
Pin 34 RB1 — PORTB bit 1
Pin 35 RB2 — PORTB bit 2
Pin 36 RB3/PGM — PORTB bit 3 / LVP programming enable
Pin 37 RB4 — PORTB bit 4
Pin 38 RB5 — PORTB bit 5
Pin 39 RB6/PGC — PORTB bit 6 / ICSP clock (ICSPCLK)
Pin 40 RB7/PGD — PORTB bit 7 / ICSP data (ICSPDAT)

Typical Applications

PIC16F877-10E/P is suitable for 6 applications: Industrial Automation and Motor Control, Consumer Electronics Front Panels, Educational Development Boards and Hobbyist Projects, Instrumentation and Data Acquisition Front Ends, Automotive Body and Accessory Modules, Wireless Sensor Network Edge Nodes.

🏭

Industrial Automation and Motor Control

The PIC16F877-10E/P is well suited for industrial automation controllers driving small DC motors, stepper motor indexers, fan speed controllers, and HVAC damper actuators. Its 33 digital I/O pins provide ample drive for relays, optocouplers, and 7-segment displays, while the two CCP modules generate precise PWM for brushed DC motor speed loops at up to 5 MIPS computational throughput. The 8-channel 10-bit ADC samples feedback from thermistors, pressure sensors, and current shunts for closed-loop control, and the USART links to a host PLC or HMI for SCADA integration. The extended -40 °C to +125 °C temperature grade tolerates unconditioned factory cabinets, and the 14 KB Flash accommodates state-machine control firmware plus Modbus or CANopen protocol stacks.

📺

Consumer Electronics Front Panels

White goods such as washing machines, microwave ovens, dishwashers, and air conditioners use the PIC16F877-10E/P as the primary user-interface controller, handling push-button scanning, rotary encoder input, and multiplexed 7-segment or LCD character displays. Its 33 I/O pins comfortably drive a 4-digit 7-segment display plus an 8-key matrix and a buzzer, while the 14 KB Flash stores user menus, error codes, and diagnostic routines. The 10-bit ADC reads temperature sensors (NTC), water level probes, and humidity sensors with ±1 LSB linearity, and the I²C/SPI peripherals interface to EEPROM parameter storage and real-time clock ICs. The 256-byte on-chip EEPROM preserves user settings through power cycles without external NVRAM.

🧩

Educational Development Boards and Hobbyist Projects

The PIC16F877-10E/P is a cornerstone of university embedded-systems courses and DIY maker projects due to its breadboard-friendly 40-pin PDIP package, mature toolchain support, and abundant tutorial resources. Students learn RISC assembly and C programming with MPLAB X + XC8 (free compiler), implementing PWM motor control, ADC sensor reading, I²C peripheral interfacing, and USART serial debugging. The through-hole DIP form factor survives repeated insertion into breadboards and ZIF sockets, while the ICSP interface via RB6/RB7 allows hands-on programming without removing the chip. Hobbyist projects include robotics motor controllers, weather stations, IR remote-controlled toys, and home automation prototypes with the PIC16F877A migration path when more memory is needed.

🔬

Instrumentation and Data Acquisition Front Ends

Bench-top instruments and laboratory data loggers use the PIC16F877-10E/P as a multi-channel ADC front end, capturing 8 analog signals at 10-bit resolution and streaming them to a host PC via USART or USB-to-serial bridge. The 5 MIPS CPU enables on-board digital filtering (moving average, FIR low-pass) before transmission, reducing host-side processing load. The two CCP modules measure pulse widths and frequencies from external sensors, while the SSP port in SPI mode interfaces to high-speed external ADCs or DACs for applications needing more than 10 bits of resolution. The 14 KB Flash stores calibration coefficients and linearization lookup tables in program memory, with 256-byte EEPROM retaining user calibration settings across power cycles.

🚗

Automotive Body and Accessory Modules

Non-safety-critical automotive body controllers—such as window lift modules, seat position memories, mirror adjusters, and interior lighting controllers—use the PIC16F877-10E/P as a cost-effective 8-bit solution. The 33 digital I/O pins directly drive low-side MOSFETs via gate resistors, the two CCP modules generate PWM for LED dimming and motor soft-start, and the USART communicates with body control modules over LIN or K-Line protocols. Note: this part is NOT AEC-Q100 qualified, so it must be limited to non-safety applications; AEC-Q100-grade PIC16F177x or PIC18F alternatives are required for under-hood or chassis domains. The extended -40 °C to +125 °C temperature grade handles cabin and trunk thermal environments.

🌐

Wireless Sensor Network Edge Nodes

Battery-powered wireless sensor nodes based on the PIC16F877-10E/P leverage the device's low-power sleep modes (down to <1 µA with WDT disabled) and integrated ADC for periodic environmental sampling. The USART connects to a 2.4 GHz radio module such as the MRF24J40 or nRF24L01+, while the I²C bus reads digital sensors (temperature, humidity, accelerometers) without burdening the ADC channels. The 14 KB Flash stores sensor calibration and a simple MAC protocol stack; the 256-byte EEPROM retains node ID and network parameters through battery replacement. For solar-powered deployments, the 2.0–5.5 V operating range (or PIC16LF877 variant) allows direct Li-ion or 2xAA cell operation with a boost converter for the radio rail.

Recommended Products Summary

MCP2515 Standalone CAN controller for CANopen industrial bus Used in: Industrial Automation and Motor Control MCP2551 High-speed CAN transceiver Used in: Industrial Automation and Motor Control ULN2003A Darlington array for relay/solenoid drive Used in: Industrial Automation and Motor Control MCP23017 I²C 16-bit I/O expander for additional keypad/display lines Used in: Consumer Electronics Front Panels 24LC256 I²C EEPROM for user setting storage Used in: Consumer Electronics Front Panels DS1307 I²C real-time clock for time-stamped events Used in: Consumer Electronics Front Panels PICkit 4 In-circuit debugger and programmer Used in: Educational Development Boards and Hobbyist Projects MCP9700 Analog temperature sensor for ADC exercises Used in: Educational Development Boards and Hobbyist Projects TC74 I²C digital temperature sensor for bus exercises Used in: Educational Development Boards and Hobbyist Projects MCP3202 12-bit external ADC over SPI for higher resolution Used in: Instrumentation and Data Acquisition Front Ends MCP4921 12-bit DAC over SPI for stimulus generation Used in: Instrumentation and Data Acquisition Front Ends FT232RL USB-to-USART bridge for PC connectivity Used in: Instrumentation and Data Acquisition Front Ends MCP2021 LIN transceiver for automotive body networks Used in: Automotive Body and Accessory Modules BTS432E2 Smart high-side power switch for lamp/motor loads Used in: Automotive Body and Accessory Modules TLE4275 5V LDO regulator for automotive supply rails Used in: Automotive Body and Accessory Modules MRF24J40MA 2.4 GHz IEEE 802.15.4 radio module over SPI Used in: Wireless Sensor Network Edge Nodes nRF24L01+ Low-power 2.4 GHz transceiver over SPI Used in: Wireless Sensor Network Edge Nodes SHT21 I²C temperature/humidity sensor Used in: Wireless Sensor Network Edge Nodes
What is the maximum clock speed of PIC16F877-10E/P?
The PIC16F877-10E/P runs up to 10 MHz crystal / oscillator frequency, delivering a 200 ns instruction cycle and 5 MIPS of throughput. According to the Microchip datasheet (DS30292D), the 10 MHz speed grade requires VDD between 4.0 V and 5.5 V. Below 4.0 V the device still operates but at reduced clock rates per the speed-vs-voltage curve. For designs needing more headroom at lower voltages, Microchip recommends the PIC16LF877 variant which extends to 2.0 V.
How much program memory does the PIC16F877-10E/P have?
The PIC16F877-10E/P includes 14 KB of on-chip Flash program memory organized as 8K × 14-bit words. According to Microchip's datasheet, this memory supports 100,000 typical erase/write cycles and retains data for 40 years minimum. It also provides 256 bytes of data EEPROM (1,000,000 cycles) and 368 bytes of general-purpose SRAM. The 14-bit instruction word (vs 12-bit baseline PICs) accommodates literal data and direct addressing modes used in mid-range PICs.
What is the difference between PIC16F877-10E/P and PIC16F877-04E/P?
The PIC16F877-10E/P operates at 10 MHz maximum CPU clock (4.0 V–5.5 V VDD), while the PIC16F877-04E/P runs at 4 MHz (2.0 V–5.5 V VDD). Both share identical 14 KB Flash, 368 B RAM, 256 B EEPROM, and the same 40-pin PDIP pinout, making them functionally drop-in compatible in most applications provided the firmware is recompiled for the target oscillator frequency. Choose the -10E for higher throughput at 5 V systems; choose the -04 for low-voltage or battery operation.
Does PIC16F877-10E/P support in-circuit serial programming (ICSP)?
Yes. The PIC16F877-10E/P supports ICSP using pins RB6 (ICSPCLK) and RB7 (ICSPDAT) plus the MCLR/VPP reset pin. According to Microchip's programming specification, ICSP allows Flash and EEPROM programming without removing the device from the circuit, using a simple 4-wire interface plus VDD and GND. The same pins also support in-circuit debugging (ICD) through the MPLAB ICD 2/3/4 tool chain. Reserve these pins in your PCB layout to retain field-reprogrammability.
What is the operating temperature range of PIC16F877-10E/P?
The PIC16F877-10E/P operates from -40 °C to +125 °C. The '-E' suffix specifically denotes the Extended industrial temperature grade, while the '-I' suffix on other variants denotes -40 °C to +85 °C industrial, and no suffix denotes 0 °C to +70 °C commercial. For outdoor enclosures, automotive under-hood environments, or industrial cabinets, the -E grade is strongly recommended over the -I or commercial variants due to wider thermal margin.
What is the best drop-in replacement for PIC16F877-10E/P?
The best pin-compatible drop-in replacement is the PIC16F877A-10E/P, which adds an internal 1% oscillator calibration and supports ICSP in a wider voltage range while keeping the same 40-pin PDIP footprint and identical peripheral set. For modern designs requiring more memory and active peripherals, the PIC16F887-I/P is pin-compatible and offers 14 KB Flash, 368 B RAM, and an enhanced 14-channel ADC at 20 MHz. Both alternatives fit the existing PCB footprint with no layout changes required.
Where can I buy PIC16F877-10E/P and what is the current price?
The PIC16F877-10E/P is in stock at authorized distributors including DigiKey, Mouser, and Microchip Direct, with pricing as of 2026-09-21 starting at approximately $7.10 USD per unit at qty 1. Volume pricing drops to around $4.30 USD per unit at 1,000-piece quantities. Avoid grey-market resellers on open marketplaces, as Microchip parts sourced outside authorized channels may be counterfeit; always verify the lot code against Microchip's serialization database upon receipt.
What is the lead time for PIC16F877-10E/P orders?
As of 2026-09-21, the PIC16F877-10E/P shows 'ships today' on DigiKey for small-quantity orders, indicating in-stock availability with no lead time at major distributors. For production quantities above 10,000 units, the lead time typically extends to 8–12 weeks due to Microchip's wafer-fab allocation cycle. Microchip Direct accepts direct factory orders with a 26-week standard lead time for unreleased POs; contract pricing is available for OEM volumes above 25,000 units per year.
PIC16F877-10E/P vs PIC16F887 - which is better for new designs?
For new designs in 2026, the PIC16F887-I/P is generally the better choice because it adds nanoWatt technology for lower sleep current, an internal 32 MHz oscillator (4x PLL from 8 MHz), enhanced PWM with 4 CCP modules, 14 ADC channels (vs 8), and 1.75 KB RAM (vs 368 B), all in the same 40-pin PDIP footprint. The PIC16F877-10E/P remains preferred only for legacy maintenance where software and PCB layouts are frozen, since recompiling for the PIC16F887 requires updating configuration bits and a few register names but keeps the same peripheral model.
Can PIC16F877A replace PIC16F877 directly?
Yes, the PIC16F877A-I/P or PIC16F877A-10E/P is a direct drop-in replacement for the PIC16F877 in nearly all applications. According to Microchip's migration guide, the 'A' revision added internal oscillator calibration (1% accuracy vs external crystal), extended Flash endurance, and added the Configurable Logic Cell (CLC) peripheral. The 40-pin PDIP pinout is identical. Existing firmware should recompile cleanly; verify that the new configuration-bit defaults match your project (e.g., WDT, BOR, oscillator mode) before final programming.
Where can I download the PIC16F877-10E/P datasheet PDF?
The official PIC16F877 datasheet (DS30292D, 218 pages) is available as a free PDF download from Microchip's website at the product page (www.microchip.com/en-us/product/PIC16F877). The datasheet includes full electrical characteristics, DC/AC timing diagrams, peripheral descriptions, instruction set reference, and development tool information. A copy is also mirrored on distributor sites like Mouser and DigiKey under the 'Datasheet' tab; however, Microchip's server always hosts the latest revision.
Is the PIC16F877-10E/P RoHS compliant?
Yes, the PIC16F877-10E/P is RoHS compliant and uses a lead-free matte-tin (Sn) finish on the PDIP leads. According to Microchip's material declaration, this part also meets REACH SVHC requirements and is halogen-free in the package molding compound. The part is not AEC-Q100 qualified, so it is suitable for industrial and consumer applications but not for automotive safety-critical systems; for those, consider AEC-Q100-qualified PIC16F variants in the automotive product line.
How many ADC channels does PIC16F877-10E/P have?
The PIC16F877-10E/P includes an 8-channel, 10-bit Analog-to-Digital Converter with successive-approximation register (SAR) architecture. According to the datasheet, the ADC accepts analog inputs on RA0–RA5, RE0, and RE1 (PORTA and PORTE shared with digital I/O), supports acquisition times from 1.6 µs to 20 µs, and provides 10-bit resolution (1024 steps) with ±1 LSB typical integral non-linearity. The reference voltage can be selected from VDD, an external VREF+ pin, or the internal 2.5/5.0 V bandgap reference.
What compiler is used to program the PIC16F877-10E/P?
The PIC16F877-10E/P is programmed using Microchip's MPLAB X IDE with one of three compilers: XC8 (free for PIC16, paid for optimization), CCS PCWH (third-party, widely used in industry), or MikroElektronika mikroC (third-party, beginner-friendly). All three support the same ICSP programming via PICkit 3, PICkit 4, MPLAB ICD 4, or MPLAB Snap programmers. For bare-bones assembly development, MPASM is included free with MPLAB X and remains popular for time-critical code on this MCU.

Engineering reference data for PIC16F877-10E/P — comparison, design guidance, and compliance information.

Selection Guide

Choose the PIC16F877-10E/P when you need a proven, mature 8-bit PIC microcontroller in a 40-pin PDIP through-hole package, running at full 5 MIPS throughput in industrial temperature environments (-40 °C to +125 °C). It is the right choice for new product designs that will live 10+ years in the field where Microchip's product longevity program guarantees supply, and for legacy maintenance of installed base where firmware has been frozen. For new designs requiring more memory, more ADC channels, or nanoWatt low-power modes, prefer the PIC16F887-I/P (drop-in upgrade, 20 MHz, 14 ADC channels). For lower-voltage battery operation below 4.0 V, use the PIC16LF877-10E/P variant. For automotive AEC-Q100 applications, this part is NOT qualified and you must migrate to a PIC16F177x or PIC18F K-series part.

Comparison with Alternatives

Parameter This Product PIC16F877A-10E/P PIC16F877-04E/P PIC16F877-10I/P PIC16F887-I/P PIC16F877A-I/P
Package 40-pin PDIP 40-pin PDIP - same 40-pin PDIP - same 40-pin PDIP - same 40-pin PDIP - same 40-pin PDIP - same
Brand Microchip Technology Microchip Technology Microchip Technology Microchip Technology Microchip Technology Microchip Technology
Maximum CPU Frequency 10 MHz 10 MHz 4 MHz 10 MHz 20 MHz 20 MHz
Program Memory 14 KB Flash 14 KB Flash 14 KB Flash 14 KB Flash 14 KB Flash 14 KB Flash
Data RAM 368 bytes 368 bytes 368 bytes 368 bytes 368 bytes 368 bytes
ADC Channels 8 (10-bit) 8 (10-bit) 8 (10-bit) 8 (10-bit) 14 (10-bit) 8 (10-bit)
Operating Temperature -40 °C to +125 °C (Extended) -40 °C to +125 °C (Extended) -40 °C to +125 °C (Extended) -40 °C to +85 °C (Industrial) -40 °C to +85 °C (Industrial) -40 °C to +85 °C (Industrial)
Internal Oscillator No (external crystal required) Yes, 4 MHz calibrated (1%) No (external crystal required) No (external crystal required) Yes, 8 MHz with 4x PLL Yes, 4 MHz calibrated (1%)
CCP Modules 2 2 2 2 2 (Enhanced CCP) 2

Key Differentiators

  • Extended -40 °C to +125 °C temperature range (vs PIC16F877A-I/P)
  • 5 MIPS throughput at 10 MHz vs 4 MHz in -04 grade (vs PIC16F877-04E/P)
  • Backwards compatibility with PIC16F877 legacy firmware (vs PIC16F887-I/P)

Design Notes

Reserve RB6 (ICSPCLK) and RB7 (ICSPDAT) for in-circuit serial programming. Tying these pins directly to heavy loads or pull-ups greater than 10 kΩ can prevent programming. Place a 4.7 kΩ pull-up on MCLR (pin 1) with a 100 nF delay capacitor to VDD, per Microchip's reference design; this ensures clean power-on-reset behavior. Keep VDD traces short and place a 100 nF decoupling capacitor within 5 mm of pins 11 and 32, with a 10 µF bulk capacitor near the IC. Avoid routing high-speed signals (oscillator, CCP PWM) directly under the IC to minimize noise coupling into the ADC.

Do not assume VDD operation below 4.0 V at 10 MHz. According to the datasheet DC characteristics, the -10E variant requires VDD ≥ 4.0 V to guarantee 10 MHz operation; below this the device still runs but the oscillator may fail to start or produce timing errors. If you need 5 MIPS throughput down to 2.0 V, choose the PIC16LF877 (PIC16LF series). Also note the ADC requires the A/D acquisition time to be set correctly in the ADCON0 register — using the default 20 µS with a low-impedance source is fine, but for high-impedance sensors (>10 kΩ), increase TACQ to 20 µS or use a buffer op-amp to avoid conversion errors.

Estimated: at VDD=5 V and 10 MHz active mode with all peripherals enabled, the PIC16F877-10E/P draws approximately 15 mA active current and drops to under 1 µA in sleep mode with WDT disabled. For battery-powered designs, use sleep mode aggressively between sensor samples and wake via Watchdog Timer (typically 18 ms interval) or external interrupt on RB0. The brown-out reset (BOR) should be enabled in configuration bits to prevent code execution at low VDD that could corrupt EEPROM; Microchip's datasheet recommends BOR at 4.0 V minimum for 10 MHz operation.

Compliance Information

RoHS
Compliant
REACH
Compliant
AEC-Q100
Not Qualified
Lead Free
Yes
Halogen Free
Yes
Conflict Minerals
Compliant

RoHS compliant per Microchip material declaration. Lead-free matte-tin finish. NOT AEC-Q100 qualified - not suitable for automotive safety-critical applications. REACH SVHC compliant; halogen-free molding compound per Microchip's environmental compliance documentation.

Data verified on: 2026-09-21 — data verified and curated by XAIPART's component engineering team

Related Searches

PIC16F877-10E/P PIC16F877-10E/P datasheet PDF PIC16F877-10E/P price Microchip PIC16F877 40-pin DIP 8-bit 14KB Flash microcontroller 10MHz PIC16F877 vs PIC16F877A PIC16F877-10E/P drop-in replacement PIC16F877-10E/P pinout 40-pin DIP PIC16F877 buy online how to program PIC16F877 with PICkit PIC16F877 ICSP programming extended temperature PIC16F microcontroller

Related Components & Terms

Microchip Technology PIC16F877-10E/P PIC16F877A-10E/P PIC16F877-04E/P PIC16F877-10I/P PIC16F887-I/P PIC16F877A-I/P 8-bit microcontroller MCU RISC architecture PIC16F family mid-range PIC Harvard architecture Flash memory EEPROM 10-bit ADC CCP module PWM USART SPI I²C ICSP MPLAB X IDE XC8 compiler PICkit programmer RoHS REACH PDIP-40 package industrial automation consumer electronics embedded control
Quick Quote RFQ
Fill in complete details — our sales team will respond within 24 hours
Part Number Manufacturer Package QTY Target Price Extended
Total: $0.00 USD
Quote submitted!

We will respond to your email within 24 hours

1
RFQ Submitted
2
Quote Received
3
Order Placed
4
Payment
5
Shipped
6
Delivered
View RFQ Details