PIC16F877T-04I/PQ - 8-Bit MCU 14KB FLASH 44-MQFP | Microchip
MPN: PIC16F877T-04I/PQ ✓ Active| Qty | Unit Price | Extended |
|---|---|---|
| 1 | $11.5 | $11.50 |
| 10 | $10.35 | $103.50 |
| 100 | $9.2 | $920.00 |
| 500 | $8.45 | $4,225.00 |
| 1,000 | $7.8 | $7,800.00 |
PIC16F877T-04I/PQ Overview
An 8-bit microcontroller (MCU) is a single-chip computer that integrates a CPU, program memory (FLASH/ROM), data memory (RAM), non-volatile data storage (EEPROM), and a set of peripherals onto one silicon die. PIC microcontrollers use a RISC Harvard architecture that separates program and data buses, allowing instruction fetch and operand access to occur in the same cycle. Within the broader taxonomy, the PIC16F877 belongs to the PIC16 mid-range family -> 8-bit MCU -> microcontroller -> embedded processor -> semiconductor IC. The 04 speed grade indicates a 4MHz maximum oscillator input.
Key features include 14KB self-programmable FLASH, 256 bytes of true EEPROM for data logging, an 8-channel 10-bit ADC, two 8-bit timers plus one 16-bit timer, a synchronous/asynchronous USART, an MSSP module supporting both SPI and I2C, and a capture/compare/PWM (CCP) module. Industrial temperature range of -40C to +85C and brown-out detection support robust embedded designs. The 44-MQFP (Metric Quad Flat Pack) provides a 0.80 mm pitch and 10x10 mm body.
Architecturally the PIC16F877 uses a 14-bit instruction word with an 8-bit data path, an 8-level hardware stack, and direct, indirect, and relative addressing modes. The integrated enhanced FLASH cell supports >100K erase/write cycles and >40-year data retention, while the EEPROM supports >1M erase/write cycles. Two capture inputs and a PWM output (10-bit resolution) are accessible via the CCP module.
Typical applications include industrial control panels, HVAC sensor nodes, motor control, smart instrumentation, automotive body electronics, and educational embedded platforms where PIC development tools are prevalent. The 44-MQFP variant suits legacy through-hole-friendly layouts and is widely supported by Microchip's MPLAB X IDE and PICkit debug programmers. The newer PIC16F887 family member is recommended for new designs.
A critical design consideration is that the -04 speed grade limits operation to 4MHz at the rated Vdd; for designs requiring higher throughput at lower Vdd, the PIC16F877-20 variant (20MHz) should be selected instead. The -I suffix indicates industrial temperature range (-40C to +85C).
This page synthesizes distributor pricing, drop-in alternatives, and practical design notes not found on a standalone manufacturer datasheet.
Drop-in alternatives for PIC16F877T-04I/PQ — 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 PIC16F877T-04I/PQ (same form factor and footprint) — differing in ADC, Package, Core Architecture, Timers, Operating Temperature.
Quick Comparison Tool — Select alternative parts for side-by-side comparison:
PIC16F877-04I/PQ
✅ Drop-In✓ In Stock
$4.35 / Unit
View Datasheet →PIC16F877T-04E/PQ
✅ Drop-In✓ In Stock
$8.75 / Unit
View Datasheet →PIC16F874T-04I/PQ
✅ Drop-In✓ In Stock
$2.65 / Unit
View Datasheet →PIC16F877-10E/PQ
✅ Drop-In✓ In Stock
$6.1 / Unit
View Datasheet →PIC16F877-20I/P
✅ Drop-In✓ In Stock
$5.1 / Unit
View Datasheet →PIC16F887-I/P
✅ Drop-In✓ In Stock
$1.88 / Unit
View Datasheet →PIC16F877T-04I/PQ Maximum Ratings & Electrical Characteristics
| Core Architecture | PIC 8-bit RISC (Harvard) |
| Program Memory | 14 KB FLASH (8K x 14 words) |
| RAM | 368 bytes |
| EEPROM | 256 bytes |
| Maximum Clock Frequency | 4 MHz (04 speed grade) |
| Instruction Execution Time | 200 ns |
| Number of I/O Pins | 33 |
| Package | 44-MQFP (10x10 mm, 0.80 mm pitch) |
| Operating Temperature Range | -40C to +85C (Industrial -I) |
| ADC | 8-channel, 10-bit |
| Timers | 2 x 8-bit + 1 x 16-bit |
| Communication Interfaces | USART, MSSP (SPI / I2C) |
| CCP Modules | 1 (Capture / Compare / PWM, 10-bit) |
| Mounting Type | Surface Mount |
| RoHS Status | Compliant |
PIC16F877T-04I/PQ Pin Configuration
| Pin 1 | MCLR/VPP — Master Clear (reset) input or programming voltage input |
| Pin 2 | RA0/AN0 — Port A bit 0 / Analog input channel 0 |
| Pin 3 | RA1/AN1 — Port A bit 1 / Analog input channel 1 |
| Pin 4 | RA2/AN2 — Port A bit 2 / Analog input channel 2 |
| Pin 5 | RA3/AN3/VREF- — Port A bit 3 / Analog input 3 / ADC negative reference |
| Pin 6 | RA4/T0CKI — Port A bit 4 / Timer0 clock input |
| Pin 7 | RA5/AN4/SS — Port A bit 5 / Analog input 4 / SPI slave select |
| Pin 8 | RE0/RD/AN5 — Port E bit 0 / Parallel port read / Analog input 5 |
| Pin 9 | RE1/WR/AN6 — Port E bit 1 / Parallel port write / Analog input 6 |
| Pin 10 | RE2/CS/AN7 — Port E bit 2 / Parallel port chip select / Analog input 7 |
| Pin 11 | VDD — Positive supply voltage |
| Pin 12 | VSS — Ground reference |
| Pin 13 | OSC1/CLKIN — Oscillator crystal input / external clock input |
| Pin 14 | OSC2/CLKOUT — Oscillator crystal output / clock output |
| Pin 15 | RC0/T1OSO/T1CKI — Port C bit 0 / Timer1 oscillator output / Timer1 clock input |
| Pin 16 | RC1/T1OSI/CCP2 — Port C bit 1 / Timer1 oscillator input / Capture-Compare-PWM 2 |
| Pin 17 | RC2/CCP1 — Port C bit 2 / Capture-Compare-PWM 1 |
| Pin 18 | RC3/SCK/SCL — Port C bit 3 / SPI clock / I2C clock |
| Pin 19 | RD0/PSP0 — Port D bit 0 / Parallel Slave Port bit 0 |
| Pin 20 | RD1/PSP1 — Port D bit 1 / Parallel Slave Port bit 1 |
| Pin 21 | RD2/PSP2 — Port D bit 2 / Parallel Slave Port bit 2 |
| Pin 22 | RD3/PSP3 — Port D bit 3 / Parallel Slave Port bit 3 |
| Pin 23 | RC4/SDI/SDA — Port C bit 4 / SPI data in / I2C data |
| Pin 24 | RC5/SDO — Port C bit 5 / SPI data out |
| Pin 25 | RC6/TX/CK — Port C bit 6 / USART transmit / USART clock |
| Pin 26 | RC7/RX/DT — Port C bit 7 / USART receive / USART data |
| Pin 27 | RD4/PSP4 — Port D bit 4 / Parallel Slave Port bit 4 |
| Pin 28 | RD5/PSP5 — Port D bit 5 / Parallel Slave Port bit 5 |
| Pin 29 | RD6/PSP6 — Port D bit 6 / Parallel Slave Port bit 6 |
| Pin 30 | RD7/PSP7 — Port D bit 7 / Parallel Slave Port bit 7 |
| Pin 31 | VSS — Ground reference |
| Pin 32 | VDD — Positive supply voltage |
| Pin 33 | RB0/INT — Port B bit 0 / External interrupt input |
| Pin 34 | RB1 — Port B bit 1 |
| Pin 35 | RB2 — Port B bit 2 |
| Pin 36 | RB3/PGM — Port B bit 3 / LVP programming input |
| Pin 37 | RB4 — Port B bit 4 |
| Pin 38 | RB5 — Port B bit 5 |
| Pin 39 | RB6/PGC — Port B bit 6 / ICSP clock |
| Pin 40 | RB7/PGD — Port B bit 7 / ICSP data |
| Pin 41 | NC — Not connected (per datasheet) |
| Pin 42 | NC — Not connected (per datasheet) |
| Pin 43 | NC — Not connected (per datasheet) |
| Pin 44 | NC — Not connected (per datasheet) |
Typical Applications
PIC16F877T-04I/PQ is suitable for 7 applications: Industrial Control Panels, HVAC Sensor Nodes, Educational Embedded Platforms, Smart Instrumentation, Automotive Body Electronics, Motor Control and PWM Drives, Data Acquisition and Logging.
Industrial Control Panels
The PIC16F877T-04I/PQ is well suited for industrial control panels where its 33 I/O pins drive multiplexed 7-segment displays, keypad matrices, and relay banks. The 14 KB FLASH comfortably holds state-machine firmware for PLC-style discrete I/O control, while the 8-channel 10-bit ADC reads 4-20 mA loopback sensors with 39 mV LSB at 5V Vref. Industrial temperature grade -40C to +85C ensures reliable operation inside NEMA-rated enclosures. The MSSP I2C bus additionally interfaces EEPROM, RTC, and digital potentiometer companions without external glue logic, reducing PCB complexity and BOM cost.
Recommended
HVAC Sensor Nodes
In HVAC sensor nodes the PIC16F877T-04I/PQ serves as the data-acquisition front-end, sampling temperature, humidity, and pressure through its 8-channel ADC and forwarding results over the integrated USART to a central controller. The 256-byte EEPROM stores calibration constants, sensor trim values, and last-known setpoints that persist across power cycles. At 4 MHz the MCU consumes only a few mA, allowing continuous operation from a 24VAC-derived supply. Brown-out detection protects FLASH integrity during compressor brown-outs common in HVAC environments.
Recommended
Educational Embedded Platforms
The PIC16F877T-04I/PQ is a canonical choice for university embedded-systems courses because it exposes nearly every PIC16 peripheral in a single 44-MQFP package. Students exercise the 10-bit ADC for sensor reads, the MSSP for SPI/I2C peripheral communications, the CCP module for PWM motor speed control, and the USART for terminal I/O. The 14 KB FLASH accommodates full RTOS demonstrations while the 368-byte RAM permits stack-rich C code with MPLAB XC8. PICkit 3 and PICkit 4 programmers debug in-circuit via ICSP, eliminating the need for socketed parts.
Recommended
Smart Instrumentation
Handheld DMMs, portable calibrators, and benchtop signal sources leverage the PIC16F877T-04I/PQ for low-frequency measurement and user-interface control. The 10-bit ADC gives 0.1% measurement resolution at full scale, adequate for consumer-grade instruments, while the CCP module generates precision PWM for DAC-equivalent analog outputs. The 33 I/O pins simultaneously drive an LCD interface, rotary encoder, function keys, and buzzer. The -40C to +85C industrial range supports outdoor test equipment and laboratory environments.
Recommended
Automotive Body Electronics
Non-safety automotive body modules such as seat controllers, mirror adjusters, and ambient lighting often use the PIC16F877T-04I/PQ because its 33 I/O pins drive multiple brushed DC motors and LED strings directly. The integrated USART enables LIN-bus communication when paired with an external LIN transceiver. Note that AEC-Q100 qualification is not available on the PIC16F877 family; for AEC-Q100 designs, the PIC16F877A-I/PT-ICD and dsPIC33 variants must be used instead, while the PIC16F877T-04I/PQ remains appropriate for non-safety aftermarket accessories.
Recommended
Motor Control and PWM Drives
The PIC16F877T-04I/PQ's 10-bit CCP module produces PWM signals up to ~10 kHz with 1024-step duty resolution, suitable for brushed DC motor speed control and Peltier/element heater regulation. The 16-bit timer (Timer1) provides precise period measurement for encoder feedback, while the two 8-bit timers handle debouncing of limit switches and Hall sensors. Combined with the 8-channel ADC for current sensing, the device implements a complete single-axis closed-loop motor controller in one IC.
Recommended
Data Acquisition and Logging
The PIC16F877T-04I/PQ functions as a stand-alone data logger by sampling up to 8 analog channels through its 10-bit ADC and buffering records in the on-chip 256-byte EEPROM or external SPI Flash. The USART streams data to a PC terminal in real time or to an SD card via SPI bridge. At 4 MHz sampling rates up to ~40 ksps are achievable, sufficient for vibration, temperature, and pressure trend logging. The integrated brown-out reset protects log integrity during battery brown-outs in field deployments.
Recommended
Recommended Products Summary
Engineering reference data for PIC16F877T-04I/PQ — comparison, design guidance, and compliance information.
Selection Guide
Comparison with Alternatives
| Parameter | This Product | PIC16F877-04I/PQ | PIC16F877T-04E/PQ | PIC16F874T-04I/PQ | PIC16F877-10E/PQ | PIC16F887-I/P |
|---|---|---|---|---|---|---|
| Package | 44-MQFP (10x10 mm) | 44-MQFP (10x10 mm) - same | 44-MQFP (10x10 mm) - same | 44-MQFP (10x10 mm) - same | 44-MQFP (10x10 mm) - same | 44-MQFP (10x10 mm) - same |
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Max Clock Frequency | 4 MHz (04 grade) | 4 MHz | 4 MHz | 4 MHz | 10 MHz | 20 MHz (with internal oscillator) |
| Program FLASH | 14 KB | 14 KB | 14 KB | 7 KB | 14 KB | 14 KB |
| RAM | 368 bytes | 368 bytes | 368 bytes | 192 bytes | 368 bytes | 368 bytes |
| EEPROM | 256 bytes | 256 bytes | 256 bytes | 256 bytes | 256 bytes | 256 bytes |
| Operating Temperature | -40C to +85C (Industrial) | -40C to +85C | -40C to +125C (Extended) | -40C to +85C | -40C to +125C (Extended) | -40C to +85C |
| Packaging Format | Tape & Reel (T suffix) | Tray | Tape & Reel | Tape & Reel | Tray | Tray |
| Internal Oscillator | No | No | No | No | No | Yes (31 kHz to 8 MHz) |
Key Differentiators
- Tape & Reel packaging for high-volume automated assembly (vs PIC16F877-04I/PQ)
- More program memory than the PIC16F874 sibling (vs PIC16F874T-04I/PQ)
- Drop-in compatibility with the newer PIC16F887 family (vs PIC16F887-I/P)
Design Notes
The PIC16F877T-04I/PQ should be decoupled with a 100 nF ceramic capacitor placed within 5 mm of each VDD/VSS pin pair (pins 11-12 and pins 31-32). For designs with multiple switching loads driven from the same 5V rail, add a 10 uF bulk tantalum or ceramic capacitor at the MCU power pins to suppress switching transients. The brown-out reset (BOR) module should be enabled in the configuration word to prevent code corruption when VDD falls below ~4V during supply collapse. Estimated: at 4 MHz clock and 5V Vdd, the typical operating current is approximately 2-5 mA, depending on peripheral activity.
Route the crystal oscillator traces (OSC1 pin 13 and OSC2 pin 14) symmetrically and as short as possible, with a ground guard ring or continuous ground plane beneath to minimize stray capacitance. The MPLAB ICD 4 / PICkit 4 In-Circuit Serial Programming (ICSP) footprint requires dedicated connections to MCLR/VPP (pin 1), RB6/PGC (pin 39), and RB7/PGD (pin 40); ensure no series resistors, capacitors, or diodes in series with these signals or ICSP will fail. A 10 kohm pull-up resistor on MCLR is recommended to prevent spurious resets in electrically noisy environments.
A frequent pitfall is configuring the ADC when the A/D conversion clock (Tad) falls outside the 1.6 us minimum specified in datasheet DS30292D; at 4 MHz Fosc and FRC-derived A/D clock this is rarely an issue, but external RC oscillators may violate this. Always issue a 20 us acquisition delay after switching ADC channels to allow the internal sample-and-hold capacitor to settle to within 1/2 LSB. Do not drive an analog input above VDD + 0.3V or below VSS - 0.3V - the input ESD diodes will forward-conduct and corrupt the measurement.
Compliance Information
RoHS and REACH compliance per Microchip product page. Not AEC-Q100 qualified; for automotive body electronics requiring PPAP documentation, use PIC16F877A-I/PT-ICD or dsPIC33 AEC-Q100 variants. Microchip QS-9000 quality certification referenced in vendor datasheets covers production facility.