PIC16F873A-E/SS - 8-bit PIC MCU, 7KB Flash, 20MHz | Microchip
MPN: PIC16F873A-E/SS ✗ End of Life| Qty | Unit Price | Extended |
|---|---|---|
| 1 | $6.05 | $6.05 |
| 10 | $5.4 | $54.00 |
| 100 | $4.55 | $455.00 |
| 500 | $3.95 | $1,975.00 |
| 1,000 | $3.55 | $3,550.00 |
PIC16F873A-E/SS Overview
An 8-bit PIC microcontroller (MCU) is a compact, RISC-based single-chip computer integrating a CPU, non-volatile flash memory, RAM, EEPROM, and peripherals such as ADC, comparators, and serial interfaces into a single IC. PIC MCUs sit within the broader hierarchy: 8-bit microcontroller -> microcontroller unit -> embedded controller -> semiconductor IC. Their deterministic instruction timing, low power consumption, and self-programmability make them widely used in industrial control, sensor interfaces, and consumer appliances.
Key features of the PIC16F873A-E/SS include 5 channels of 10-bit Analog-to-Digital conversion (A/D), 2 analog comparators, a synchronous serial port configurable as 3-wire SPI or 2-wire I2C, a USART for asynchronous serial communication, and 22 digital I/O pins. The nanoWatt Technology power management offers multiple idle and sleep modes, and in-circuit serial programming (ICSP) plus in-circuit debugger (ICD) interfaces simplify firmware development and field updates. Self-programmability allows bootloaders and on-the-fly firmware upgrades.
Architecturally, the PIC16F873A uses a Harvard-style architecture with separate program and data buses, enabling simultaneous instruction fetch and data access. The 14-bit wide instruction word supports direct, indirect, and relative addressing with hardware multiply assist, balancing code density against throughput. Brown-out reset (BOR), power-on reset (POR), and a watchdog timer with on-chip RC oscillator enhance field reliability without external components.
Typical applications include industrial sensor interfaces, HVAC control modules, low-cost motor control, battery-powered instrumentation, and educational/development platforms. The wide operating temperature range and robust peripheral set also suit automotive body and chassis subsystems.
When designing with this device, allocate adequate VDD decoupling (100nF plus 10uF bulk) within 5mm of the supply pins, and follow Microchip's recommended oscillator layout to avoid start-up failures. The 28-pin SSOP footprint is pin-compatible with several PIC16F family members, enabling easy migration when memory or peripheral needs change.
This page synthesizes distributor stock data, drop-in cross-package alternatives within the same family, and practical design notes compiled from Microchip application briefs and datasheet typical-application circuits to help engineers select, source, and implement this MCU efficiently.
Drop-in alternatives for PIC16F873A-E/SS — 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 PIC16F873A-E/SS (same form factor and footprint) — differing in Package, Timers, Operating Temperature, Core Architecture, Program Memory (Flash).
Quick Comparison Tool — Select alternative parts for side-by-side comparison:
PIC16F873A-I/SS
✅ Drop-In✓ In Stock
$1.78 / Unit
View Datasheet →PIC16F873A-E/SP
✅ Drop-In✓ In Stock
$4.62 / Unit
View Datasheet →PIC16F873A-E/ML
✅ Drop-In✓ In Stock
$3.35 / Unit
View Datasheet →PIC16F876A-E/SS
✅ Drop-In✓ In Stock
$5.62 / Unit
View Datasheet →PIC16F873-10E/SO
✅ Drop-In✓ In Stock
$4.4 / Unit
View Datasheet →PIC16F873A-E/SS Maximum Ratings & Electrical Characteristics
| Core Processor | PIC16F |
| Core Size / Data Bus Width | 8-bit |
| Program Memory Size | 7KB (4K x 14 words) |
| Program Memory Type | FLASH |
| RAM Size | 192 bytes |
| EEPROM Size | 128 bytes |
| Clock / Instruction Frequency | 20 MHz (200 ns instruction cycle) |
| Supply Voltage (VDD) | 4 V to 5.5 V |
| I/O Pins | 22 |
| ADC | 5 channels x 10-bit |
| Comparators | 2 |
| Serial Interfaces | SPI / I2C (SSP) + USART (AUSART) |
| Package / Case | 28-SSOP (0.209 inch, plastic, MO-150) |
| Operating Temperature | -40 C to +125 C (E = extended industrial) |
| Mounting Type | Surface Mount |
| MSL Level | 1 (unlimited) |
| RoHS Status | Compliant |
| Lead-Free | Yes |
PIC16F873A-E/SS Pin Configuration
| Pin 1 | MCLR/VPP/THV — Master Clear (reset) input / programming voltage / high-voltage test |
| 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 2 / ADC negative reference |
| Pin 5 | RA3/AN3/VREF+ — PORTA bit 3 / Analog input 3 / ADC positive reference |
| Pin 6 | RA4/T0CKI/C1OUT — PORTA bit 4 / Timer0 clock input / Comparator 1 output |
| Pin 7 | RA5/AN4/SS/C2OUT — PORTA bit 5 / Analog input 4 / SPI slave select / Comparator 2 output |
| Pin 8 | OSC1/CLKI — Oscillator crystal input / external clock input |
| Pin 9 | OSC2/CLKO — Oscillator crystal output / clock output |
| Pin 10 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator output / Timer1 clock input |
| Pin 11 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator input / CCP2 PWM output |
| Pin 12 | RC2/CCP1 — PORTC bit 2 / CCP1 PWM/capture/compare |
| Pin 13 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock |
| Pin 14 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I2C data |
| Pin 15 | RC5/SDO — PORTC bit 5 / SPI data out |
| Pin 16 | RC6/TX/CK — PORTC bit 6 / USART TX / USART clock |
| Pin 17 | RC7/RX/DT — PORTC bit 7 / USART RX / USART data |
| Pin 18 | VSS — Ground reference |
| Pin 19 | VDD — Positive supply voltage (4V-5.5V) |
| Pin 20 | RB0/INT — PORTB bit 0 / external interrupt input |
| Pin 21 | RB1 — PORTB bit 1 |
| Pin 22 | RB2 — PORTB bit 2 |
| Pin 23 | RB3/PGM — PORTB bit 3 / ICSP programming clock (low-voltage) |
| Pin 24 | RB4 — PORTB bit 4 |
| Pin 25 | RB5/PGM — PORTB bit 5 |
| Pin 26 | RB6/PGC — PORTB bit 6 / ICSP clock |
| Pin 27 | RB7/PGD — PORTB bit 7 / ICSP data |
| Pin 28 | NC — Not connected on PIC16F873A (PIC16F876A uses this pin for additional I/O) |
Typical Applications
PIC16F873A-E/SS is suitable for 6 applications: Industrial Sensor Interface Module, HVAC Control Board, Educational Development Platform, Battery-Powered Instrumentation, Consumer Appliance Control, Low-Cost Motor Control.
Industrial Sensor Interface Module
The PIC16F873A-E/SS fits industrial sensor interface modules where its 5x10-bit ADC channels digitize analog transducer signals (temperature, pressure, flow) and its 20MHz core provides deterministic 200ns instruction timing for filtering and linearization. With 128 bytes EEPROM it stores calibration coefficients, and 192 bytes RAM handles small FIFO buffers. The PIC16F873A-E/SS is placed between sensor signal-conditioning op-amps and a downstream RS-485 link, using the AUSART to transmit measurements at up to 115.2 kbps. The -40C to +125C extended range supports factory-floor cabinets and outdoor enclosures. This combination of ADC precision, robust peripherals, and wide-temperature operation makes it ideal for low-cost multi-channel sensor hubs.
Recommended
HVAC Control Board
The PIC16F873A-E/SS fits HVAC control boards where its 2 analog comparators monitor thermistor bridges for over-temperature and frost detection, while the 5 ADC channels read supply-air, return-air, and outdoor temperature sensors. The 20MHz core executes PID control loops every 10ms for damper and valve actuation. With 22 I/O pins, the MCU directly drives triac interfaces, relay coils, and keypad/LED indicators without external I/O expanders. Its extended -40C to +125C range survives rooftop unit enclosures. The PIC16F873A-E/SS is paired with an EEPROM-backed real-time clock for schedule storage, replacing discrete thermostat logic with a single-chip solution.
Recommended
Educational Development Platform
The PIC16F873A-E/SS fits university and hobbyist embedded courses thanks to its 35-instruction RISC core, which students can master in a single lab session. The SSOP-28 package fits standard 0.65mm-pitch breakout boards, exposing all 22 I/O pins plus SPI/I2C/USART for peripheral exercises. With 7KB flash it accommodates introductory C and assembly projects, and ICSP (in-circuit serial programming) allows re-flashing without chip removal. The PIC16F873A-E/SS is widely supported by MPLAB X IDE and the XC8 compiler, ensuring students use industry-standard tools. Low cost and 20MHz performance make it ideal for digital-logic, ADC sampling, and serial-communication lab modules.
Recommended
Battery-Powered Instrumentation
The PIC16F873A-E/SS fits battery-powered instrumentation where its nanoWatt Technology provides multiple low-power modes (sleep draws under 1uA typical) that extend coin-cell and lithium-pack life. The 5 ADC channels monitor battery voltage, sensor inputs, and temperature, while the 20MHz core wakes on interrupt to perform measurements before returning to sleep. With 128 bytes EEPROM it retains calibration data across power cycles. The PIC16F873A-E/SS is positioned as the central controller in portable data loggers, environmental monitors, and handheld measurement tools where its -40C to +125C range tolerates field-deployed environments.
Recommended
Consumer Appliance Control
The PIC16F873A-E/SS fits consumer appliance controllers where its 5x10-bit ADC reads sensor inputs (water level, temperature, motor current) and its PWM-capable Timer2 drives brushed DC motors or buzzer tones. With 7KB flash it implements user-interface state machines for washers, dryers, dishwashers, and microwave ovens. The PIC16F873A-E/SS controls triac-driven heater elements via zero-cross detection on an interrupt pin, with the SPI interface driving LED or seven-segment displays. Its SSOP-28 small footprint fits compact control boards inside appliance chassis where PCB area is constrained.
Recommended
Low-Cost Motor Control
The PIC16F873A-E/SS fits low-cost brushed DC and small stepper motor controllers where its 20MHz core generates precise PWM signals through Timer2 and the CCP module, while the 5 ADC channels sense current shunt and back-EMF for closed-loop speed control. With 22 I/O pins it directly drives H-bridge logic, direction-control inputs, and encoder feedback without external glue logic. The PIC16F873A-E/SS is used in small fans, pumps, and toys where cost per channel matters more than peak performance. Its extended -40C to +125C range suits automotive body-motors and outdoor fan/pump installations.
Recommended
Recommended Products Summary
Engineering reference data for PIC16F873A-E/SS — comparison, design guidance, and compliance information.
Selection Guide
Comparison with Alternatives
| Parameter | This Product | PIC16F873A-I/SS | PIC16F873A-E/SP | PIC16F873A-E/ML | PIC16F876A-E/SS | PIC16F873-10E/SO |
|---|---|---|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | 28-SSOP | 28-SSOP (same) | 28-PDIP (through-hole) | 28-QFN (same SMD footprint family) | 28-SSOP (same) | 28-SOIC (wider pitch SMD) |
| Program Memory | 7KB Flash | 7KB Flash | 7KB Flash | 7KB Flash | 14KB Flash (+100%) | 4KB Flash (-43%) |
| RAM | 192 bytes | 192 bytes | 192 bytes | 192 bytes | 256 bytes (+33%) | 192 bytes |
| EEPROM | 128 bytes | 128 bytes | 128 bytes | 128 bytes | 256 bytes (+100%) | 128 bytes |
| Max Clock Speed | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 10 MHz (-50%) |
| ADC Channels | 5 x 10-bit | 5 x 10-bit | 5 x 10-bit | 5 x 10-bit | 8 x 10-bit (+60%) | 5 x 10-bit |
| Operating Temperature | -40C to +125C (E) | -40C to +85C (I) | -40C to +125C (E) | -40C to +125C (E) | -40C to +125C (E) | -40C to +125C (E) |
Key Differentiators
- Extended industrial temperature range (-40C to +125C) in SSOP-28 footprint (vs PIC16F873A-I/SS)
- 20MHz clock vs 10MHz legacy PIC16F873 (vs PIC16F873-10E/SO)
- Drop-in pin compatibility with PIC16F876A family (vs PIC16F876A-E/SS)
- Smaller PCB footprint vs DIP variant (vs PIC16F873A-E/SP)
Design Notes
Place a 100nF ceramic decoupling capacitor within 5mm of the VDD pin (pin 19) and a 10uF bulk tantalum or ceramic capacitor on the same supply trace. For battery-powered designs using nanoWatt sleep modes, also place a 100nF cap on the MCLR/VPP pin (pin 1) to prevent noise-induced spurious resets. The PIC16F873A-E/SS has a maximum VDD of 5.5V - exceeding this absolute maximum can damage the internal flash charge pump. For designs operating from a higher-voltage rail (e.g., 12V), use an external LDO such as MCP1700 to derive the 5V MCU rail.
Route the OSC1/OSC2 crystal traces (pins 8-9) as short and symmetric as possible, with a ground guard ring around the crystal and load capacitors placed within 3mm of the MCU pins. Avoid routing high-frequency switching signals (PWM, SPI clocks) parallel to the oscillator traces to prevent clock jitter and EMI. For high-speed SPI buses at 5MHz or above, add 33 ohm series-termination resistors at the driving pins (RC3/RC4/RC5) to dampen ringing on the SSOP-28 lead-frame traces.
Do not assume the PIC16F873A-E/SS's internal brown-out reset (BOR) is enabled by default - the configuration bits must explicitly enable BOR with the desired voltage threshold. Without BOR, VDD droops during motor inrush or load transients can corrupt flash memory and lock the device into an undefined state. Also, the ICSP clock (PGC, pin 26) and data (PGD, pin 27) pins are shared with PORTB RB6/RB7; if external pull-ups are used on these lines, they must be disabled during programming to avoid contention with the programmer.
The PIC16F873A-E/SS USART (RC6/TX, RC7/RX) is a 5V CMOS peripheral; when connecting to a 3.3V host (e.g., ESP32, Raspberry Pi), use a level translator such as the TXS0108E or a simple resistor divider on the TX->RX line. The I2C bus (RC3/SCL, RC4/SDA) is open-drain and requires pull-up resistors (typically 4.7k at 100kHz, 2.2k at 400kHz) to VDD - never pull up to a higher voltage than VDD or the inputs will be over-driven. For RS-485 communication add a fail-safe biasing network on the differential pair to prevent false-start bits when the bus is idle.
Compliance Information
RoHS compliant per Microchip product page and distributor listings (DigiKey 509411, Mouser). Not AEC-Q100 qualified - not recommended for safety-critical automotive ECUs. The 'E' suffix indicates extended -40C to +125C industrial temperature range, not automotive qualification.