PIC16F877T-04E/PQ - 8-bit PIC MCU, 14KB Flash, 4MHz | Microchip
MPN: PIC16F877T-04E/PQ ✓ فعالPIC16F877T-04E/PQ نمای کلی
An 8-bit microcontroller (MCU) is a single-chip computer containing a CPU, program memory, RAM, EEPROM, timers, and peripherals such as ADC, USART, I2C/SPI, and I/O ports. The PIC16F877 belongs to Microchip's mid-range PIC® architecture, sitting between the PIC10/12/16 baseline families and the PIC18 enhanced family; 8-bit MCUs typically run application firmware rather than operating systems and are optimized for deterministic real-time control of sensors, actuators, displays, and communication links.
Key features include 33 digital I/O pins, three 16-bit timers (Timer0, Timer1, Timer2) plus a watchdog timer, a 10-bit multi-channel Analog-to-Digital Converter (ADC), a USART for serial communication, an MSSP module supporting both SPI and I2C (master/slave), two Capture/Compare/PWM (CCP) modules, and an internal brown-out reset (BOR). The CMOS FLASH technology allows in-circuit serial programming (ICSP) through only two pins (RB6 and RB7), enabling in-field firmware updates and low-cost prototyping with a PICkit or ICD debugger.
The Harvard architecture separates program memory (14-bit wide instructions, FLASH) from data memory (8-bit wide RAM, banked), allowing simultaneous instruction fetch and data access and contributing to the deterministic 200 ns instruction cycle. The enhanced instruction set contains 35 single-word instructions with 14-bit opcode, plus an 8-level deep hardware stack and interrupt handling for hardware peripherals. The device supports in-circuit debug (ICD) via the same RB6/RB7 pins used for ICSP, eliminating the need for an external debug header.
Typical applications include industrial process control, sensor interface boards, motor control, HVAC subsystems, instrumentation front-ends, and legacy embedded systems that migrated from PIC16C7X or PIC12CXXX devices. The wide 2.0 V to 5.5 V VDD range and -40C to +125C operating temperature make the part suitable for both battery-powered consumer products and harsh industrial environments.
When designing with the PIC16F877T-04E/PQ, note that the 4 MHz speed grade limits instruction execution throughput to 5 MIPS; for higher performance the 10 MHz (PIC16F877-10) and 20 MHz (PIC16F877-20) speed grades are drop-in replacements. Microchip recommends migrating to the PIC16F887 for new designs because the PIC16F877 family is in maintenance status, but the existing design ecosystem, MPLAB X IDE support, and abundant legacy code make the PIC16F877T-04E/PQ a strong fit for sustaining engineering and legacy board replacement.
جایگزینهای drop-in برای PIC16F877T-04E/PQ — همان پکیج، سازگار پینبهپین. قطعات با پکیج متفاوت که نیاز به تغییر PCB دارند مستثنی هستند.
گونهها در این سری
مدلهای همسری که جایگزین مستقیم هستند برای PIC16F877T-04E/PQ (همان فرمفاکتور و فوتپرینت) — متفاوت در Package, Core Architecture, I/O Pins, Timers, Operating Temperature.
PIC16F877-04E/PQ
✅ جایگزین مستقیمبرای قیمت تماس بگیرید
مشاهده دیتاشیت ←PIC16F877-04I/PQ
✅ جایگزین مستقیمبرای قیمت تماس بگیرید
مشاهده دیتاشیت ←PIC16F877-10E/PQ
✅ جایگزین مستقیمبرای قیمت تماس بگیرید
مشاهده دیتاشیت ←PIC16F877-20I/PQ
✅ جایگزین مستقیمبرای قیمت تماس بگیرید
مشاهده دیتاشیت ←PIC16F877-04/PQ
✅ جایگزین مستقیمبرای قیمت تماس بگیرید
مشاهده دیتاشیت ←PIC16F874-04E/PQ
✅ جایگزین مستقیمبرای قیمت تماس بگیرید
مشاهده دیتاشیت ←PIC16F877T-04E/PQ حداکثر مقادیر مجاز و مشخصات الکتریکی
| Core Architecture | 8-bit PIC mid-range (Harvard) |
| Instruction Set Width | 14-bit |
| Number of Instructions | 35 single-word |
| حداکثر فرکانس کلاک | 4 MHz |
| Instruction Execution Time | 200 ns |
| Program Memory (Flash) | 14 KB (8K x 14) |
| Data RAM | 368 bytes |
| Data EEPROM | 256 bytes |
| I/O Pins | 33 |
| Timers | Three 16-bit (TMR0/TMR1/TMR2) + WDT |
| ADC | 10-bit, up to 8 channels |
| Communication | USART, MSSP (SPI/I2C) |
| PWM / CCP Modules | 2 CCP (10-bit PWM capable) |
| Operating Voltage (VDD) | 2.0 V to 5.5 V |
| دمای کاری | -40C to +125C (Enhanced 'E' grade) |
| بستهبندی | 44-pin MQFP (10x10 mm) |
| نوع نصب | Surface Mount |
| Packaging | Tape & Reel (T suffix) |
| ICSP / ICD Pins | RB6 (ICSPCLK) / RB7 (ICSPDAT) |
| Brown-Out Reset (BOR) | Yes, internal |
| وضعیت RoHS | Compliant |
پیکربندی پین PIC16F877T-04E/PQ
| پین 1 | MCLR/VPP — Master Clear (active-low reset) / ICSP programming voltage input |
| پین 2 | RA0/AN0 — PORTA bit 0 / ADC analog input channel 0 |
| پین 3 | RA1/AN1 — PORTA bit 1 / ADC analog input channel 1 |
| پین 4 | RA2/AN2 — PORTA bit 2 / ADC analog input channel 2 / VREF- |
| پین 5 | RA3/AN3 — PORTA bit 3 / ADC analog input channel 3 / VREF+ |
| پین 6 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input (open-drain) |
| پین 7 | RA5/AN4/SS — PORTA bit 5 / ADC analog input channel 4 / SPI slave select |
| پین 8 | RE0/RD/AN5 — PORTE bit 0 / Parallel slave port read control / ADC channel 5 |
| پین 9 | RE1/WR/AN6 — PORTE bit 1 / Parallel slave port write control / ADC channel 6 |
| پین 10 | RE2/CS/AN7 — PORTE bit 2 / Parallel slave port chip select / ADC channel 7 |
| پین 11 | VDD — Positive supply voltage (2.0 V to 5.5 V) |
| پین 12 | VSS — Ground reference |
| پین 13 | OSC1/CLKIN — Oscillator crystal input / external clock input |
| پین 14 | OSC2/CLKOUT — Oscillator crystal output / clock output (Fosc/4) |
| پین 15 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator output / Timer1 clock input |
| پین 16 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator input / CCP2 PWM/capture/compare |
| پین 17 | RC2/CCP1 — PORTC bit 2 / CCP1 PWM/capture/compare |
| پین 18 | RC3/SCK/SCL — PORTC bit 3 / MSSP SPI clock / I2C clock |
| پین 19 | RD0/PSP0 — PORTD bit 0 / Parallel slave port data bit 0 |
| پین 20 | RD1/PSP1 — PORTD bit 1 / Parallel slave port data bit 1 |
| پین 21 | RD2/PSP2 — PORTD bit 2 / Parallel slave port data bit 2 |
| پین 22 | RD3/PSP3 — PORTD bit 3 / Parallel slave port data bit 3 |
| پین 23 | RC4/SDI/SDA — PORTC bit 4 / MSSP SPI data in / I2C data |
| پین 24 | RC5/SDO — PORTC bit 5 / MSSP SPI data out |
| پین 25 | RC6/TX/CK — PORTC bit 6 / USART asynchronous transmit / I2C clock (sync mode) |
| پین 26 | RC7/RX/DT — PORTC bit 7 / USART asynchronous receive / I2C data (sync mode) |
| پین 27 | RD4/PSP4 — PORTD bit 4 / Parallel slave port data bit 4 |
| پین 28 | RD5/PSP5 — PORTD bit 5 / Parallel slave port data bit 5 |
| پین 29 | RD6/PSP6 — PORTD bit 6 / Parallel slave port data bit 6 |
| پین 30 | RD7/PSP7 — PORTD bit 7 / Parallel slave port data bit 7 |
| پین 31 | VSS — Ground reference |
| پین 32 | VDD — Positive supply voltage (2.0 V to 5.5 V) |
| پین 33 | RB0/INT — PORTB bit 0 / External interrupt input |
| پین 34 | RB1 — PORTB bit 1 |
| پین 35 | RB2 — PORTB bit 2 |
| پین 36 | RB3/PGM — PORTB bit 3 / Low-voltage ICSP programming enable |
| پین 37 | RB4 — PORTB bit 4 |
| پین 38 | RB5 — PORTB bit 5 |
| پین 39 | RB6/PGC — PORTB bit 6 / In-circuit serial programming clock / ICD clock |
| پین 40 | RB7/PGD — PORTB bit 7 / In-circuit serial programming data / ICD data |
| پین 41 | NC — Not connected (per datasheet) |
| پین 42 | NC — Not connected (per datasheet) |
| پین 43 | NC — Not connected (per datasheet) |
| پین 44 | NC — Not connected (per datasheet) |
کاربردهای معمول
PIC16F877T-04E/PQ مناسب است برای 6 کاربردs: Industrial Process Control, Sensor Interface Boards, HVAC Subsystem Controllers, Motor Control (Stepper / DC), Legacy Embedded System Sustaining, Instrumentation Front-Ends.
Industrial Process Control
The PIC16F877T-04E/PQ fits industrial process-control applications because of its 14 KB FLASH, 368 bytes RAM, 33 digital I/O, 10-bit multi-channel ADC, and -40C to +125C enhanced industrial temperature range. The 200 ns instruction execution at 4 MHz supports deterministic PID loop rates of 5-10 kHz, while the three 16-bit timers (TMR0, TMR1, TMR2) provide multiple time bases for solenoid valve PWM, pump speed control, and analog sensor sampling. The 2.0 V to 5.5 V VDD range tolerates 24 V industrial rails after external regulation. The MQFP-44 package is robust for factory-floor PCB designs with conformal coating. Pair with a MAX485 RS-485 transceiver for Modbus RTU industrial networking or a 4-20 mA current loop driver for legacy sensor networks.
پیشنهادی
Sensor Interface Boards
The PIC16F877T-04E/PQ is well suited for sensor-interface front-ends because its 10-bit ADC with up to 8 input channels handles multiple analog sensors simultaneously, while the integrated MSSP module supports both SPI and I2C communication with digital sensors such as accelerometers, gyroscopes, and temperature/humidity devices. The 256 bytes of internal EEPROM provides non-volatile storage of sensor calibration coefficients, and 368 bytes of RAM holds 30+ recent samples for averaging. The 33 digital I/O pins interface with discrete sensors and indicator LEDs, and the USART links to a host controller or Bluetooth module. Operate at 5.0 V for legacy analog sensor compatibility or 3.3 V for modern digital sensors. The MQFP-44 footprint is easy to lay out on a 4-layer sensor board with ground plane.
پیشنهادی
HVAC Subsystem Controllers
The PIC16F877T-04E/PQ targets HVAC subsystem controllers because its 14 KB FLASH stores full state-machine firmware for thermostat, damper, and blower control, while the 10-bit ADC reads multiple thermistor temperature sensors and pressure transducers. The two CCP (Capture/Compare/PWM) modules drive TRIAC phase-angle control for AC line voltage dimming and variable-speed blower motor control. The USART connects to a wall-mounted display or a wireless thermostat gateway, and the enhanced -40C to +125C temperature grade tolerates attic and outdoor HVAC environments. The MSSP module interfaces with EEPROM-backed real-time clocks (such as DS1307) for scheduling. Compared with PIC16F876, the PIC16F877 offers double the program memory and 8 more I/O pins, allowing single-chip HVAC control without external logic.
پیشنهادی
Motor Control (Stepper / DC)
The PIC16F877T-04E/PQ serves stepper and brushed-DC motor control applications because its three 16-bit timers and two CCP PWM modules generate up to 2 channels of variable-frequency, variable-duty PWM for H-bridge drivers. The 33 digital I/O pins drive L298 dual H-bridge logic inputs, end-stop limit switches, and quadrature encoder feedback. The USART enables Modbus or CAN bridge to a supervisory PLC, and the 10-bit ADC monitors motor current via shunt resistor for closed-loop torque control. The 5 MIPS throughput (at 4 MHz) executes field-oriented control algorithms for small BLDC motors up to several kHz. The 256 bytes EEPROM stores motor calibration parameters. For higher-rate FOC, upgrade to PIC16F877-20I/PQ at 20 MHz/5 MIPS.
پیشنهادی
Legacy Embedded System Sustaining
The PIC16F877T-04E/PQ is the sustaining-engineering choice for legacy embedded systems because the PIC16F877 family has a multi-decade installed base in industrial controllers, automotive accessories, and consumer appliances still in field service. The 14 KB FLASH supports direct port of legacy PIC16C7X firmware via assembly-level compatibility, and the same ICSP programming interface (RB6/RB7) allows in-field firmware updates with the same PICkit tools used 20 years ago. The -40C to +125C enhanced grade matches the original qualification, and the MQFP-44 footprint is a direct PCB-level replacement for end-of-life boards. The 5 V-tolerant digital I/O is compatible with legacy 5 V peripheral chips that have no 3.3 V equivalent. Use PIC16F877T-04E/PQ to keep mature products in production without re-qualifying the firmware stack.
پیشنهادی
Instrumentation Front-Ends
The PIC16F877T-04E/PQ is well suited for portable instrumentation front-ends because its 14 KB FLASH stores calibration tables and DSP-style digital filtering firmware, while the 10-bit ADC captures transducer signals at sample rates up to ~50 kSPS (channel-sequential). The USART streams digitized data to a host PC or Bluetooth link, and the 33 digital I/O pins drive LCD segment displays, keypads, and status LEDs. The 2.0 V to 5.5 V VDD range supports both 3.3 V lithium-battery and 5.0 V USB-powered operation, while the 256-byte EEPROM stores non-volatile instrument calibration. The enhanced -40C to +125C grade handles outdoor measurement environments. Compared with PIC16F876, the PIC16F877 doubles program memory, enabling on-chip FIR/IIR filtering without external DSP.
پیشنهادی
خلاصه محصولات پیشنهادی
دادههای مرجع مهندسی برای PIC16F877T-04E/PQ — مقایسه، راهنمای طراحی و اطلاعات انطباق.
راهنمای انتخاب
مقایسه با جایگزینها
| پارامتر | این محصول | PIC16F877-04E/PQ | PIC16F877-04I/PQ | PIC16F877-10E/PQ | PIC16F877-20I/PQ | PIC16F877-04/PQ | PIC16F874-04E/PQ |
|---|---|---|---|---|---|---|---|
| Package | 44-pin MQFP (PQ) | 44-pin MQFP (PQ) - same | 44-pin MQFP (PQ) - same | 44-pin MQFP (PQ) - same | 44-pin MQFP (PQ) - same | 44-pin MQFP (PQ) - same | 44-pin MQFP (PQ) - same |
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Maximum Clock Frequency | 4 MHz | 4 MHz | 4 MHz | 10 MHz | 20 MHz | 4 MHz | 4 MHz |
| Instruction Execution Time | 200 ns | 200 ns | 200 ns | 100 ns | 200 ns (from 20 MHz clock) | 200 ns | 200 ns |
| Program Memory (Flash) | 14 KB (8K x 14) | 14 KB | 14 KB | 14 KB | 14 KB | 14 KB | 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 |
| Operating Temperature Range | -40C to +125C (Enhanced 'E') | -40C to +125C (Enhanced) | -40C to +85C (Industrial) | -40C to +125C (Enhanced) | -40C to +85C (Industrial) | 0C to +70C (Commercial) | -40C to +125C (Enhanced) |
| I/O Pins | 33 | 33 | 33 | 33 | 33 | 33 | 33 |
| ADC Channels | 8 (10-bit) | 8 (10-bit) | 8 (10-bit) | 8 (10-bit) | 8 (10-bit) | 8 (10-bit) | 8 (10-bit) |
تفاوتهای کلیدی
- Tape & Reel packaging variant for SMT production (در مقابلPIC16F877-04E/PQ)
- Enhanced -40C to +125C operating temperature for harsh environments (در مقابلPIC16F877-04I/PQ)
- Doubles program memory of PIC16F874 family member (در مقابلPIC16F874-04E/PQ)
- Industry-standard PIC16F877 die with 30+ year ecosystem (در مقابلGeneric 8-bit MCU (e.g. ATmega32, STM8S))
یادداشتهای طراحی
Estimated: at VDD=5.0 V and active mode @ 4 MHz, the PIC16F877T-04E/PQ draws approximately 2-4 mA. Place a 100 nF ceramic decoupling capacitor directly between each VDD pin (11 and 32) and the nearest VSS pin (12 and 31), with traces shorter than 5 mm to suppress digital switching transients. Add a bulk 10 uF tantalum or aluminum electrolytic capacitor at the board's power input to handle inrush during ICSP programming (which briefly drives MCLR/VPP to ~13 V). The internal brown-out reset (BOR) is configurable but does not replace external supply supervision in safety-critical designs; for industrial applications add a dedicated supervisor such as MCP100 or TPS3839.
Route the oscillator traces (OSC1/OSC2, pins 13/14) with short, symmetric traces enclosed in a guard ring tied to ground. For a 4 MHz crystal application with two 22 pF load capacitors, place the capacitors within 3 mm of the OSC pins. The ICSP pins (RB6/PGC, RB7/PGD) must be accessible - either through a 6-pin ICSP header (standard Microchip pinout: 1=MCLR, 2=VDD, 3=VSS, 4=PGD, 5=PGC, 6=NC) or test points on production boards. Leave MCLR/VPP (pin 1) tied to VDD through a 10 kohm pull-up resistor, with the ICSP programmer overriding this during programming.
Three common pitfalls: (1) Do not leave MCLR floating - an unconnected MCLR pin will pick up noise and trigger spurious resets; always use the 10 kohm pull-up. (2) The PIC16F877 family is in Microchip maintenance status with 12-14 week lead times; for new designs start with PIC16F887 (drop-in enhanced replacement with active production) or PIC18F45K22 (32 KB FLASH, 16 MIPS, $2.50 typical). (3) The 33 I/O claim assumes all PORTB pull-ups are enabled; PORTB pins default to inputs with weak pull-ups at POR, but these can be disabled in firmware - verify RBPU bit in OPTION_REG before debugging 'stuck-high' inputs.
The PIC16F877T-04E/PQ's 5 V CMOS I/O has limited drive strength (~25 mA source/sink per pin, 200 mA total for all pins). For high-speed signals (SPI > 5 MHz, USART > 115.2 kbaud), add 33 ohm series damping resistors near the driver pin to reduce transmission-line ringing on traces > 50 mm. The analog inputs (RA0-RA5, RE0-RE2) share pins with digital I/O; configure them as analog inputs by clearing the corresponding PCFG bits in ADCON1 and as digital inputs by setting the corresponding TRIS bit. Add a 100 ohm isolation resistor between ADC input and digital signal source to prevent digital switching noise from coupling into the analog measurement.
اطلاعات انطباق
RoHS compliant per Microchip product page. Lead-free (Pb-free) and halogen-free per Microchip PIC16F877 family datasheet 30292D environmental compliance section. AEC-Q100 not qualified - the 'E' grade refers to enhanced temperature, not automotive qualification; for AEC-Q100 qualified applications choose PIC16F877A-I/PQ or PIC18F46K22-I/PT instead.