PIC16F874A-E/P - 8-Bit 20MHz 7KB Flash MCU 40-PDIP | Microchip
MPN: PIC16F874A-E/P ✓ Active| Qty | Unit Price | Extended |
|---|---|---|
| 1 | $7.82 | $7.82 |
| 10 | $7.05 | $70.50 |
| 100 | $6.3 | $630.00 |
| 500 | $5.65 | $2,825.00 |
| 1,000 | $5.2 | $5,200.00 |
PIC16F874A-E/P Overview
An 8-bit microcontroller (MCU) is a single-chip computer that integrates a CPU, memory, and peripherals on one die. 8-bit MCUs sit within the taxonomy: microcontroller -> embedded computing -> semiconductor IC. The PIC16F family is Microchip's enhanced mid-range 8-bit line, optimized for low-cost, low-power deterministic control in industrial, consumer, and automotive subsystems. A 40-pin PDIP package provides breadboard-friendly through-hole mounting, the dominant form factor for legacy and educational designs.
Key features include nanoWatt power management for reduced active and sleep currents, a wide 4.0 V to 5.5 V supply range, an ICD (In-Circuit Debugger) interface, code protection, and a 200 ns instruction cycle at 20 MHz. The PIC16F874A-E/P supports both internal and external oscillator modes and includes a programmable brown-out reset.
The PIC16F874A-E/P uses a Harvard RISC architecture with separate program and data buses, allowing instruction fetch and data access in a single cycle. Its 14-bit instruction word delivers compact code density. On-chip peripherals are mapped to dedicated I/O pins, simplifying PCB routing while the nanoWatt technology minimizes sleep current to support battery-backed designs.
Typical applications include industrial control systems, HVAC sensor interfaces, automotive body electronics, embedded instrumentation, security and alarm panels, and consumer appliance controllers. The 8-channel 10-bit ADC is suitable for slow-speed analog monitoring such as temperature, light, or battery voltage.
When designing with this device, ensure the MCLR pin is pulled high through a resistor for proper reset behavior and place a 100 nF decoupling capacitor close to VDD. Choose the internal oscillator block to minimize external component count when timing accuracy is non-critical.
This page synthesizes distributor pricing, drop-in alternatives, and practical design notes not found in the manufacturer datasheet.
Drop-in alternatives for PIC16F874A-E/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 PIC16F874A-E/P (same form factor and footprint) — differing in Package, Timers, ADC, Operating Temperature, Program Memory.
Quick Comparison Tool — Select alternative parts for side-by-side comparison:
PIC16F874A-I/P
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F874A-E/L
✅ Drop-In✓ In Stock
$5.55 / Unit
View Datasheet →PIC16F874-04I/P
✅ Drop-In✓ In Stock
$5.55 / Unit
View Datasheet →PIC16F74-I/P
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F874-20/P
✅ Drop-In✓ In Stock
$7.5 / Unit
View Datasheet →PIC16F877A-I/P
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F874A-E/P Maximum Ratings & Electrical Characteristics
| Core Architecture | PIC16 Enhanced Mid-Range 8-bit RISC |
| Program Memory | 7 KB (4K x 14 words) Flash |
| RAM | 192 bytes |
| EEPROM | 128 bytes |
| Maximum CPU Speed | 20 MHz (200 ns instruction cycle) |
| Supply Voltage (VDD) | 4.0 V to 5.5 V |
| I/O Pins | 33 |
| ADC | 8 channels x 10-bit |
| Comparators | 2 |
| CCP Modules | 2 (Capture/Compare/PWM) |
| Serial Communication | 1x SPI / I²C (MSSP), USART |
| Timers | 3 (Timer0, Timer1, Timer2) |
| Package | 40-pin PDIP (0.600 in, 15.24 mm) |
| Operating Temperature | -40 C to +125 C (Extended, -E suffix) |
| ICSP / ICD | Yes (In-Circuit Serial Programming + Debug) |
| nanoWatt Technology | Yes (low-power sleep modes) |
| RoHS Status | Compliant |
PIC16F874A-E/P Pin Configuration
| Pin 1 | MCLR#/VPP — Master Clear (reset, active low) / programming voltage |
| Pin 2 | RA0/AN0 — PORTA bit 0 / Analog input 0 |
| Pin 3 | RA1/AN1 — PORTA bit 1 / Analog input 1 |
| Pin 4 | RA2/AN2/VREF- — PORTA bit 2 / Analog input 2 / ADC VREF- |
| Pin 5 | RA3/AN3/VREF+ — PORTA bit 3 / Analog input 3 / ADC VREF+ |
| Pin 6 | RA4/T0CKI/C1OUT — PORTA bit 4 / Timer0 clock / Comparator 1 output |
| Pin 7 | RA5/AN4/SS#/C2OUT — PORTA bit 5 / Analog input 4 / SPI slave select / Comparator 2 output |
| Pin 8 | RE0/RD#/AN5 — PORTE bit 0 / Parallel port read control / Analog input 5 |
| Pin 9 | RE1/WR#/AN6 — PORTE bit 1 / Parallel port write control / Analog input 6 |
| Pin 10 | RE2/CS#/AN7 — PORTE bit 2 / Parallel port chip select / Analog input 7 |
| Pin 11 | VDD — Positive supply (4.0 V to 5.5 V) |
| Pin 12 | VSS — Ground reference |
| Pin 13 | OSC1/CLKIN — Oscillator crystal input / external clock in |
| Pin 14 | OSC2/CLKOUT — Oscillator crystal output / clock out |
| Pin 15 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator out / Timer1 clock in |
| Pin 16 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator in / CCP2 |
| Pin 17 | RC2/CCP1 — PORTC bit 2 / CCP1 PWM output |
| Pin 18 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock (MSSP) |
| 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 / I2C data (MSSP) |
| Pin 24 | RC5/SDO — PORTC bit 5 / SPI data out |
| Pin 25 | RC6/TX/CK — PORTC bit 6 / USART async TX / sync clock |
| Pin 26 | RC7/RX/DT — PORTC bit 7 / USART async RX / sync 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 |
| Pin 32 | VDD — Positive supply (4.0 V to 5.5 V) |
| Pin 33 | RB0/INT — PORTB bit 0 / External interrupt |
| Pin 34 | RB1 — PORTB bit 1 |
| Pin 35 | RB2 — PORTB bit 2 |
| Pin 36 | RB3/PGM — PORTB bit 3 / Low-voltage ICSP programming input |
| Pin 37 | RB4 — PORTB bit 4 (interrupt-on-change) |
| Pin 38 | RB5 — PORTB bit 5 (interrupt-on-change) |
| Pin 39 | RB6/PGC — PORTB bit 6 / ICD clock (ICSP) |
| Pin 40 | RB7/PGD — PORTB bit 7 / ICD data (ICSP) |
Typical Applications
PIC16F874A-E/P is suitable for 6 applications: Industrial Control Systems, HVAC Sensor Interface, Automotive Body Electronics, Security and Alarm Panels, Embedded Instrumentation, Consumer Appliance Controllers.
Industrial Control Systems
The PIC16F874A-E/P fits industrial control because its 33 digital I/O, 8-channel 10-bit ADC, and two CCP/PWM peripherals handle sensor multiplexing, actuator drive, and closed-loop PID at update rates typical of slow machinery. The 20 MHz clock yields a 200 ns instruction cycle, sufficient to sample multiple analog channels and toggle I/O within 1 ms control loops. Wide 4.0-5.5 V supply tolerates 24 V industrial rails after regulation. The -40 C to +125 C extended temperature grade supports unheated enclosures, while nanoWatt technology minimizes standby drain on battery-backed PLCs.
Recommended
HVAC Sensor Interface
The PIC16F874A-E/P's 8-channel 10-bit ADC with programmable acquisition time is well-matched to HVAC multi-sensor arrays (temperature, humidity, pressure, airflow). Its I²C/SPI MSSP peripheral interfaces with external digital sensors, while two comparators implement window-detect thermostats without software polling overhead. With 192 B of RAM and 7 KB of Flash, the device holds lookup-table linearization and PID control code comfortably. The 40-pin PDIP package simplifies prototype hand-soldering for HVAC controller reference designs.
Recommended
Automotive Body Electronics
The PIC16F874A-E/P serves automotive body modules (window lifters, seat controllers, mirror adjusters) requiring -40 C to +125 C operation and 5 V supply from a regulated 12 V battery rail. Its 33 I/O drive LED indicators, switches, and relay coils; the 2 CCP modules generate PWM for motor-speed control and lighting dimming. The MSSP peripheral talks to LIN transceivers for body networks, while 7 KB Flash holds CAN-friendly message handlers. Note: for AEC-Q100 automotive qualification choose PIC16F874A-E/P-Q1.
Recommended
Security and Alarm Panels
The PIC16F874A-E/P is well suited to security/alarm control panels because its 8 ADC channels monitor multiple zones (PIR, glass-break, smoke) and its two comparators implement window detectors for tamper sensing. The 128-byte EEPROM stores user codes and event logs through power cycles. nanoWatt sleep modes drop quiescent current for battery-only operation during AC loss. The 33 I/O drive keypads, sirens, and dialer outputs while ICD support accelerates debugging of zone-firing logic.
Recommended
Embedded Instrumentation
Bench-top instruments and data acquisition front-ends use the PIC16F874A-E/P because its 8-channel 10-bit ADC, USART, and I²C peripherals integrate slow-speed analog measurement, USB-UART bridges, and LCD display drivers without external glue logic. The 20 MHz core runs averaging filters and calibration routines; 192 B of RAM buffers sample bursts. The 40-pin PDIP supports prototype through-hole construction common in lab gear.
Recommended
Consumer Appliance Controllers
White-goods controllers (washing machines, dishwashers, microwave ovens) adopt the PIC16F874A-E/P for its low cost, deterministic 8-bit core, and integrated peripherals: the 8-channel ADC reads water level and temperature sensors, the two CCP modules drive motor TRIACs and PWM valves, and the USART interfaces with inverter boards. The 128-byte EEPROM retains cycle settings through power-off. The -40 C to +125 C extended grade handles appliance interior temperatures and motor-driver proximity heating.
Recommended
Recommended Products Summary
Engineering reference data for PIC16F874A-E/P — comparison, design guidance, and compliance information.
Selection Guide
Comparison with Alternatives
| Parameter | This Product | PIC16F874A-I/P | PIC16F874-04I/P | PIC16F74-I/P | PIC16F874-20/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 |
| Core / Architecture | PIC16 Enhanced 8-bit | PIC16 Enhanced 8-bit - same | PIC16 Base 8-bit | PIC16 Base 8-bit | PIC16 Base 8-bit | PIC16 Enhanced 8-bit - same |
| Max Clock Speed | 20 MHz | 20 MHz | 4 MHz | 20 MHz | 20 MHz | 20 MHz |
| Program Memory (Flash) | 7 KB | 7 KB | 7 KB | 7 KB | 7 KB | 14 KB |
| RAM | 192 B | 192 B | 192 B | 192 B | 192 B | 368 B |
| ADC Channels | 8 x 10-bit | 8 x 10-bit | 8 x 10-bit | 5 x 8-bit | 8 x 10-bit | 8 x 10-bit |
| CCP Modules | 2 | 2 | 2 | 1 | 2 | 2 |
| ICD Debug | Yes | Yes | No | No | No | Yes |
| Operating Temperature | -40 C to +125 C (E) | -40 C to +85 C (I) | -40 C to +85 C (I) | -40 C to +85 C (I) | 0 C to +70 C (blank) | -40 C to +85 C (I) |
Key Differentiators
- Enhanced mid-range core with ICD debug and nanoWatt technology (vs PIC16F874-04I/P)
- Industrial 40-pin PDIP drop-in with identical silicon, lower temperature ceiling (vs PIC16F874A-I/P)
- Higher ADC channel count and dual CCP versus the PIC16F74 sibling (vs PIC16F74-I/P)
Design Notes
Estimated: at VDD = 5.0 V and MCU active current of ~16 mA at 20 MHz (per DS39582 typical), the PIC16F874A-E/P dissipates roughly 80 mW. Place a 100 nF decoupling capacitor within 5 mm of each VDD pin (pins 11 and 32) and a bulk 10 uF tantalum or ceramic capacitor at the board power entry. For sleep-mode designs use the nanoWatt Sleep instruction and verify the MCLR# pull-up resistor (typically 10 kohm) does not inject leakage current.
Route the oscillator traces (OSC1 pin 13, OSC2 pin 14) as short and symmetric as possible, with a ground guard ring to minimize noise injection into the ADC. Keep ADC traces (PORTA analog inputs and VREF+/VREF- on RA3/RA2) away from switching nodes like PWM outputs (CCP1 on RC2). For ICD connectivity, expose the PGC (RB6) and PGD (RB7) pins to a 2x3 0.1 inch header for in-circuit debugging using MPLAB X IDE and an ICD programmer.
Do not leave the MCLR# pin floating - it must be pulled high through a 10 kohm resistor to VDD for reliable reset; floating MCLR is the most frequent cause of erratic PIC16F874A-E/P behavior. Verify the configuration bits (FOSC, WDTE, PWRTE, BOREN) match your oscillator and reset strategy - many boot failures trace to mismatched _CONFIG settings. Finally, ensure VDD rise time is below the Brown-Out Reset specification; an excessively slow ramp can lock the device in BOR.
Compliance Information
RoHS compliance per Microchip product page; AEC-Q100 automotive grade is a separate order code (PIC16F874A-E/P-Q1). Lead-free matte-tin finish.