PIC16F874-04I/L - 8-bit MCU, 4MHz, 7KB Flash, 44-PLCC | Microchip
MPN: PIC16F874-04I/L ✓ Hoạt độngPIC16F874-04I/L Tóm tắt
What is a PIC microcontroller? The PIC (Peripheral Interface Controller) is a family of 8/16/32-bit RISC microcontrollers originally developed by General Instrument's microelectronics division and later popularized by Microchip Technology. PIC MCUs occupy the hypernym hierarchy microcontroller -> embedded processor -> semiconductor IC, and are widely adopted for deterministic real-time control tasks in industrial, automotive, and consumer applications due to their compact instruction set, low power modes, and rich peripheral integration. The PIC16F874 belongs to the PIC16F mid-range family, sitting between the baseline PIC10/12/16 and the high-performance PIC18/PIC24 families.
Key features of the PIC16F874-04I/L include 33 digital I/O lines, a 10-bit 8-channel Analog-to-Digital Converter (ADC), two 8-bit timers plus one 16-bit timer, a USART for asynchronous/synchronous serial communication, an MSSP module supporting both SPI and I²C (Master/Slave), a Capture/Compare/PWM (CCP) module, and a watchdog timer with on-chip RC oscillator for reliable operation. The device supports in-circuit serial programming (ICSP) via two pins, enabling field firmware updates without desoldering.
Architecturally, the PIC16F874 employs a Harvard-style RISC core with separate program and data buses, a 14-bit instruction word, and a 200 ns instruction execution time at 4 MHz. The four available oscillator modes (RC, LP, XT, HS) plus the on-chip 4 MHz RC oscillator allow designers to balance cost, EMI, and power. An integrated brown-out reset (BOR) circuit and power-on reset (POR) ensure deterministic startup across the 4.0–5.5 V supply range.
Typical applications include industrial control panels, HVAC actuators, automotive body electronics, sensor signal conditioning, low-end human-machine interfaces (HMIs) with character LCDs, and legacy embedded designs originally built around the 16F family. The wide operating temperature range of -40 °C to +85 °C (industrial 'I' suffix) makes the part suitable for uncontrolled thermal environments.
When designing with this part, observe the 4 MHz maximum clock for the -04 speed grade; for designs migrating from the 20 MHz -20 variant, simply replace the speed-grade suffix and verify timing margins. The PLCC-44 socket allows convenient prototyping, and pin compatibility with the PIC16F877 enables memory upgrade paths without PCB rework.
This page synthesizes verified distributor pricing, drop-in alternatives within the PLCC-44 footprint, and practical design notes not found in the manufacturer datasheet alone.
Bộ thay thế dễ dàng lắp đặt cho PIC16F874-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 PIC16F874-04I/L (cùng hình factor và footprint) — khác nhau ở Package, Timers, Core Architecture, Operating Temperature, Mounting Type.
PIC16F877-04I/L
✅ Drop-InLiên hệ để biết giá
Xem tài liệu →PIC16F874-20I/L
✅ Drop-In📋 Tham chiếu thay thế (không có trong danh mục)
PIC16F874-04/L
✅ Drop-InLiên hệ để biết giá
Xem tài liệu →PIC16LF874-04I/L
✅ Drop-InLiên hệ để biết giá
Xem tài liệu →PIC16F874T-04I/L
✅ Drop-InLiên hệ để biết giá
Xem tài liệu →PIC16F874-04I/L Tỷ lệ tối đa & tính chất điện
| Core Architecture | PIC16 (8-bit RISC, Harvard) |
| Instruction Set Width | 14-bit |
| Tần số xung maksimum | 4 MHz |
| MIPS (Dhrystone equivalent) | 4 MIPS |
| Instruction Execution Time | 200 ns @ 4 MHz |
| Program Memory (Flash) | 7 KB (4K x 14 words) |
| Data RAM | 192 bytes |
| Data EEPROM | 128 bytes |
| I/O Pins | 33 |
| ADC | 10-bit, 8 channels |
| Timers | 2 x 8-bit, 1 x 16-bit |
| Communication Peripherals | USART, MSSP (SPI / I²C) |
| CCP Modules | 1 (Capture/Compare/PWM) |
| Điện áp cung cấp | 4.0 V to 5.5 V |
| Nhiệt độ hoạt động | -40 °C to +85 °C (Industrial 'I' grade) |
| Hộp | 44-PLCC (16.59 x 16.59 mm) |
| Kiểu lắp đặt | Surface Mount (PLCC socket compatible) |
| In-Circuit Programming | ICSP (2-wire) |
| Oscillator Modes | LP, XT, HS, RC + internal 4 MHz RC |
| Watchdog Timer | Yes, with on-chip RC oscillator |
| Brown-out Reset | Yes |
| Trạng thái RoHS | Compliant |
| Speed Grade | -04 (4 MHz) |
Cấu hình chân PIC16F874-04I/L
| Chân 1 | MCLR/VPP — Master Clear (Reset) input / ICSP 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 input channel 3 / ADC positive reference |
| Chân 6 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input |
| Chân 7 | RA5/AN4/SS — PORTA bit 5 / Analog input channel 4 / SPI Slave Select |
| Chân 8 | RE0/RD/AN5 — PORTE bit 0 / Read control for parallel slave port / Analog input 5 |
| Chân 9 | RE1/WR/AN6 — PORTE bit 1 / Write control for parallel slave port / Analog input 6 |
| Chân 10 | RE2/CS/AN7 — PORTE bit 2 / Chip Select for parallel slave port / Analog input 7 |
| Chân 11 | VDD — Positive supply voltage (4.0–5.5 V) |
| Chân 12 | VSS — Ground reference |
| Chân 13 | OSC1/CLKIN — Oscillator crystal input / external clock input |
| Chân 14 | OSC2/CLKOUT — Oscillator crystal output / clock output (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 output |
| Chân 17 | RC2/CCP1 — PORTC bit 2 / CCP1 PWM output |
| Chân 18 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I²C clock |
| Chân 19 | RD0/PSP0 — PORTD bit 0 / Parallel Slave Port data bit 0 |
| Chân 20 | RD1/PSP1 — PORTD bit 1 / Parallel Slave Port data bit 1 |
| Chân 21 | RD2/PSP2 — PORTD bit 2 / Parallel Slave Port data bit 2 |
| Chân 22 | RD3/PSP3 — PORTD bit 3 / Parallel Slave Port data bit 3 |
| Chân 23 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I²C data |
| Chân 24 | RC5/SDO — PORTC bit 5 / SPI data out |
| Chân 25 | RC6/TX/CK — PORTC bit 6 / USART asynchronous transmit / synchronous clock |
| Chân 26 | RC7/RX/DT — PORTC bit 7 / USART asynchronous receive / synchronous data |
| 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 reference |
| Chân 32 | VDD — Positive supply voltage (4.0–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 ICSP programming input |
| Chân 37 | RB4 — PORTB bit 4 |
| Chân 38 | RB5 — PORTB bit 5 |
| Chân 39 | RB6/PGC — PORTB bit 6 / ICSP clock (programming/debug) |
| Chân 40 | RB7/PGD — PORTB bit 7 / ICSP data (programming/debug) |
| Chân 41 | NC — Not connected (per datasheet) |
| Chân 42 | NC — Not connected (per datasheet) |
| Chân 43 | NC — Not connected (per datasheet) |
| Chân 44 | NC — Not connected (per datasheet) |
Ứng dụng tiêu biểu
PIC16F874-04I/L phù hợp cho 6 Áp dụngs: Industrial Control Panels, Automotive Body Electronics, Sensor Signal Conditioning, HVAC Actuator Control, Character LCD Human-Machine Interface, Legacy Embedded Maintenance Designs.
Industrial Control Panels
The PIC16F874-04I/L's industrial -40 °C to +85 °C temperature range, integrated brown-out reset, and 33 I/O pins make it a strong fit for industrial control panels driving relays, contactors, and indicator LEDs. Its 7 KB Flash accommodates state-machine logic and Modbus RTU slave firmware via the integrated USART. With 4 MIPS of deterministic throughput, the part executes a typical PLC scan cycle in well under 1 ms, while the 10-bit ADC reads 4–20 mA loopback signals from field transmitters. The 44-PLCC socket simplifies field replacement during maintenance. Compared with newer Cortex-M0 parts, the PIC16F874 offers lower cost for non-connected panels and a mature toolchain with MPLAB X IDE.
Được đề xuất
Automotive Body Electronics
The PIC16F874-04I/L's -40 °C to +85 °C operating range, hardware PWM (CCP) module, and watchdog timer suit it to non-safety automotive body applications such as seat controllers, mirror adjusters, and ambient lighting drivers. The 10-bit 8-channel ADC reads multiple position sensors and temperature inputs; the MSSP drives SPI-controlled LED drivers or I²C ambient-light sensors. While not AEC-Q100 qualified, the part is widely deployed in commercial-vehicle body modules where automotive certification is delegated to the vehicle-level ECU. The 44-PLCC package supports through-hole prototyping on legacy body-electronics PCBs still in production. For new designs Microchip recommends the PIC16F18877 in automotive grades.
Được đề xuất
Sensor Signal Conditioning
The PIC16F874-04I/L's 10-bit 8-channel ADC, 192 B RAM, and 7 KB Flash make it well suited to multi-channel sensor signal-conditioning nodes that read, linearize, and forward measurement data. With 33 I/O, the part can directly drive 7–8 analog sensors plus a digital display via SPI. The MSSP I²C master mode reads external digital sensors (pressure, humidity), while the CCP module generates timing pulses for ultrasonic or capacitive sensors. The on-chip 4 MHz RC oscillator reduces BOM cost for non-timing-critical applications, and the ICSP interface allows calibration updates in the field.
Được đề xuất
HVAC Actuator Control
The PIC16F874-04I/L controls HVAC damper and valve actuators by reading temperature sensors through the 10-bit ADC and driving triac-gated outputs via the CCP PWM module. Its 4 MIPS throughput closes the PID loop in under 250 µs, ensuring stable damper positioning without overshoot. The 128-byte EEPROM stores calibration coefficients for each actuator channel, while the USART connects to a building-automation bus. Industrial temperature rating supports rooftop unit deployment. The 44-PLCC socket on legacy damper boards simplifies field replacement. Compared with discrete analog PID loops, the digital implementation reduces tuning time and improves long-term stability.
Được đề xuất
Character LCD Human-Machine Interface
The PIC16F874-04I/L drives HD44780-compatible character LCDs (16x2 or 20x4) using software-generated timings or via the MSSP SPI interface to LCD controller chips. With 7 KB Flash, the part supports menu hierarchies, button debouncing, and simple graphics in firmware. The 33 I/O handle up to a 4x4 keypad matrix plus dedicated control outputs for backlight PWM. The integrated USART enables serial debug output for in-system parameter tuning. The 44-PLCC package fits legacy industrial HMI enclosures still using through-hole assembly. Compared with character-LCD-only COB solutions, the PIC16F874 offers flexible firmware updates.
Được đề xuất
Legacy Embedded Maintenance Designs
The PIC16F874-04I/L is the production-keepalive part for legacy products originally designed in the late 1990s and 2000s that must continue to manufacture without PCB respins. Its 44-PLCC socket and PIC16F instruction set guarantee forward compatibility with the original firmware image, while modern Microchip MPLAB X IDE supports recompilation. The -04 speed grade and -I industrial temperature rating match the original BOM. For products requiring more code space, the pin-compatible PIC16F877-04I/L or newer PIC16F884-I/L offers drop-in upgrade paths. Stock availability at major distributors remains strong as of 2026-09-21.
Đượ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 PIC16F874-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 | PIC16F877-04I/L | PIC16F874-20I/L | PIC16F874-04/L | PIC16LF874-04I/L | PIC16F874T-04I/L |
|---|---|---|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | 44-PLCC | 44-PLCC - same | 44-PLCC - same | 44-PLCC - same | 44-PLCC - same | 44-PLCC - same |
| Maximum Clock Frequency | 4 MHz | 4 MHz | 20 MHz | 4 MHz | 4 MHz | 4 MHz |
| Program Flash Memory | 7 KB | 14 KB | 7 KB | 7 KB | 7 KB | 7 KB |
| Data RAM | 192 bytes | 368 bytes | 192 bytes | 192 bytes | 192 bytes | 192 bytes |
| Data EEPROM | 128 bytes | 256 bytes | 128 bytes | 128 bytes | 128 bytes | 128 bytes |
| Supply Voltage Range | 4.0–5.5 V | 4.0–5.5 V | 4.0–5.5 V | 4.0–5.5 V | 2.0–5.5 V | 4.0–5.5 V |
| Operating Temperature | -40 °C to +85 °C (Industrial) | -40 °C to +85 °C (Industrial) | -40 °C to +85 °C (Industrial) | 0 °C to +70 °C (Commercial) | -40 °C to +85 °C (Industrial) | -40 °C to +85 °C (Industrial) |
| I/O Pins | 33 | 33 | 33 | 33 | 33 | 33 |
| ADC | 10-bit, 8 channels | 10-bit, 8 channels | 10-bit, 8 channels | 10-bit, 8 channels | 10-bit, 8 channels | 10-bit, 8 channels |
| Lifecycle Status | Active | Active | Active | Active | Active | Active |
Bảo phân biệt quan trọng
- Wide industrial temperature range with proven PLCC-44 supply chain (vsPIC16LF874-04I/L)
- Mature PIC16F instruction set compatibility (vsPIC16F884-I/L)
- 44-PLCC socket compatibility with PIC16F877 family (vsPIC16F874-04/P (commercial temp))
Ghi chú thiết kế
The PIC16F874-04I/L operates from a single 4.0–5.5 V supply. Place a 100 nF decoupling capacitor as close as possible to each VDD/VSS pin pair (pins 11/12 and 31/32), with a bulk 10 µF tantalum or ceramic capacitor at the regulator output. The integrated brown-out reset (BOR) trip threshold is configurable in the configuration word; leave BOR enabled for industrial designs to avoid code execution at marginal voltages. The MCLR pin (pin 1) should be tied to VDD through a 10 kΩ pull-up and decoupled with a 100 nF capacitor for noise immunity.
For the 44-PLCC package, use a PLCC-44 through-hole socket to support prototyping and field replacement. Reserve a 4-pin header (or 2x3 ICSP header) connected to MCLR/VPP, VDD, VSS, PGC (RB6), and PGD (RB7) to enable in-circuit serial programming and MPLAB ICD debugging without removing the MCU. Keep the trace from OSC1 to the crystal shorter than 12 mm, and guard the crystal area with a ground ring to reduce EMI. When using the on-chip 4 MHz RC oscillator (CONFIG FOSC = INTRC), leave the OSC1/OSC2 pins as GPIO on PORTA/ PORTA ALT.
Two common pitfalls: (1) Configuring analog pins without setting ADCON1 — analog pins default to analog mode on POR, so leaving the TRISA bits alone does not free a pin for digital I/O. Always write ADCON1 before reading PORTA if any pins are digital. (2) Forgetting the configuration word — the PIC16F874 requires the oscillator, watchdog, BOR, code-protect, and LVP bits to be set at programming time via the __CONFIG macro. A blank configuration word defaults to RC oscillator with WDT enabled and may leave the device unresponsive. Use MPLAB X IDE's configuration bits window to verify before programming.
When using the MSSP module in I²C mode, install 4.7 kΩ pull-ups on SDA (RC4) and SCL (RC3) to VDD, and add 100 pF series termination on long bus segments (>50 mm) to damp ringing. For SPI master mode, route SDO/SDI/SCK as a tightly coupled bus with ground guard traces; maximum SPI clock at 4 MHz FOSC is 1 MHz (FOSC/4). For ADC accuracy, place the analog input traces away from digital switching signals and add a 100 nF bypass at each analog input pin to reduce sample-charge kickback noise.
Thông tin tuân thủ
RoHS and REACH compliant per Microchip product page. Not AEC-Q100 qualified — for automotive safety applications, choose PIC16F18877 in AEC-Q100 grade.