PIC16F877T-20/L - 8-bit 20MHz 14KB Flash MCU 44-PLCC | Microchip
MPN: PIC16F877T-20/L ✓ AktifPIC16F877T-20/L Ringkasan
A microcontroller (MCU) is a single-chip computer that integrates a CPU, memory (FLASH for program, SRAM for data, EEPROM for non-volatile storage), and peripherals (timers, ADC, communications, I/O) onto one silicon die. Within the broader taxonomy, the PIC16F877 belongs to the 8-bit microcontroller class, which sits inside the microcontroller family, which in turn is a subset of embedded computing semiconductors. The 8-bit class remains widely deployed where deterministic instruction timing, low cost, and simple toolchain (assembly or C with the MPLAB XC8 compiler) outweigh raw throughput.
Key specifications: 20MHz maximum clock, 5V typical operating voltage (range typically 2.0V-5.5V), 33 digital I/O pins, 8-channel 10-bit ADC, USART, MSSP (SPI/I2C), two CCP modules, and a watchdog timer. The 14KB FLASH holds roughly 8K instructions, generous for state machines, sensor aggregation, and human-machine-interface (HMI) controllers.
The architecture is built on Harvard memory organization with separate program and data buses, an instruction pipeline, and a 14-bit program word. Brown-out Reset (BOR), Power-on Reset (POR), and the watchdog timer combine to deliver robust in-field recovery without external supervisors. The MSSP peripheral supports both SPI master/slave and I2C master/slave, simplifying bus integration with EEPROMs, sensors, and displays.
Typical applications include industrial sensor interfaces, HVAC controllers, automotive body electronics (where the I-grade variant applies), consumer appliance controls, low-cost data acquisition, and educational/hobbyist development. The 8-channel ADC and 33 I/O make it a natural fit for instrumentation front-ends with keypad/LCD user interfaces.
A core design consideration is selecting the oscillator mode: crystal/ceramic resonator for timing-critical designs or internal RC mode to save board space. In-system programming (ICSP) via RB6/RB7 pins allows firmware updates without removing the device, but those pins must not be repurposed as outputs during programming.
This page synthesizes distributor pricing, drop-in alternatives, and practical design notes derived from cross-reference tooling not consolidated in any single source.
Pilihan pengganti yang segera untuk PIC16F877T-20/L — sama paket, pin-pin kompatibel. Bahagian paket yang berbeza memerlukan kerja ulang PCB diasingkan.
Varietas dalam siri ini
Model serupa yang kompatibel dengan pengganti yang segera PIC16F877T-20/L (sama faktor bentuk dan kaki) — berbeza dalam Operating Temperature, Package, Timers, Core Architecture, Mounting Type.
PIC16F877-20/L
✅ Masuk Drop-InHubungi untuk harga
Lihat Datasheet →PIC16F877-20I/L
✅ Masuk Drop-InHubungi untuk harga
Lihat Datasheet →PIC16F877A-20/L
✅ Masuk Drop-In📋 Alternatif rujukan (tidak dalam katalog)
PIC16F877A-I/L
✅ Masuk Drop-InHubungi untuk harga
Lihat Datasheet →PIC16F887-I/L
✅ Masuk Drop-In📋 Alternatif rujukan (tidak dalam katalog)
PIC16F877T-04/L
✅ Masuk Drop-InHubungi untuk harga
Lihat Datasheet →PIC16F877T-20/L Penilaian maksimum & Ciri-ciri Elektrik
| Program Memory Type | FLASH |
| Program Memory Size | 14KB (8K x 14 words) |
| Data RAM | 368 bytes |
| Data EEPROM | 256 bytes |
| CPU Core | PIC16 8-bit RISC |
| Frekuensi Klock Maksimum | 20 MHz |
| Instruction Execution Time | 200 ns |
| Number of Instructions | 35 |
| Operating Voltage | 5 V (typical, 2.0V-5.5V range per datasheet) |
| I/O Pins | 33 |
| ADC | 8 channels, 10-bit |
| Timers | 3 (Timer0, Timer1, Timer2) |
| Capture/Compare/PWM | 2 CCP modules |
| Serial Peripherals | USART + MSSP (SPI/I2C) |
| Kemasan | 44-pin PLCC (16.59x16.59 mm) |
| Jenis Pemasangan | Surface Mount |
| Suhu Operasi | 0°C to +70°C (commercial; I-grade available) |
| Packaging Format | Tape and Reel (T suffix) |
| Status RoHS | Unknown - verify with distributor |
Konfigurasi Pin PIC16F877T-20/L
| Pin 1 | NC — Not connected (per datasheet) |
| Pin 2 | RA0/AN0 — PORTA bit 0 / analog input 0 |
| Pin 3 | RA1/AN1 — PORTA bit 1 / analog input 1 |
| Pin 4 | RA2/AN2 — PORTA bit 2 / analog input 2 |
| Pin 5 | RA3/AN3/VREF+ — PORTA bit 3 / analog input 3 / VREF+ input |
| Pin 6 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input |
| Pin 7 | RA5/AN4/SS — PORTA bit 5 / analog input 4 / SPI slave select |
| Pin 8 | RE0/RD/AN5 — PORTE bit 0 / read control / analog input 5 |
| Pin 9 | RE1/WR/AN6 — PORTE bit 1 / write control / analog input 6 |
| Pin 10 | RE2/CS/AN7 — PORTE bit 2 / chip select / analog input 7 |
| Pin 11 | VDD — +5V supply |
| Pin 12 | VSS — Ground |
| Pin 13 | OSC1/CLKIN — Crystal oscillator / external clock input |
| Pin 14 | OSC2/CLKOUT — Crystal oscillator / clock output |
| Pin 15 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator out / Timer1 clock in |
| Pin 16 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator in / CCP2 |
| Pin 17 | RC2/CCP1 — PORTC bit 2 / CCP1 |
| Pin 18 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock |
| Pin 19 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I2C data |
| Pin 20 | RC5/SDO — PORTC bit 5 / SPI data out |
| Pin 21 | RC6/TX/CK — PORTC bit 6 / USART transmit / clock |
| Pin 22 | RC7/RX/DT — PORTC bit 7 / USART receive / data |
| Pin 23 | RB0/INT — PORTB bit 0 / external interrupt |
| Pin 24 | RB1 — PORTB bit 1 |
| Pin 25 | RB2 — PORTB bit 2 |
| Pin 26 | RB3/PGM — PORTB bit 3 / low-voltage programming |
| Pin 27 | RB4 — PORTB bit 4 |
| Pin 28 | RB5 — PORTB bit 5 |
| Pin 29 | RB6/PGC — PORTB bit 6 / ICSP clock |
| Pin 30 | RB7/PGD — PORTB bit 7 / ICSP data |
| Pin 31 | GND — Ground (substrate) |
| Pin 32 | VDD — +5V supply (second supply pin) |
| Pin 33 | RD0/PSP0 — PORTD bit 0 / parallel slave port bit 0 |
| Pin 34 | RD1/PSP1 — PORTD bit 1 / parallel slave port bit 1 |
| Pin 35 | RD2/PSP2 — PORTD bit 2 / parallel slave port bit 2 |
| Pin 36 | RD3/PSP3 — PORTD bit 3 / parallel slave port bit 3 |
| Pin 37 | RD4/PSP4 — PORTD bit 4 / parallel slave port bit 4 |
| Pin 38 | RD5/PSP5 — PORTD bit 5 / parallel slave port bit 5 |
| Pin 39 | RD6/PSP6 — PORTD bit 6 / parallel slave port bit 6 |
| Pin 40 | RD7/PSP7 — PORTD bit 7 / parallel slave port bit 7 |
| Pin 41 | VSS — Ground (second ground pin) |
| Pin 42 | VDD — +5V supply (third supply pin) |
| Pin 43 | NC — Not connected (per datasheet) |
| Pin 44 | NC — Not connected (per datasheet) |
Aplikasi Biasa
PIC16F877T-20/L patut untuk 7 aplikasis: Industrial Sensor Interface Controller, HVAC Control Board, Automotive Body Electronics (Standard-grade), Consumer Appliance Control, Low-Cost Data Acquisition Module, Educational / Hobbyist Development Platform, Security and Access Control Panels.
Industrial Sensor Interface Controller
The PIC16F877T-20/L's 8-channel 10-bit ADC and 33 digital I/O pins make it a natural fit for industrial multi-sensor hubs aggregating thermocouples, pressure transducers, and switch contacts. The 20MHz RISC core executes control loops every 200ns per instruction, easily handling PID loops for temperature or flow at sample rates of a few kHz. MSSP peripheral in I2C or SPI mode interfaces with digital sensor ASICs, while the USART handles RS-232 or RS-485 to a host PLC. The 256-byte EEPROM stores calibration constants across power cycles, and the built-in POR/BOR/watchdog combination lets the device recover from brownouts without a separate supervisor IC. A typical board places a 20MHz crystal on OSC1/OSC2 and a 220uF bulk capacitor near VDD.
Disebarkan
HVAC Control Board
The PIC16F877T-20/L is well-suited to HVAC thermostats and zone controller boards where it scans temperatures via the ADC, drives triacs through PWM from the CCP modules, and presents menus on character LCDs via software SPI. The 14KB FLASH holds state-machine control firmware plus diagnostic logs; 368 bytes RAM is sufficient for debounced key inputs and a small task scheduler. Operating from a 5V rail with internal brown-out detection, it boots cleanly through AC-coupled power drops. The 33 I/O pins map cleanly to fan relays, mode-select switches, and a 4x4 keypad matrix. Watchdog timer ensures recovery from firmware lockup without service calls.
Disebarkan
Automotive Body Electronics (Standard-grade)
In dashboards, mirror controllers, and seat modules, the PIC16F877T-20/L works in non-safety body applications. The commercial 0C-70C grade is sufficient for cabin environments where temperatures stay moderate; for under-hood or harsh locations select the I-suffix variant PIC16F877-20I/L. The CCP outputs drive LED current sinks for backlight dimming via PWM at 8-bit resolution, while MSSP talks to dashboard LCDs over SPI. ADC reads battery voltage and ambient light sensors via divider networks. Its automotive-pedigree legacy means a vast library of reference designs and bootloader resources is available.
Disebarkan
Consumer Appliance Control
Washing machines, microwave ovens, and coffee makers benefit from the PIC16F877T-20/L's deterministic interrupt latency, low BOM cost, and integrated EEPROM for cycle counters and end-of-life flags. The MSSP peripheral drives 7-segment or dot-matrix LED displays via SPI shift registers, while the PWM modules control heater triacs and motor drivers through optocouplers. Brown-out reset handles noisy AC-line-derived supplies. The 35 instruction set enables fully commented assembly that survives decades of firmware maintainership in long-life appliance products.
Disebarkan
Low-Cost Data Acquisition Module
The PIC16F877T-20/L serves as the heart of low-cost USB-to-DAQ modules where 8 analog inputs and a 10kHz aggregate sample rate meet many hobbyist and light-industrial needs. The 14KB FLASH holds a buffered-sampling firmware plus USB control transfer handling via the MSSP in SPI mode to a USB-UART bridge. ADC inputs condition signals with simple op-amp front-ends; the 33 I/O add digital I/O for 8-bit port-controlled devices. EEPROM preserves calibration across power cycles. Programmable via ICSP through a header that doubles as a debug connector - no need to remove the device for firmware updates.
Disebarkan
Educational / Hobbyist Development Platform
The PIC16F877T-20/L is the canonical MCU taught in undergraduate embedded courses and used in thousands of open-source projects. Schools leverage its 35-instruction RISC ISA to teach fundamentals in a one-semester lab, with assemblers, simulators, and C compilers in MPLAB X IDE all free. Hobbyists use the 44-PLCC socketed variant on breadboard-friendly breakout boards. The MICROCHIP PICKIT programmer/debugger connects directly to the ICSP pins; reference designs for peripherals (PWM, ADC, I2C, SPI, UART) span decades. The huge code-base example population makes it the easiest 8-bit MCU to find community support for.
Disebarkan
Security and Access Control Panels
Keypad door controllers and small alarm panels benefit from the PIC16F877T-20/L's low power, integrated EEPROM for storing user credentials, and PWM-driven buzzer tones. The MSSP in I2C master mode scans a 4x4 keypad matrix via a port-expander or directly through bit-banging on the I/O pins. The USART connects to a host dialer over RS-232 to a modem bridge. The brown-out detector locks the door relay during power-fail events to enforce fail-secure or fail-safe behavior per user configuration stored in EEPROM. Adequate FLASH for entry-log buffering across power cycles.
Disebarkan
Ringkasan Produk Disebarkan
Data referensi kejuruteraan untuk PIC16F877T-20/L — perbandingan, panduan rancangan, dan maklumat kesediaan
Panduan Pilihan
Perbandingan dengan Gantian
| Parametr | Produk Ini | PIC16F877-20/L | PIC16F877-20I/L | PIC16F877A-20/L | PIC16F877A-I/L | PIC16F887-I/L |
|---|---|---|---|---|---|---|
| Package | 44-PLCC | 44-PLCC - same | 44-PLCC - same | 44-PLCC - same | 44-PLCC - same | 44-PLCC - same |
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Program Memory (FLASH) | 14KB | 14KB | 14KB | 14KB | 14KB | 14KB |
| Max Clock Frequency | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 20 MHz |
| Operating Temperature | 0C to +70C | 0C to +70C | -40C to +85C (industrial) | 0C to +70C | -40C to +85C (industrial) | -40C to +85C (industrial) |
| Data RAM | 368 bytes | 368 bytes | 368 bytes | 368 bytes | 368 bytes | 368 bytes |
| Data EEPROM | 256 bytes | 256 bytes | 256 bytes | 256 bytes | 256 bytes | 256 bytes |
| I/O Pins | 33 | 33 | 33 | 33 | 33 | 33-36 |
| Silicon Revision | Original PIC16F877 | Original PIC16F877 | Original PIC16F877 | 'A' revision (enhanced) | 'A' revision (enhanced) | newer F887 silicon |
| Approx Unit Price (1 pc, as of 2026-10-22) | $4.14 - $11.50 | Lower (tube packaging) | Slightly higher (I grade) | Similar | Slightly higher (I grade) | Comparable or lower |
Penyeberangsung Jelas
- Tape-and-reel packaging format for high-volume SMT (vsPIC16F877-20/L)
- Mature, stable silicon with extensive legacy code-base (vsPIC16F887-I/L)
- Industrial-grade temperature option readily available (vsPIC16F877A-20/L (commercial grade))
- Tube vs tape-and-reel packaging preference (vsPIC16F877-20/L)
Catatan Desain
The PIC16F877T-20/L requires a stable 5V supply on all three VDD pins (11, 32, 42) plus decoupling of 100nF ceramics to the corresponding VSS pins (12, 31, 41). Brown-out Reset detection is set by CONFIG register bits; for designs on noisy rails, consider BOR enabled at 4.0V to force safe MCU state during supply sagging. Estimated: a 20MHz PIC16F877 draws roughly 30-40mA active, so the regulator must deliver at least 50mA peak.
Keep the 20MHz crystal traces short and symmetric, surrounded by a ground guard ring. Place OSC1/OSC2 capacitors within 5mm of the pins to avoid stray capacitance that shifts the oscillator. Route the ICSP pins (RB6/RB7) directly to a 6-pin header with no series resistors if used only for programming; if used as GPIO in normal operation, design the firmware so they can be tri-stated during ICSP.
Configuration word settings determine oscillator mode, watchdog, BOR threshold, code protection, and low-voltage programming. Forgetting to set the configuration bits correctly is the most common cause of 'dead' PIC16F877 prototypes. Always verify CONFIG in MPLAB and read-back after programming. Also: PORTB internal weak pull-ups are individually programmed via the OPTION register - they are not enabled by default.
When using ADC inputs, add 100nF bypass caps from each analog input to AGND if source impedance exceeds 10kΩ, and place analog traces away from digital switching lines. For best 10-bit ADC accuracy, source impedance should be below 2kΩ; sample-and-hold acquisition time must be considered in software timing. The VREF+ pin (RA3) should be bypassed with 10uF + 100nF if used.
Maklumat Kesediaan
RoHS compliance and lead-free status not explicitly stated in the supplied distributor metadata. Microchip's product page should be consulted for the specific date code and lead-free process variant. AEC-Q100 is not applicable as Microchip does not market PIC16F877 as automotive-qualified; for body electronics in cabin environments, AEC requirements do not strictly apply to standard commercial variants.