PIC16F877-04I/L - 4MHz 8-Bit Flash MCU, 14KB Flash | Microchip
MPN: PIC16F877-04I/L ✓ Hoạt độngPIC16F877-04I/L Tóm tắt
A microcontroller (MCU) is a single-chip computer containing a CPU core, non-volatile program memory (Flash/ROM), volatile data memory (RAM), and integrated peripherals such as timers, ADC, communication buses, and I/O ports. Within the broader taxonomy, a microcontroller sits between a microprocessor (CPU only) and a system-on-chip (SoC); the PIC16F877 is a Harvard-architecture MCU (separate program/data buses) optimized for deterministic, low-power embedded control. It belongs to the industry-standard "8-bit MCU" class, the same category as the Intel 8051, AVR ATmega, and STM8 families.
Key features include 368 bytes of RAM, 256 bytes of EEPROM data memory, 33 digital I/O pins, an 8-channel 10-bit Analog-to-Digital (A/D) converter, two Capture/Compare/PWM modules, a USART, an MSSP configurable as SPI or I2C, two additional timers, and an ICD (In-Circuit Debug) interface. The 04 speed grade denotes a 4 MHz oscillator; the I suffix indicates industrial temperature range (-40C to +85C); the L suffix denotes the lead-bearing 44-pin PLCC package.
Architecturally, the PIC16F877 uses a RISC-based CPU with only 35 single-word instructions and 200 ns instruction cycle time, providing deterministic real-time behaviour. The 14-bit instruction word width, separated code/data buses, and integrated hardware peripherals reduce external component count.
Typical applications include industrial control systems, sensor interfaces, motor control, home appliances, automotive body electronics (sub-systems), instrumentation, and educational/hobbyist development boards. The integrated ADC and PWM make it especially suited for closed-loop analog control loops.
When designing with this part, ensure the oscillator configuration (XT/HS/RC) matches the chosen crystal and load capacitors; the PLL is NOT present on the PIC16F877, so external clock multiplication is unavailable. For new designs consider the pin-compatible PIC16F887 or PIC16F877A which add enhanced features at similar cost.
This page synthesizes distributor pricing, drop-in alternatives, and practical design notes not found on a single manufacturer or distributor page.
Bộ thay thế dễ dàng lắp đặt cho PIC16F877-04I/L — cùng gói, chân-to-chân tương thích. Các bộ phận yêu cầu hàn PCB bị loại trừ.
Các biến thể trong loạt này
Các mẫu cùng loạt có thể lắp đặt dễ dàng tương thích với PIC16F877-04I/L (cùng hình factor và footprint) — khác nhau ở Package, Core Architecture, ADC, Operating Temperature, Timers.
PIC16F877A-I/L
✅ Drop-InLiên hệ để biết giá
Xem tài liệu →PIC16F887-I/L
✅ Drop-In📋 Tham chiếu thay thế (không có trong danh mục)
PIC16F877-04I/PQ
✅ Drop-In ⚠️ Thông số chưa được xác minhLiên hệ để biết giá
Xem tài liệu →PIC16F877-04I/L Tỷ lệ tối đa & tính chất điện
| Product Family | PIC® 16F |
| Core Architecture | 8-bit PIC (Harvard, RISC) |
| Program Memory Type | Flash |
| Program Memory Size | 14 KB (8K x 14) |
| RAM Size | 368 bytes |
| EEPROM Size | 256 bytes |
| Maximum CPU Speed | 4 MHz |
| Instruction Cycle Time | 200 ns |
| Number of I/O Pins | 33 |
| ADC | 8 channels, 10-bit |
| CCP/PWM Modules | 2 |
| Timers | 3 (Timer0, Timer1, Timer2) |
| Communication Interfaces | USART (1), MSSP for SPI/I2C (1) |
| Điện áp cung cấp | 2.0 V to 5.5 V |
| Nhiệt độ hoạt động | -40 C to +85 C (Industrial) |
| Hộp | 44-pin PLCC (16.59 x 16.59 mm) |
| Kiểu lắp đặt | Surface Mount (PLCC socket-compatible) |
| Debug Interface | ICD (In-Circuit Debug) |
Cấu hình chân PIC16F877-04I/L
| Chân 1 | MCLR/VPP — Master Clear (Reset) input / Programming voltage |
| Chân 2 | RA0/AN0 — PORTA bit 0 / Analog input channel 0 |
| Chân 3 | RA1/AN1 — PORTA bit 1 / Analog input channel 1 |
| Chân 4 | RA2/AN2 — PORTA bit 2 / Analog input channel 2 |
| Chân 5 | RA3/AN3/VREF+ — PORTA bit 3 / Analog channel 3 / ADC reference voltage + |
| Chân 6 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input (open-drain) |
| Chân 7 | RA5/AN4/SS — PORTA bit 5 / Analog channel 4 / SPI slave select |
| Chân 8 | RE0/RD/AN5 — PORTE bit 0 / Read control for parallel slave port / Analog channel 5 |
| Chân 9 | RE1/WR/AN6 — PORTE bit 1 / Write control for parallel slave port / Analog channel 6 |
| Chân 10 | RE2/CS/AN7 — PORTE bit 2 / Chip select for parallel slave port / Analog channel 7 |
| Chân 11 | VDD — Positive supply voltage (2.0 V to 5.5 V) |
| Chân 12 | VSS — Ground |
| Chân 13 | OSC1/CLKIN — Oscillator crystal input / External clock input |
| Chân 14 | OSC2/CLKOUT — Oscillator crystal output / Clock out (Fosc/4) |
| Chân 15 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator output / Timer1 clock input |
| Chân 16 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator input / CCP2 I/O |
| Chân 17 | RC2/CCP1 — PORTC bit 2 / CCP1 (PWM) I/O |
| Chân 18 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock |
| Chân 19 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I2C data |
| Chân 20 | RC5/SDO — PORTC bit 5 / SPI data out |
| Chân 21 | RC6/TX/CK — PORTC bit 6 / USART asynchronous transmit / synchronous clock |
| Chân 22 | RC7/RX/DT — PORTC bit 7 / USART asynchronous receive / synchronous data |
| Chân 23 | RD0/PSP0 — PORTD bit 0 / Parallel Slave Port data bit 0 |
| Chân 24 | RD1/PSP1 — PORTD bit 1 / Parallel Slave Port data bit 1 |
| Chân 25 | RD2/PSP2 — PORTD bit 2 / Parallel Slave Port data bit 2 |
| Chân 26 | RD3/PSP3 — PORTD bit 3 / Parallel Slave Port data bit 3 |
| Chân 27 | RD4/PSP4 — PORTD bit 4 / Parallel Slave Port data bit 4 |
| Chân 28 | RD5/PSP5 — PORTD bit 5 / Parallel Slave Port data bit 5 |
| Chân 29 | RD6/PSP6 — PORTD bit 6 / Parallel Slave Port data bit 6 |
| Chân 30 | RD7/PSP7 — PORTD bit 7 / Parallel Slave Port data bit 7 |
| Chân 31 | VSS — Ground |
| Chân 32 | VDD — Positive supply voltage (2.0 V to 5.5 V) |
| Chân 33 | RB0/INT — PORTB bit 0 / External interrupt input |
| Chân 34 | RB1 — PORTB bit 1 |
| Chân 35 | RB2 — PORTB bit 2 |
| Chân 36 | RB3/PGM — PORTB bit 3 / Low-voltage programming enable |
| Chân 37 | RB4 — PORTB bit 4 (interrupt-on-change) |
| Chân 38 | RB5 — PORTB bit 5 (interrupt-on-change) |
| Chân 39 | RB6/PGC — PORTB bit 6 / In-Circuit Debugger clock |
| Chân 40 | RB7/PGD — PORTB bit 7 / In-Circuit Debugger data |
| Chân 41 | VSS — Ground |
| Chân 42 | VDD — Positive supply voltage (2.0 V to 5.5 V) |
| Chân 43 | NC — Not connected (per datasheet) |
| Chân 44 | NC — Not connected (per datasheet) |
Ứng dụng tiêu biểu
PIC16F877-04I/L phù hợp cho 6 Áp dụngs: Industrial Sensor Interface Module, Motor Control PWM Drive, Home Appliance Control Board, Educational Microcontroller Trainer Board, Automotive Body Electronics Sub-System, Test and Measurement Instrument.
Industrial Sensor Interface Module
The PIC16F877-04I/L fits sensor interface modules because its integrated 8-channel 10-bit ADC samples multiple analog sensors (temperature, pressure, humidity) without external multiplexers. Running at 4 MHz with a 200 ns instruction cycle, the MCU executes deterministic ADC-polling loops and linearizes transducer responses in real time. Industrial -40 C to +85 C rating suits factory-floor PLC I/O cards. Pair with the PIC16F877A-I/L or PIC16F887-I/L for higher ADC throughput.
Được đề xuất
Motor Control PWM Drive
With 2 Capture/Compare/PWM modules and up to 33 digital I/O pins, the PIC16F877-04I/L drives brushed DC and stepper motors in low-power automation. At 4 MHz the PWM period resolution is sufficient for sub-1 kHz variable-speed drives; the integrated ADC closes current/voltage feedback loops. Designers needing four PWM outputs (e.g., for 3-phase BLDC) should step up to the PIC16F887-I/L, which adds two more PWM channels on the same PLCC footprint.
Được đề xuất
Home Appliance Control Board
The PIC16F877-04I/L is well-suited to washing-machine, dishwasher, and microwave oven control boards where its 14 KB Flash holds menu logic, 256-byte EEPROM stores user settings, and integrated ADC reads temperature/water-level sensors. The 44-PLCC package is socketable, easing field service. Rival parts: PIC16F877A-I/L. Its USART connects to displays; the MSSP handles SPI or I2C user-interface EEPROM/LED drivers.
Được đề xuất
Educational Microcontroller Trainer Board
Universities and coding clubs use the PIC16F877-04I/L in 44-PLCC trainer boards because the simple 35-instruction RISC core lets students learn embedded C and assembly quickly. The integrated MSSP configurability between SPI and I2C teaches both buses on a single device; the on-chip ICD (In-Circuit Debug) requires no external emulator. The Atmel ATmega328-AU variant on Arduino-style boards is a popular same-tier alternative.
Được đề xuất
Automotive Body Electronics Sub-System
The PIC16F877-04I/L with its -40 C to +85 C industrial grade can sit in non-safety automotive subsystems such as HVAC panels, mirror controllers, and seat-position memory modules. Its 14-bit Harvard architecture is deterministic, avoiding the jitter of polled interrupts on time-critical PWM outputs. For full -40 C to +125 C automotive grade, upgrade to AEC-Q100-qualified PIC18F or PIC16F1xxx family members.
Được đề xuất
Test and Measurement Instrument
Bench-top multimeters, low-frequency oscilloscopes, and signal-conditioning instruments use the PIC16F877-04I/L as a control MCU thanks to its 10-bit ADC, USART for PC data uplink, and adequate Flash for menu and waveform-rendering code. At 4 MHz the instruction cycle matches the speed of slow analog front-end events. The integrated EEPROM holds calibration constants and last-reading state across power cycles.
Được đề xuất
Tóm tắt các sản phẩm được đề xuất
Dữ liệu tham khảo kỹ thuật cho PIC16F877-04I/L — so sánh, hướng dẫn thiết kế và thông tin tuân thủ.
Hướng dẫn chọn lựa
So sánh với các sản phẩm thay thế
| Tham số | Sản phẩm này | PIC16F877A-I/L | PIC16F887-I/L | PIC16F877-04I/PQ |
|---|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | 44-PLCC (16.59 x 16.59 mm) | 44-PLCC (16.59 x 16.59 mm) - same | 44-PLCC (16.59 x 16.59 mm) - same | 44-MQFP (10 x 10 mm) - different footprint |
| Maximum CPU Speed | 4 MHz | 20 MHz | 20 MHz | 4 MHz |
| Program Memory (Flash) | 14 KB | 14 KB | 14 KB | 14 KB |
| RAM | 368 bytes | 368 bytes | 368 bytes | 368 bytes |
| EEPROM | 256 bytes | 256 bytes | 256 bytes | 256 bytes |
| PWM Modules | 2 (CCP) | 2 (CCP) | 2 (CCP) + 2 (enhanced) | 2 (CCP) |
| ADC Channels / Resolution | 8 ch / 10-bit | 8 ch / 10-bit (faster conversion) | 14 ch / 10-bit | 8 ch / 10-bit |
| Internal Oscillator | No (external required) | No | Yes (8 MHz, software-tunable) | No |
| Approx. Unit Price @ 100 | $6.79 | $7.10 | $4.50 | $8.10 |
Bảo phân biệt quan trọng
- Legacy 4 MHz speed grade preserves firmware timing compatibility (vsPIC16F887-I/L)
- Socketable 44-PLCC package simplifies field replacement (vsPIC16F877-04I/PQ (44-MQFP))
- Industrial -40 C to +85 C operating range (vsPIC16F877-04/L (commercial))
Ghi chú thiết kế
Decouple VDD with a 100 nF ceramic capacitor on each of the three VDD pins (11, 32, 42) and place each capacitor within 2 mm of its respective pin. Use a single bulk 10 uF tantalum or aluminum-polymer capacitor near the MCU's average load current. The PIC16F877 has three power/ground pairs (instead of one) to minimize digital switching noise coupling into sensitive analog reference nets; routing each pair through separate via pairs on the ground plane improves ADC accuracy by 1-2 LSB.
Route the oscillator traces (OSC1/OSC2, pins 13-14) as short as possible and enclose them with a grounded guard ring to prevent high-current digital lines from injecting noise. Keep the crystal case and load capacitors within 5 mm of the MCU and isolate them from switching I/O. For HS-mode designs above 4 MHz, add a 100 ohm series resistor on OSC2 to dampen reflections. The PLCC socket variant enables crystal probing during EMI testing.
Do not forget the MCLR pull-up: pin 1 must see a 10 kohm pull-up to VDD for normal operation; the internal pull-up on PIC16F877 is not enabled by default. Watch out for read-modify-write hazards on PORTB when changing interrupt-on-change pins - read the port byte, mask, modify, then write back, or use the shadow register technique. The PIC16F877 has NO internal oscillator - you must supply an external crystal, resonator, or clock signal even at 4 MHz.
The 8-channel ADC draws transient current from VDD during conversion; add a 1 uF decoupling cap on the AVdd/VREF+ pin (pin 5 on PLCC) shared with PORTA pins. If analog measurements are noisy, dedicate a separate analog VDD rail filtered through a ferrite bead from the digital VDD. The 44-PLCC package's lead inductance (~5 nH per pin) is acceptable for the PIC16F877's clock rates but becomes a constraint if you upgrade to PIC16F887 at 20 MHz - plan your redesign accordingly.
Thông tin tuân thủ
RoHS / lead-free / REACH status of the L (44-PLCC) variant was not found in the verified web data and is marked as unknown. The /L suffix in legacy Microchip nomenclature predates the modern RoHS naming scheme; consult the Microchip product page or sales contact for confirmation. Microchip publishes a conflict-minerals statement (compliant per company policy).