PIC16F876T-04/SO - 8-bit MCU 14KB Flash 28-SOIC | Microchip
MPN: PIC16F876T-04/SO ✓ Active| Qty | Unit Price | Extended |
|---|---|---|
| 1 | $2.21 | $2.21 |
| 10 | $7 | $70.00 |
| 100 | $6.3 | $630.00 |
| 500 | $5.65 | $2,825.00 |
| 1,000 | $5.05 | $5,050.00 |
PIC16F876T-04/SO Overview
What is a PIC16F87X 8-bit MCU? The PIC16F87X is Microchip's mid-range PIC microcontroller family (PIC16 -> PICmicro 8-bit -> microcontroller -> semiconductor). It uses a Harvard RISC architecture with separate program and data buses, allowing single-cycle instruction fetch while data is being processed. Compared to lower-end PIC16C5X baseline parts, the PIC16F87X adds Flash program memory, an integrated ADC, hardware USART/MSSP peripherals, and on-chip EEPROM, eliminating the need for an external program ROM and shrinking BOM cost in embedded designs.
Key features include 14KB self-programmable FLASH (100K erase/write cycle endurance), 256-byte EEPROM with 1M erase/write endurance, 22 source/sink capable I/O pins each rated to 25 mA, two analog comparators, a programmable brown-out reset (BOR), and a watchdog timer with its own on-chip RC oscillator. The -04 speed grade corresponds to a 4 MHz oscillator (200 ns instruction cycle), and the SO package supports an industrial operating temperature range when paired with the I-suffix variant.
The PIC16F876T-04/SO uses a modified Harvard architecture with a 14-bit wide program word and an 8-bit data path, which improves code density relative to 8-bit CISC designs. The integrated MSSP peripheral supports both SPI and I2C master/slave operation, allowing direct interface to serial EEPROMs, sensors, and display drivers without external glue logic. The device operates from 2.0V to 5.5V and includes In-Circuit Serial Programming (ICSP) via two pins for field firmware updates.
Typical applications include industrial control nodes (sensor conditioning, relay/SSR drivers), HVAC thermostat control, motor control signal conditioning, low-cost data loggers with I2C sensors, and remote sensor nodes interfacing with SPI ADC front-ends. The combination of FLASH, EEPROM, ADC, and serial peripherals makes it a self-contained SoC for 8-bit embedded applications.
When designing with this part, verify that the application firmware does not exceed 14KB, since the PIC16F876 cannot access program memory above that boundary (the pin-compatible PIC16F877 with 28-pin SPDIP/SOIC variants does not exist; migration to PIC16F886 is recommended for designs needing more memory). Place a 0.1 uF decoupling capacitor close to VDD/VSS and follow Microchip's recommended ICSP layout for in-circuit programming headers.
This page synthesizes distributor pricing, drop-in SOIC-28 alternatives, and practical design notes not found in the standalone datasheet.
Drop-in alternatives for PIC16F876T-04/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 PIC16F876T-04/SO (same form factor and footprint) — differing in ADC, Package, Core Architecture, Operating Temperature, Timers.
Quick Comparison Tool — Select alternative parts for side-by-side comparison:
PIC16F876-04/SO
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F876-04I/SO
✅ Drop-In✓ In Stock
$5.05 / Unit
View Datasheet →PIC16F876A-I/SO
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F876AT-I/SO
✅ Drop-In✓ In Stock
$4.3 / Unit
View Datasheet →PIC16F873T-04/SO
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F873A-I/SO
✅ Drop-In✓ In Stock
$2.65 / Unit
View Datasheet →PIC16F876T-04/SO Maximum Ratings & Electrical Characteristics
| Core Architecture | PIC 8-bit RISC (Harvard) |
| Program Memory (Flash) | 14 KB |
| Data RAM | 368 bytes |
| Data EEPROM | 256 bytes |
| Maximum CPU Speed | 5 MIPS (4 MHz oscillator at -04 speed grade, 200 ns instruction cycle) |
| Instruction Set | 35 single-word instructions |
| I/O Pins | 22 |
| ADC | 10-bit, up to 8 channels |
| Timers | 2 x 8-bit, 1 x 16-bit |
| Communication Peripherals | USART, MSSP (SPI / I2C), SSP |
| Comparators | 2 analog |
| Operating Voltage | 2.0 V to 5.5 V |
| Package | SOIC-28 (SO, 300 mil) |
| Mounting Type | Surface Mount |
| Operating Temperature | -40 C to +85 C (industrial; depends on variant suffix) |
| In-Circuit Programming | ICSP via RB6/RB7 |
| Watchdog Timer | Yes, dedicated on-chip RC oscillator |
| Brown-Out Reset | Yes, programmable |
| RoHS Status | Compliant |
PIC16F876T-04/SO Pin Configuration
| Pin 1 | RA5/MCLR/VPP — RA5 digital I/O or Master Clear reset / programming voltage input |
| Pin 2 | RA0/AN0 — RA0 digital I/O or analog input AN0 |
| Pin 3 | RA1/AN1 — RA1 digital I/O or analog input AN1 |
| Pin 4 | RA2/AN2/VREF- — RA2 digital I/O or analog input AN2 or ADC negative reference |
| Pin 5 | RA3/AN3/VREF+ — RA3 digital I/O or analog input AN3 or ADC positive reference |
| Pin 6 | RA4/T0CKI/C1OUT — RA4 digital I/O (open-drain) or Timer0 clock input or Comparator 1 output |
| Pin 7 | RA5/AN4/SS/C2OUT — RA5 digital I/O or analog input AN4 or SPI slave select or Comparator 2 output |
| Pin 8 | VSS — Ground reference |
| Pin 9 | OSC1/CLKIN — Crystal oscillator input or external clock input |
| Pin 10 | OSC2/CLKOUT — Crystal oscillator output or clock output |
| Pin 11 | RC0/T1OSO/T1CKI — RC0 digital I/O or Timer1 oscillator output or Timer1 clock input |
| Pin 12 | RC1/T1OSI/CCP2 — RC1 digital I/O or Timer1 oscillator input or Capture/Compare/PWM 2 |
| Pin 13 | RC2/CCP1 — RC2 digital I/O or Capture/Compare/PWM 1 |
| Pin 14 | RC3/SCK/SCL — RC3 digital I/O or MSSP SPI clock or I2C clock |
| Pin 15 | RC4/SDI/SDA — RC4 digital I/O or MSSP SPI data in or I2C data |
| Pin 16 | RC5/SDO — RC5 digital I/O or MSSP SPI data out |
| Pin 17 | RC6/TX/CK — RC6 digital I/O or USART async transmit or sync clock |
| Pin 18 | RC7/RX/DT — RC7 digital I/O or USART async receive or sync data |
| Pin 19 | VSS — Ground reference |
| Pin 20 | VDD — Positive supply voltage |
| Pin 21 | RB0/INT — RB0 digital I/O or external interrupt input |
| Pin 22 | RB1 — RB1 digital I/O |
| Pin 23 | RB2 — RB2 digital I/O |
| Pin 24 | RB3/PGM — RB3 digital I/O or low-voltage programming input |
| Pin 25 | RB4 — RB4 digital I/O with interrupt-on-change |
| Pin 26 | RB5 — RB5 digital I/O with interrupt-on-change |
| Pin 27 | RB6/PGC — RB6 digital I/O with interrupt-on-change or ICSP clock input |
| Pin 28 | RB7/PGD — RB7 digital I/O with interrupt-on-change or ICSP data I/O |
Typical Applications
PIC16F876T-04/SO is suitable for 6 applications: HVAC Thermostat Controller, Industrial Sensor Interface Node, Low-Cost Data Logger, Motor Control Signal Conditioning, Remote Sensor / Environmental Monitor, Appliance Control Board (Consumer White Goods).
HVAC Thermostat Controller
The PIC16F876T-04/SO fits HVAC thermostat controller designs because its 14 KB Flash holds display menu state machines and PID control tables while 256-byte EEPROM stores user-setpoint schedules that survive power cycles. The 8-channel 10-bit ADC reads thermistor bridge networks with 1024-step resolution, while PWM-driven output pins (CCP module) drive triac firing circuits for compressor and fan control. The 2.0 V to 5.5 V operating range tolerates supply variations from rectified 24 VAC inputs, and the industrial temperature grade operates reliably in equipment closets. Compared to a discrete 555-timer + op-amp thermostat, this MCU integrates anti-short-cycle timers, adaptive learning, and remote sensor support in one SOIC-28 package.
Recommended
Industrial Sensor Interface Node
For industrial sensor interface nodes, the PIC16F876T-04/SO provides an integrated 10-bit ADC, USART, MSSP (I2C/SPI), and 22 I/O pins in a single 28-SOIC package, eliminating the need for separate ADC, UART, and GPIO-expander ICs. The 5 MIPS CPU throughput handles modbus RTU message parsing, sensor linearization math, and digital filtering in real time. The on-chip EEPROM stores calibration coefficients, while the watchdog timer and brown-out reset protect against brown-out conditions common on long industrial bus cables. Compared to a baseline PIC16F84 design, this part adds I2C/SPI masters and 10-bit analog conversion in the same SOIC-28 footprint.
Recommended
Low-Cost Data Logger
The PIC16F876T-04/SO supports battery-powered data logger designs through its 256-byte EEPROM (1M write cycles) and optional external SPI/I2C memory expansion via MSSP. The 10-bit ADC samples analog signals up to 100 Ksps under CPU control, while deep sleep mode drops current consumption below 1 uA, enabling multi-year battery life on 2 AA cells. The 22 I/O pins drive SPI flash, SD-card level shifters, and indicator LEDs without external logic. The ICSP programming interface allows field firmware updates over the same debug header used for in-circuit programming, lowering service cost.
Recommended
Motor Control Signal Conditioning
In motor control signal conditioning circuits, the PIC16F876T-04/SO reads current shunt amplifiers with its 10-bit ADC, executes FOC algorithm stages, and outputs PWM via the CCP module to MOSFET driver ICs. The 14 KB Flash holds sine tables, ramp generators, and fault handlers, while 256-byte EEPROM stores motor parameters that persist across reboots. The 22 I/O pins interface to Hall sensors, encoders, and brake relays without external multiplexer ICs. The industrial operating range tolerates the temperature swings near motor housings.
Recommended
Remote Sensor / Environmental Monitor
The PIC16F876T-04/SO powers remote environmental monitor designs by combining a 10-bit ADC for sensor readout, USART for cellular/wireless module serial interface, and I2C/SPI MSSP for sensor hubs. Sleep current under 1 uA extends battery life on solar-powered outdoor deployments, and brown-out reset prevents corruption during cloudy days. The 14 KB Flash hosts over-the-air firmware update protocols via ICSP. Compared to a discrete logic implementation, the integrated MCU reduces board space and BOM cost in weatherproof IP65 enclosures.
Recommended
Appliance Control Board (Consumer White Goods)
The PIC16F876T-04/SO is a strong fit for consumer appliance control boards (washing machines, dishwashers, microwave ovens) because its 22 I/O pins drive keypads, seven-segment displays, relay coils, and buzzer drivers directly without external logic. The USART enables diagnostic interface to a service technician's handheld terminal, while the 14 KB Flash holds cycle state machines, error codes, and EEPROM-backed user preferences. Watchdog timer and brown-out reset harden the design against supply glitches caused by inductive loads. Compared to PIC16F84-based legacy designs, this part reduces board area by 30%.
Recommended
Recommended Products Summary
Engineering reference data for PIC16F876T-04/SO — comparison, design guidance, and compliance information.
Selection Guide
Comparison with Alternatives
| Parameter | This Product | PIC16F876-04/SO | PIC16F876-04I/SO | PIC16F876A-I/SO | PIC16F876AT-I/SO | PIC16F873T-04/SO | PIC16F873A-I/SO |
|---|---|---|---|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | SOIC-28 (SO, 300 mil) | SOIC-28 (SO, 300 mil) - same | SOIC-28 (SO, 300 mil) - same | SOIC-28 (SO, 300 mil) - same | SOIC-28 (SO, 300 mil) - same | SOIC-28 (SO, 300 mil) - same | SOIC-28 (SO, 300 mil) - same |
| Program Flash | 14 KB | 14 KB | 14 KB | 14 KB | 14 KB | 7 KB (-50%) | 7 KB (-50%) |
| Data RAM | 368 bytes | 368 bytes | 368 bytes | 368 bytes | 368 bytes | 368 bytes | 192 bytes (-48%) |
| Data EEPROM | 256 bytes | 256 bytes | 256 bytes | 256 bytes | 256 bytes | 256 bytes | 256 bytes |
| Max CPU Speed | 5 MIPS (4 MHz osc, -04 grade) | 5 MIPS (-04 grade) | 5 MIPS (-04 grade) | 5 MIPS (A-grade supports up to 20 MHz) | 5 MIPS (A-grade) | 5 MIPS (-04 grade) | 5 MIPS (A-grade) |
| ADC Channels | 8 channels x 10-bit | 8 channels x 10-bit | 8 channels x 10-bit | 5 channels x 10-bit | 5 channels x 10-bit | 5 channels x 10-bit | 5 channels x 10-bit |
| Operating Voltage | 2.0 V to 5.5 V | 2.0 V to 5.5 V | 2.0 V to 5.5 V | 2.0 V to 5.5 V | 2.0 V to 5.5 V | 2.0 V to 5.5 V | 2.0 V to 5.5 V |
| Temperature Grade | Industrial (variant dependent) | Commercial (no I suffix) | Industrial -40C to +85C | Industrial -40C to +85C | Industrial -40C to +85C | Commercial (no I suffix) | Industrial -40C to +85C |
| Lifecycle Status | Active (PIC16F876 family) | Active | Active | Active | Active | Active | Active |
Key Differentiators
- 14 KB Flash versus 7 KB in PIC16F873 siblings (vs PIC16F873T-04/SO)
- 8 ADC channels versus 5 in PIC16F876A revision (vs PIC16F876A-I/SO)
- Tape-and-Reel packaging for high-volume SMT (vs PIC16F876-04/SO)
Design Notes
Place a 0.1 uF decoupling capacitor within 5 mm of the VDD pin (pin 20) and a 10 uF bulk capacitor near the power entry point. The PIC16F876T-04/SO draws bursts of current during Flash writes; insufficient decoupling causes VDD droop and unexpected brown-out resets. For battery-powered designs, use MCP1700 LDO or MCP1802 LDO; their 1.6 uA quiescent current preserves battery life versus 78xx regulators. Always enable the brown-out reset (BOR) module at 4.0 V or 2.5 V depending on VDD nominal.
Reserve a 2x5 0.1 inch header footprint for the ICSP programming interface on pins RB6 (PGC, pin 27) and RB7 (PGD, pin 28) plus VDD/VSS/MCLR/VPP. This allows field firmware updates without reworking the PCB. Keep the ICSP traces short (under 50 mm) and isolated from switching converter nodes to prevent programming errors. For the 28-SOIC package, leave at least 0.5 mm clearance between traces and the package edges to maintain manufacturability with standard solder paste stencils.
When using the analog ADC inputs (AN0-AN7 on PORTA/PORTB/PORTC), route analog signals on a separate ground island and join the analog and digital grounds at a single point near the VSS pin (pin 8 or 19). Add a 100 nF ceramic capacitor adjacent to each analog input that sources from a high-impedance sensor. Use the VREF+ and VREF- pins (RA3/RA2) for ratiometric measurements to cancel ADC reference drift; for absolute measurements, drive VREF+ with a low-noise reference such as MCP1525 or LM4040.
Estimated: total Flash endurance on PIC16F876T-04/SO is 100K erase/write cycles per the Microchip datasheet (30292D). If your design performs frequent in-application self-programming, the FLASH will wear out within months. Migrate to PIC16F876A or PIC16F886 for 1M-cycle endurance. Do not assume the MCLR pin (pin 1) is optional - leaving MCLR floating causes erratic resets; tie it to VDD via a 10 kohm resistor and a 100 nF cap for noise-immune reset, or disable MCLR via the configuration register and use as RA5 only if your design does not need external reset.
The PIC16F876T-04/SO in 28-SOIC package has thermal resistance (theta JA) of approximately 80 C/W on a standard JEDEC 4-layer test board. At maximum 5 V supply and 5 MIPS CPU activity, total power dissipation stays under 250 mW, so thermal management is rarely a concern. In enclosed high-temperature environments (above 70 C ambient), verify that junction temperature remains below the 150 C absolute maximum. Worst-case I/O sink current is 25 mA per pin or 200 mA total per PORTB/PORTC group; do not exceed these limits or the on-chip driver transistors will overheat.
Compliance Information
RoHS compliant per Microchip product page. AEC-Q100 qualification not available on the original PIC16F876 family - choose PIC16F876AT-I/SO or PIC16F886 for automotive-grade designs.