PIC16F84A-20/SO - 8-bit 20MHz Flash MCU, 1.75KB | Microchip
MPN: PIC16F84A-20/SO ✓ Active| Qty | Unit Price | Extended |
|---|---|---|
| 1 | $2.85 | $2.85 |
| 10 | $2.57 | $25.70 |
| 100 | $2.27 | $227.00 |
| 500 | $1.99 | $995.00 |
| 1,000 | $1.78 | $1,780.00 |
PIC16F84A-20/SO Overview
A microcontroller (MCU) is a single-chip computer containing a CPU, memory, and programmable I/O peripherals. The PIC16F84A belongs to Microchip's mid-range PIC16 family, positioned between the baseline PIC10/12/16 series and the high-performance PIC18/dsPIC families. Mid-range MCUs balance code density, peripheral set, and cost, making them well suited to consumer, industrial, and educational designs where 8-bit and more compute headroom than a 6-pin baseline device is required.
The device offers 13 bidirectional digital I/O pins organized into two ports (PORTB 8-bit, PORTA 5-bit), a 14-bit instruction word, 35 single-word instructions, an 8-level deep hardware stack, and a configurable Watchdog Timer with its own on-chip RC oscillator. An In-Circuit Serial Programming (ICSP) interface allows Flash/EEPROM programming without removing the part from the board, and an In-Circuit Debugger (ICD) is supported via the RB6/RB7 pins. Power-management features include nanoWatt Technology with selectable Sleep, Run, Idle, and power-on Reset modes to minimize quiescent current in battery-fed designs.
Architecturally the PIC16F84A uses a Harvard RISC core with separate program and data buses, enabling single-cycle instruction fetch while the previous instruction executes. The high-endurance Flash cell is rated for 1,000 erase/write cycles, and EEPROM supports 1,000,000 erase/write cycles for non-volatile data logging. The part targets applications where simplicity, deterministic timing, and field-upgradability matter more than raw throughput.
Typical end uses include educational trainer boards, hobbyist prototyping platforms, simple sensor and appliance controllers, low-volume industrial automation, and drop-in replacements for legacy PIC16F84 designs. Its wide adoption makes it a frequent reference design for teaching RISC fundamentals. Designers should note that migrating legacy PIC16F84 code may require consulting Microchip's PIC16F84-to-PIC16F84A migration document (DS30072) for subtle register differences.
For reliable operation, place 0.1 uF decoupling close to VDD and confirm the configured oscillator mode matches the external crystal or internal RC selection. When in-circuit debugging is required, dedicate RB6/RB7 to ICSP and avoid high-impedance analog loads on these pins during programming cycles.
Drop-in alternatives for PIC16F84A-20/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-20/SO (same form factor and footprint) — differing in Package, Timers, Core Architecture, I/O Pins, Operating Temperature.
Quick Comparison Tool — Select alternative parts for side-by-side comparison:
PIC16F84A-20/P
✅ Drop-In✓ In Stock
$1.72 / Unit
View Datasheet →PIC16F84A-20/SS
✅ Drop-In✓ In Stock
$1.65 / Unit
View Datasheet →PIC16F84A-20I/SO
✅ Drop-In✓ In Stock
$2.2 / Unit
View Datasheet →PIC16F84AT-20/SO
✅ Drop-In✓ In Stock
$2.18 / Unit
View Datasheet →PIC16F84A-04I/SO
✅ Drop-In✓ In Stock
$3.59 / Unit
View Datasheet →PIC16F84A-20/SO Maximum Ratings & Electrical Characteristics
| Core Architecture | PIC16 (Harvard RISC, 8-bit) |
| Family | PIC16F84A |
| Instruction Set | 35 single-word instructions (14-bit word) |
| Maximum CPU Frequency | 20 MHz (200 ns instruction cycle) |
| Program Memory (Flash) | 1.75 KB (1K x 14 words) |
| Data RAM | 68 bytes |
| Data EEPROM | 64 bytes |
| I/O Pins | 13 bidirectional (PORTA 5, PORTB 8) |
| A/D Channels | 0 (no on-chip ADC) |
| Timers | Timer0 (8-bit), Watchdog Timer with on-chip RC |
| Supply Voltage (VDD) | 4.0 V to 5.5 V |
| Operating Temperature Range | -40 C to +85 C (industrial) |
| Package | 18-pin SOIC (SO, 0.300 inch body) |
| Mounting Type | Surface Mount |
| ICSP / ICD | Yes (In-Circuit Serial Programming + In-Circuit Debug) |
| Stack Depth | 8 levels (hardware) |
| Flash Endurance | 1,000 erase/write cycles typical |
| EEPROM Endurance | 1,000,000 erase/write cycles typical |
| RoHS Status | Compliant |
| MSL Level | 1 (unlimited floor life) |
PIC16F84A-20/SO Pin Configuration
| Pin 1 | RA2 — Bidirectional I/O port A bit 2 / AN2 (no ADC on this part) |
| Pin 2 | RA3 — Bidirectional I/O port A bit 3 |
| Pin 3 | RA4 — Bidirectional I/O port A bit 4 (open-drain, shared with TOCKI) |
| Pin 4 | MCLR — Master Clear (Reset) input, active low |
| Pin 5 | VSS — Ground reference |
| Pin 6 | RB0/INT — Bidirectional I/O port B bit 0 / external interrupt input |
| Pin 7 | RB1 — Bidirectional I/O port B bit 1 |
| Pin 8 | RB2 — Bidirectional I/O port B bit 2 |
| Pin 9 | RB3 — Bidirectional I/O port B bit 3 |
| Pin 10 | RB4 — Bidirectional I/O port B bit 4 (interrupt-on-change) |
| Pin 11 | RB5 — Bidirectional I/O port B bit 5 (interrupt-on-change) |
| Pin 12 | RB6/PGC — Bidirectional I/O port B bit 6 / ICSP clock (debug) |
| Pin 13 | RB7/PGD — Bidirectional I/O port B bit 7 / ICSP data (debug) |
| Pin 14 | VDD — Positive supply voltage (4.0 V to 5.5 V) |
| Pin 15 | OSC2/CLKOUT — Oscillator output / external clock output |
| Pin 16 | OSC1/CLKIN — Oscillator input / external clock input |
| Pin 17 | RA0 — Bidirectional I/O port A bit 0 |
| Pin 18 | RA1 — Bidirectional I/O port A bit 1 |
Typical Applications
PIC16F84A-20/SO is suitable for 6 applications: Educational Microcontroller Trainer Boards, Hobbyist Prototyping and DIY Controllers, Simple Appliance Control and Sensor Interfaces, Legacy Replacement for PIC16F84 Designs, Industrial Automation Logic Modules, LED Display and Chaser Controllers.
Educational Microcontroller Trainer Boards
The PIC16F84A-20/SO fits educational trainer boards because of its 5 MIPS throughput at 20 MHz, 35 single-word instructions, and 1.75 KB Flash that comfortably fits the canonical LED-blink, seven-segment, and serial-Echo labs. ICSP via RB6/RB7 lets students reprogram the same board in seconds without removing the part, which is critical for lab throughput. Compared to baseline PIC10/12 devices, it offers 13 I/O pins that cover button inputs, LED outputs, and a UART bit-bang simultaneously. The 18-pin SOIC is hand-solderable with basic tools. Trade-off: no on-chip ADC means analog lessons require an external MCP3002 or similar.
Recommended
Hobbyist Prototyping and DIY Controllers
The PIC16F84A-20/SO is widely adopted in hobbyist projects because its 13 digital I/O pins can drive LED matrices, relay boards, servo inputs, and discrete logic outputs at the same time. The 20 MHz clock gives timing headroom for software UART bit-bang at common 9600/19200 baud rates, while the 8-level hardware stack supports nested ISR call chains for switch-debounce and PWM logic. EEPROM provides 64 bytes of storage for user preferences. The SOIC-18 surface-mount package is compatible with most reflow-friendly dev boards, and ICSP lets makers update firmware over a 5-pin header. Trade-off: RAM is only 68 bytes, so multi-byte string buffers require paging discipline.
Recommended
Simple Appliance Control and Sensor Interfaces
The PIC16F84A-20/SO fits appliance and sensor-interface boards where 8-bit processing, deterministic timing, and field-upgradeable Flash are more valuable than raw throughput. Examples include washing-machine lid-lock controllers, dishwasher water-level timers, and HVAC zone valves where the 200 ns instruction cycle and 8-bit timers provide sub-microsecond timing resolution. The Watchdog Timer with its own internal RC protects against firmware lockup, and nanoWatt Sleep mode drops quiescent current below 1 uA for battery-backed sensors. EEPROM holds 64 bytes of calibration constants. Trade-off: no on-chip ADC limits analog sensing without an external front-end.
Recommended
Legacy Replacement for PIC16F84 Designs
The PIC16F84A-20/SO is the recommended drop-in replacement for the obsolete PIC16F84. Microchip migration document DS30072 documents that the PIC16F84A is electrically and pin-compatible with PIC16F84, so legacy designs can be upgraded without PCB rework. The -A revision adds lower-voltage operation, in-circuit debugging, and the nanoWatt power-saving modes that the original -84 lacked. The same SOIC-18 footprint is preserved. Trade-off: some legacy code may need adjustment for the new register names (e.g. STATUS bit positions), but the binary instruction set is at least 95% compatible.
Recommended
Industrial Automation Logic Modules
The PIC16F84A-20/SO fits industrial logic modules that need a deterministic 8-bit controller with EEPROM parameter storage and field-upgradeable firmware via ICSP. Examples include conveyor-belt pulse counters, pick-and-place vacuum sequence controllers, and CNC spindle on/off relays where a 5 MIPS throughput easily handles the timing loops. The -40 to +85 C industrial operating range covers most factory-floor environments. The Watchdog Timer with internal RC protects against firmware lockup from EMI. Trade-off: 13 I/O pins can become the limit on dense multi-axis controllers.
Recommended
LED Display and Chaser Controllers
The PIC16F84A-20/SO drives LED chasers, marquees, and discrete-segment displays by combining 13 digital I/O pins with 5 MIPS of throughput that easily multiplexes 4-digit seven-segment displays at 100+ Hz refresh rate without visible flicker. The 8-bit Timer0 is well-suited to multiplexing PWM duty cycles, and EEPROM stores user-selectable chaser patterns across power cycles. The SOIC-18 footprint fits small PCB form factors typical of consumer light fixtures. Trade-off: no hardware PWM means brightness control is software-driven.
Recommended
Recommended Products Summary
Engineering reference data for PIC16F84A-20/SO — comparison, design guidance, and compliance information.
Selection Guide
Comparison with Alternatives
| Parameter | This Product | PIC16F84A-20/P | PIC16F84A-20/SS | PIC16F84A-20I/SO | PIC16F84AT-20/SO | PIC16F84A-04I/SO |
|---|---|---|---|---|---|---|
| Package | 18-pin SOIC (SO) | 18-pin PDIP (through-hole) | 20-pin SSOP | 18-pin SOIC (SO) - same | 18-pin SOIC (SO) - same | 18-pin SOIC (SO) - same |
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Maximum CPU Frequency | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 4 MHz |
| Program Memory (Flash) | 1.75 KB | 1.75 KB | 1.75 KB | 1.75 KB | 1.75 KB | 1.75 KB |
| Data RAM | 68 bytes | 68 bytes | 68 bytes | 68 bytes | 68 bytes | 68 bytes |
| Data EEPROM | 64 bytes | 64 bytes | 64 bytes | 64 bytes | 64 bytes | 64 bytes |
| I/O Pins | 13 | 13 | 13 | 13 | 13 | 13 |
| Operating Temperature | -40 C to +85 C | 0 C to +70 C (commercial) or -40 to +85 (industrial) | -40 C to +85 C | -40 C to +85 C (industrial) | -40 C to +85 C | -40 C to +85 C |
Key Differentiators
- Surface-mount SOIC-18 package for reflow production (vs PIC16F84A-20/P)
- Faster 20 MHz clock vs slower 4 MHz variant (vs PIC16F84A-04I/SO)
- Tape-and-reel factory packaging (vs PIC16F84A-20I/SO)
Design Notes
Place a 0.1 uF decoupling capacitor as close as possible to the VDD pin (pin 14) and another to VSS (pin 5). For designs with high-current switching outputs on PORTB, add a 10 uF bulk capacitor on VDD within 1 cm of the MCU. The PIC16F84A-20/SO typically draws 2-3 mA active at 5 V 4 MHz per datasheet DS39582 Section 17. In Sleep mode, current drops below 1 uA with nanoWatt Technology enabled. Estimated: assuming 1 mA Sleep current at 5 V, a 9 V battery with 1 mA load yields about 500 mAh capacity per typical 9 V alkaline cell.
Keep the trace between OSC1/OSC2 (pins 15-16) and the crystal or resonator as short as possible (under 10 mm), and place the crystal/load capacitors within 5 mm of the MCU. For ICSP, dedicate RB6 (pin 12) and RB7 (pin 13) to programming clock/data - avoid running long signal traces or high-impedance analog loads on these pins during programming. Add a 100 kohm pull-up on MCLR (pin 4) for reliable startup; do not leave MCLR floating.
Do not exceed 5.5 V on VDD; the absolute maximum rating is 6.5 V per datasheet DS39582. Watch the MCLR voltage threshold: for reliable reset, MCLR must be pulled below 0.2 VDD. When migrating code from legacy PIC16F84 to PIC16F84A, review STATUS register bit positions (RP0, RP1, TO, PD) and the EECON1 register for new bit definitions per Microchip migration document DS30072. Also note that the Watchdog Timer postscaler is now 8-bit, not 16-bit.
RB0 (pin 6) doubles as the external interrupt (INT) input; if interrupts are not used, configure TRISB0 to disable the weak pull-up to avoid noise injection. For ICSP operation, ensure RB6/RB7 are isolated from external loads with series 100 ohm resistors on each pin - this prevents programming failures when the application drives these lines. The MCLR pin should have an isolation diode when a 13V programming voltage is applied externally.
Compliance Information
RoHS and lead-free compliant per Microchip product page (active parts); PIC16F84A-20/SO is not AEC-Q100 qualified (consumer/industrial grade); REACH SVHC-compliant per Microchip declaration.