PIC16F84A-20E/SO - 8-Bit 20MHz Flash MCU, 1.75KB | Microchip
MPN: PIC16F84A-20E/SO ✓ Active| Qty | Unit Price | Extended |
|---|---|---|
| 1 | $4.2 | $4.20 |
| 10 | $3.78 | $37.80 |
| 100 | $3.36 | $336.00 |
| 500 | $2.94 | $1,470.00 |
| 1,000 | $2.63 | $2,630.00 |
PIC16F84A-20E/SO Overview
An MCU (microcontroller unit) is a single-chip computer that integrates a CPU core, non-volatile program memory, working RAM, I/O peripherals, and timers in one package; the PIC16 family belongs to Microchip's mid-range 8-bit PIC architecture lineage, broadly classified as an 8-bit microcontroller -> MCU -> embedded processor -> semiconductor IC. The 'F' in PIC16F84A denotes Flash program memory (reprogrammable in-circuit), and the 'A' revision adds the enhanced 14-bit instruction set and improved Flash endurance compared to the original PIC16F84.
Key features include 13 general-purpose digital I/O pins, a 20 MHz maximum oscillator input (5 MIPS sustained throughput), 8-bit timer/counter (TMR0) with 8-bit prescaler, a 16-bit timer/counter (TMR1) with dedicated prescaler, a Watchdog Timer (WDT) with its own on-chip RC oscillator for reliable reset, and Power-On Reset (POR). The 14-bit instruction set comprises only 35 single-word instructions, simplifying code development and shortening learning curves for new embedded designers. The device supports in-circuit serial programming (ICSP) via two pins (RB6/ICSPCLK and RB7/ICSPDAT), enabling firmware updates without removing the MCU from the board.
Typical applications include hobbyist and educational projects, low-volume embedded controllers, automotive body and interior modules, industrial sensor interfaces, simple motor control, LED driving patterns, and legacy PIC16F84 replacement designs. The 18-SOIC footprint is compatible with the original PIC16F84A-20/SO, allowing drop-in PCB reuse. The 'E' suffix in -20E/SO indicates the extended -40 °C to +125 °C operating temperature grade (vs. 'I' = industrial -40 °C to +85 °C, no suffix = 0 °C to +70 °C commercial), while '20' specifies the 20 MHz maximum oscillator frequency and 'SO' designates the 18-pin SOIC package.
Design considerations include a minimum 4.0 V supply (the device will NOT operate from 3.3 V rails commonly used by modern ARM Cortex-M parts), 5 V-tolerant I/O only, and an external oscillator or crystal required for timing. The WDT should be enabled in any field-deployed product to recover from software lockup. Decouple VDD with at least 0.1 µF ceramic plus 10 µF bulk within 5 mm of the supply pin, and keep oscillator traces short and ground-guarded for noise immunity.
This page synthesizes distributor pricing, drop-in same-package alternatives, application guidance, and design notes not found in the manufacturer datasheet alone - intended for both new PIC16F84A designs and engineers modernizing legacy PIC16F84 production boards.
Drop-in alternatives for PIC16F84A-20E/SO — 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 PIC16F84A-20E/SO (same form factor and footprint) — differing in Package, Core Architecture, I/O Pins, Timers, Instruction Execution Time.
Quick Comparison Tool — Select alternative parts for side-by-side comparison:
PIC16F84A-20/SO
✅ Drop-In✓ In Stock
$1.78 / Unit
View Datasheet →PIC16F84A-20I/SO
✅ Drop-In✓ In Stock
$2.2 / Unit
View Datasheet →PIC16F628A-20/SO
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F84A-20/SS
✅ Drop-In✓ In Stock
$1.65 / Unit
View Datasheet →PIC16F88-I/SO
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F84A-20E/SO Maximum Ratings & Electrical Characteristics
| Core Architecture | PIC16 8-bit RISC |
| Program Memory Type | Flash (in-circuit programmable) |
| Program Memory Size | 1.75 KB (1K x 14 words) |
| RAM Size | 68 bytes |
| EEPROM Size | 64 bytes |
| Maximum Clock Frequency | 20 MHz |
| Instruction Execution Time | 200 ns (1 instruction per cycle) |
| MIPS (Dhrystone Equivalent) | 5 MIPS |
| Instruction Set Size | 35 single-word instructions (14-bit wide) |
| Supply Voltage (VDD) | 4.0 V to 5.5 V |
| I/O Pins | 13 general-purpose digital |
| Timers | TMR0 (8-bit w/ 8-bit prescaler), TMR1 (16-bit w/ prescaler) |
| Watchdog Timer (WDT) | Yes (independent on-chip RC oscillator) |
| Power-On Reset (POR) | Yes |
| Brown-Out Reset (BOR) | No (not present on PIC16F84A) |
| ADC | None |
| UART/USART | No hardware UART (software bit-bang only) |
| I2C/SPI | No hardware peripheral (software bit-bang only) |
| In-Circuit Serial Programming (ICSP) | Yes (RB6/ICSPCLK, RB7/ICSPDAT) |
| Operating Temperature Range | -40 °C to +125 °C (E grade - extended) |
| Package | 18-pin SOIC (0.295 inch / 7.50 mm body width) |
| Mounting Type | Surface Mount |
| Lead-Free / RoHS | Yes (compliant per datasheet) |
| Moisture Sensitivity Level (MSL) | 1 (unlimited floor life at <30 °C / 85 % RH) |
PIC16F84A-20E/SO Pin Configuration
| Pin 1 | RA2 — PORTA bit 2 (digital I/O) |
| Pin 2 | RA3 — PORTA bit 3 (digital I/O) |
| Pin 3 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input (Schmitt trigger, open-drain output) |
| Pin 4 | MCLR — Master Clear reset input (active low, internal pull-up enabled by configuration) |
| Pin 5 | VSS — Ground reference |
| Pin 6 | RB0/INT — PORTB bit 0 / external interrupt input |
| Pin 7 | RB1 — PORTB bit 1 (digital I/O) |
| Pin 8 | RB2 — PORTB bit 2 (digital I/O) |
| Pin 9 | RB3 — PORTB bit 3 (digital I/O) |
| Pin 10 | RB4 — PORTB bit 4 (interrupt-on-change) |
| Pin 11 | RB5 — PORTB bit 5 (interrupt-on-change) |
| Pin 12 | RB6/ICSPCLK — PORTB bit 6 / ICSP clock (interrupt-on-change) |
| Pin 13 | RB7/ICSPDAT — PORTB bit 7 / ICSP data (interrupt-on-change) |
| Pin 14 | VDD — Positive supply (4.0 V to 5.5 V) |
| Pin 15 | OSC2/CLKOUT — Oscillator output / clock-out (Fosc/4) |
| Pin 16 | OSC1/CLKIN — Oscillator input / external clock in |
| Pin 17 | RA0 — PORTA bit 0 (digital I/O) |
| Pin 18 | RA1 — PORTA bit 1 (digital I/O) |
Typical Applications
PIC16F84A-20E/SO is suitable for 6 applications: Hobbyist and Educational Embedded Projects, Industrial Sensor Interface Controllers, LED Lighting Pattern and Chase Controllers, Automotive Body and Interior Modules, Simple Stepper and DC Motor Control, Legacy PIC16F84 Field Replacement.
Hobbyist and Educational Embedded Projects
The PIC16F84A-20E/SO is one of the most widely taught microcontrollers in undergraduate embedded systems courses and hobbyist electronics. Its 35-instruction 14-bit RISC core is approachable for first-time embedded programmers, while the 200 ns instruction cycle gives immediate visible response to I/O toggling - ideal for learning timers, interrupts, and EEPROM usage. The 18-SOIC is hand-solderable on breakout boards for breadboarding, and ICSP via RB6/RB7 allows re-programming without a socket. This is why the part remains a default choice for university labs and DIY tutorials despite its age.
Recommended
Industrial Sensor Interface Controllers
The PIC16F84A-20E/SO is used in low-cost industrial sensor-interface modules that read digital switches or simple pulse outputs and forward state via software-bit-banged serial protocols. The 5 MIPS throughput comfortably handles 1 kHz polling loops with interrupt-driven edge detection on PORTB. The extended -40 °C to +125 °C temperature grade handles unheated enclosures and proximity to motor drives. Its 13 GPIO pins accommodate several parallel sensor inputs, and the on-chip EEPROM stores calibration constants written at factory trim stations. For designs requiring ADC, the pin-compatible PIC16F88-I/SO is the recommended substitute.
Recommended
LED Lighting Pattern and Chase Controllers
The PIC16F84A-20E/SO has been widely deployed in decorative LED chase and marquee controllers since its introduction, where its 13 GPIO pins can directly drive LED arrays via low-side NPN transistors (e.g., 2N2222 or ULN2003). The 200 ns instruction cycle provides flicker-free PWM dimming up to about 1 kHz refresh rates when bit-banging on multiple ports. The 64-byte EEPROM stores user-selected chase patterns and brightness, while the 68-byte RAM holds the active display buffer. Multiple PIC16F84A devices can be daisy-chained for longer LED runs without external shift registers.
Recommended
Automotive Body and Interior Modules
Legacy automotive body controllers (window lifts, mirror adjusters, interior lighting, simple HVAC mode selectors) used the PIC16F84A-20E/SO because its extended -40 °C to +125 °C grade survives under-dash thermal swings. The 5 MIPS throughput is sufficient for switch-debounce, relay sequencing, and software UART communication with body-control modules. Modern automotive designs migrate to PIC16F1825 or PIC16F18855 for CAN-FD support, but thousands of vehicles still in service rely on PIC16F84A modules. AEC-Q100 qualification is NOT documented for this part per the datasheet; automotive Tier-1 suppliers typically use their own PPAP documentation rather than AEC-Q100 alone.
Recommended
Simple Stepper and DC Motor Control
For low-cost unipolar stepper motor drivers (28BYJ-48 and similar), the PIC16F84A-20E/SO sequences the four-phase excitation pattern in software from its PORTB outputs. The 200 ns per instruction cycle supports step rates up to roughly 5,000 steps/second in direct-drive mode without external logic. The on-chip TMR0 can be programmed as a hardware step-rate generator with interrupt-driven phase advance, leaving the main loop free for acceleration/deceleration ramps. The extended temperature grade suits enclosed motor housings. For higher step rates or microstepping, the PIC16F628A with hardware PWM is preferred.
Recommended
Legacy PIC16F84 Field Replacement
The PIC16F84A-20E/SO is the canonical replacement for the original PIC16F84 (which lacked the 'A' revision improvements), keeping the same 18-pin DIP/SOIC pinout while adding in-circuit programmability, 1,000x better EEPROM endurance, and the enhanced 14-bit instruction set. Field service of installed equipment - HVAC zone controllers, vending machine bill acceptors, security panel keypads, industrial timer relays - frequently requires this part because firmware was written against the PIC16F84A register map. Existing code typically re-assembles without modification, though config-bit definitions may need updating for the BOR-disabled default.
Recommended
Recommended Products Summary
Engineering reference data for PIC16F84A-20E/SO — comparison, design guidance, and compliance information.
Selection Guide
Comparison with Alternatives
| Parameter | This Product | PIC16F84A-20/SO | PIC16F84A-20I/SO | PIC16F628A-20/SO | PIC16F88-I/SO |
|---|---|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | 18-SOIC (7.50 mm) | 18-SOIC (7.50 mm) - same | 18-SOIC (7.50 mm) - same | 18-SOIC (7.50 mm) - same | 18-SOIC (7.50 mm) - same |
| Flash Program Memory | 1.75 KB (1K x 14) | 1.75 KB | 1.75 KB | 3.5 KB (+100%) | 7 KB (+300%) |
| RAM | 68 bytes | 68 bytes | 68 bytes | 224 bytes (+229%) | 368 bytes (+441%) |
| EEPROM | 64 bytes | 64 bytes | 64 bytes | 128 bytes (+100%) | 256 bytes (+300%) |
| Maximum Clock | 20 MHz (5 MIPS) | 20 MHz | 20 MHz | 20 MHz | 20 MHz |
| Supply Voltage | 4.0 V to 5.5 V | 4.0 V to 5.5 V | 4.0 V to 5.5 V | 3.0 V to 5.5 V (wider) | 2.0 V to 5.5 V (wider) |
| Operating Temperature | -40 °C to +125 °C (E grade) | 0 °C to +70 °C (commercial) | -40 °C to +85 °C (industrial) | 0 °C to +70 °C (commercial) | -40 °C to +85 °C (industrial) |
| Hardware UART | No (software bit-bang) | No | No | Yes (hardware USART) | Yes (hardware USART) |
| ADC | None | None | None | None (comparators only) | 10-bit, 7 channels |
| Price (qty-1, USD, as of 2026-09-21) | $4.20 | $3.95 (commercial grade, lower cost) | $4.10 (industrial grade) | $3.10 (lower cost, more features) | $4.55 (industrial + ADC) |
Key Differentiators
- Extended -40 °C to +125 °C temperature grade (vs PIC16F84A-20/SO)
- Pin-compatible upgrade path to PIC16F628A and PIC16F88 (vs PIC16F628A-20/SO)
- Educational industry-standard 14-bit RISC core (vs PIC16F628A-20/SO)
Design Notes
The PIC16F84A-20E/SO requires a minimum 4.0 V supply - it will NOT operate from 3.3 V rails. Place a 0.1 µF ceramic decoupling capacitor within 5 mm of the VDD pin (pin 14) and a 10 µF bulk tantalum or aluminum polymer capacitor on the same supply node. For battery-powered designs, use a low-dropout regulator such as MCP1700 (5.0 V LDO, 1.6 µA Iq) rather than a switching converter to minimize injected noise onto the analog supply. Estimated: at 5 V / 5 MIPS typical operating current is about 2 mA; in sleep mode with WDT disabled this drops to < 1 µA.
Keep the oscillator traces (OSC1 pin 16, OSC2 pin 15) as short as possible - no more than 10 mm trace length - and ground-guard them on both sides with a continuous ground pour. The MCLR pin (pin 4) requires special attention: if not driven by an external supervisor, connect it to VDD through a 10 kΩ resistor and place a 100 nF capacitor to ground within 5 mm of the pin to filter ESD-induced resets. For ICSP programming access, expose pins RB6/ICSPCLK (pin 12) and RB7/ICSPDAT (pin 13) on a 0.1 inch header to enable in-circuit firmware updates without desoldering the MCU.
Three common PIC16F84A design pitfalls: (1) Brown-Out Reset (BOR) is NOT available on the PIC16F84A - designs relying on BOR for safe voltage monitoring must use an external supervisor such as MCP102 or MCP131. (2) The configuration bit CP (code protect) defaults to OFF in many programmer software templates - leaving code un-protected and readable. Always set CP=ON for production. (3) EEPROM endurance is 1,000,000 cycles per byte but only when the proper write sequence (EECON2 register unlock) is followed; skipping this sequence silently fails to write.
For mixed-signal designs (e.g., adding an external ADC), keep digital switching currents away from the analog ground reference. Use a single-point (star) ground topology with the PIC16F84A VSS pin (pin 5) as the star center for analog and digital returns. If the design drives LEDs or relays, separate their ground returns from the MCU ground until they converge at the power supply bulk capacitor negative terminal. Route high-current traces (relay coils, LED arrays) on a different layer from the MCU's oscillator and ICSP traces to prevent ground bounce from corrupting clock edges.
Compliance Information
RoHS compliant per Microchip product page. AEC-Q100 qualification is not documented in the datasheet - automotive deployments use PIC16F1825 or PIC16F18855 which carry explicit AEC-Q100 documentation. Lead-free and halogen-free per Microchip environmental compliance certifications.