PIC16F877A-E/L - 8-bit 20MHz 14KB Flash MCU 44-PLCC | Microchip
N.º da peça: PIC16F877A-E/L ✓ Ativo| Qtd. | Preço unitário | Total |
|---|---|---|
| 1 | $13.16 | $13,16 |
| 10 | $11.85 | $118,50 |
| 100 | $9.95 | $995,00 |
| 500 | $8.65 | $4.325,00 |
| 1.000 | $7.4 | $7.400,00 |
PIC16F877A-E/L Visão geral
An 8-bit microcontroller (MCU) is a single-chip computer that integrates a CPU, RAM, non-volatile program memory, peripherals, and I/O on one die. PIC16F-series MCUs belong to the enhanced mid-range family of Microchip's PIC microcontroller hierarchy: PIC10/12/14/16 (base-line and mid-range 8-bit) -> PIC16 (mid-range, enhanced mid-range) -> PICmicro 8-bit -> Microcontroller -> Semiconductor. They are designed for deterministic, low-power embedded control with a small instruction footprint (35 instructions on the PIC16F877A).
Key features of the PIC16F877A include a 10-bit Analog-to-Digital Converter (ADC) with up to 8 input channels, two 8-bit timers plus one 16-bit timer, two Capture/Compare/PWM (CCP) modules, an Enhanced Universal Synchronous Asynchronous Receiver Transmitter (EUSART), a Master Synchronous Serial Port (MSSP) configurable for SPI or I2C, an ICD (In-Circuit Debug) interface, two analog comparators, brown-out reset (BOR), and a programmable watchdog timer. The Harvard architecture and 14-bit instruction word allow compact, predictable code execution.
Typical applications include industrial control systems, HVAC controllers, automotive body and interior electronics, sensor signal conditioning, low-cost instrumentation, and education/development platforms where the PIC16F877A is a long-standing reference design. The wide operating voltage and rich analog/digital peripheral mix make it suitable for replacing multiple discrete components with one programmable solution.
When designing with this device, ensure proper decoupling (100 nF + 10 uF bulk) near VDD pins, place the MCLR pull-up correctly for in-circuit debugging, and verify I/O assignments against the 44-pin PLCC pinout. The internal RC oscillator can be used to save cost, but a crystal is recommended for timing-sensitive UART or PWM applications.
Alternativas drop-in para PIC16F877A-E/L — mesmo encapsulamento, compatível pino a pino. Peças de encapsulamento diferente que exigem retrabalho na PCB são excluídas.
Variantes desta série
Modelos da mesma série compatíveis como drop-in com PIC16F877A-E/L (mesmo formato e footprint) — diferindo em Package, Core Architecture, Operating Temperature, Serial Interfaces, Timers.
Ferramenta de comparação rápida — selecione peças alternativas para comparação lado a lado:
PIC16F877-20/L
✅ Drop-In ⚠️ Especificações não verificadas✓ Em estoque
$4.85 / unidade
Ver ficha técnica →PIC16F877-20I/L
✅ Drop-In ⚠️ Especificações não verificadas✓ Em estoque
$9.05 / unidade
Ver ficha técnica →PIC16F871-E/L
✅ Drop-In✓ Em estoque
$5.2 / unidade
Ver ficha técnica →PIC18F458-E/L
✅ Drop-In✓ Em estoque
$8.92 / unidade
Ver ficha técnica →PIC16F877A-I/L
✅ Drop-In ⚠️ Especificações não verificadas✓ Em estoque
$7.12 / unidade
Ver ficha técnica →PIC16F877A-E/L Classificações máximas e características elétricas
| Core | PIC16 |
| Architecture | 8-bit Harvard RISC |
| Instruction Set | 35 single-word instructions |
| Instruction Cycle Time | 200 ns @ 20 MHz |
| Frequência máxima de clock | 20 MHz |
| Program Memory (Flash) | 14 KB (8K x 14 words) |
| Data Memory (SRAM) | 368 bytes |
| Data EEPROM | 256 bytes |
| Supply Voltage (VDD) | 2.0 V to 5.5 V |
| Temperatura de operação | -40 C to +125 C (Extended grade, "E") |
| I/O Pins | 33 |
| ADC | 10-bit, up to 8 channels |
| Timers | 2 x 8-bit, 1 x 16-bit |
| CCP Modules | 2 (Capture/Compare/PWM) |
| Serial Interfaces | MSSP (SPI / I2C), EUSART (RS-232/RS-485) |
| Comparators | 2 analog |
| In-Circuit Debug | Yes (ICD) |
| Brown-out Reset | Yes |
| Watchdog Timer | Yes (programmable) |
| Encapsulamento | 44-pin PLCC (J-lead, 16.59 x 16.59 mm) |
| Tipo de montagem | Surface Mount |
| Nível MSL | 3 (168 hours) |
| Status RoHS | Compliant |
Configuração de pinos do PIC16F877A-E/L
| Pino 1 | MCLR/VPP — Master Clear (Reset) input / Programming voltage |
| Pino 2 | RA0/AN0 — PORTA bit 0 / Analog input 0 |
| Pino 3 | RA1/AN1 — PORTA bit 1 / Analog input 1 |
| Pino 4 | RA2/AN2/VREF- — PORTA bit 2 / Analog input 2 / ADC VREF- |
| Pino 5 | RA3/AN3/VREF+ — PORTA bit 3 / Analog input 3 / ADC VREF+ |
| Pino 6 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input |
| Pino 7 | RA5/AN4/SS — PORTA bit 5 / Analog input 4 / SPI slave select |
| Pino 8 | RE0/RD/AN5 — PORTE bit 0 / Parallel port read control / Analog input 5 |
| Pino 9 | RE1/WR/AN6 — PORTE bit 1 / Parallel port write control / Analog input 6 |
| Pino 10 | RE2/CS/AN7 — PORTE bit 2 / Parallel port chip select / Analog input 7 |
| Pino 11 | VDD — Positive supply voltage (+5 V typical) |
| Pino 12 | VSS — Ground reference |
| Pino 13 | OSC1/CLKIN — Oscillator input / External clock input |
| Pino 14 | OSC2/CLKOUT — Oscillator output / Clock output |
| Pino 15 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator output / Timer1 clock input |
| Pino 16 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator input / CCP2 I/O |
| Pino 17 | RC2/CCP1 — PORTC bit 2 / CCP1 I/O (Capture/Compare/PWM) |
| Pino 18 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock |
| Pino 19 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I2C data |
| Pino 20 | RC5/SDO — PORTC bit 5 / SPI data out |
| Pino 21 | RC6/TX/CK — PORTC bit 6 / EUSART async transmit / sync clock |
| Pino 22 | RC7/RX/DT — PORTC bit 7 / EUSART async receive / sync data |
| Pino 23 | RD0/PSP0 — PORTD bit 0 / Parallel slave port bit 0 |
| Pino 24 | RD1/PSP1 — PORTD bit 1 / Parallel slave port bit 1 |
| Pino 25 | RD2/PSP2 — PORTD bit 2 / Parallel slave port bit 2 |
| Pino 26 | RD3/PSP3 — PORTD bit 3 / Parallel slave port bit 3 |
| Pino 27 | RD4/PSP4 — PORTD bit 4 / Parallel slave port bit 4 |
| Pino 28 | RD5/PSP5 — PORTD bit 5 / Parallel slave port bit 5 |
| Pino 29 | RD6/PSP6 — PORTD bit 6 / Parallel slave port bit 6 |
| Pino 30 | RD7/PSP7 — PORTD bit 7 / Parallel slave port bit 7 |
| Pino 31 | VSS — Ground reference |
| Pino 32 | VDD — Positive supply voltage (+5 V typical) |
| Pino 33 | RB0/INT — PORTB bit 0 / External interrupt input |
| Pino 34 | RB1 — PORTB bit 1 |
| Pino 35 | RB2 — PORTB bit 2 |
| Pino 36 | RB3/PGM — PORTB bit 3 / Low-voltage programming input |
| Pino 37 | RB4 — PORTB bit 4 |
| Pino 38 | RB5 — PORTB bit 5 |
| Pino 39 | RB6/PGC — PORTB bit 6 / In-circuit debugger clock |
| Pino 40 | RB7/PGD — PORTB bit 7 / In-circuit debugger data |
| Pino 41 | NC — Not connected (per datasheet) |
| Pino 42 | NC — Not connected (per datasheet) |
| Pino 43 | NC — Not connected (per datasheet) |
| Pino 44 | NC — Not connected (per datasheet) |
Aplicações típicas
PIC16F877A-E/L é adequado para 6 aplicaçãos: Industrial Control Systems, HVAC and Building Automation, Educational and Development Platforms, Sensor Signal Conditioning Nodes, Automotive Body Electronics, Low-Cost Instrumentation.
Industrial Control Systems
The PIC16F877A-E/L is a strong fit for industrial control with 33 digital I/O to drive relays, contactors, and discrete sensors, plus a 10-bit ADC for analog process variables. Its 2.0 V to 5.5 V supply range tolerates 24 V industrial bus rails after simple regulation. Hardware PWM and CCP modules simplify closed-loop PID loops for motor or valve control without software overhead.
Recomendado
HVAC and Building Automation
The PIC16F877A-E/L handles multi-zone HVAC control by reading temperature sensors via its 10-bit ADC and driving triac/SSR outputs through its CCP/PWM modules. The MSSP interface supports I2C temperature/humidity sensor arrays, while EUSART links to building management networks. The Extended temperature grade (-40 C to +125 C) supports unconditioned rooftop and basement installations.
Recomendado
Educational and Development Platforms
The PIC16F877A-E/L is the canonical reference microcontroller for embedded systems curricula, with decades of academic tutorials, datasheets, and example code. Its 44-pin PLCC is easy to socket on development boards, while the in-circuit debugger (ICD) interface enables live debugging in MPLAB X. The 14 KB Flash accommodates multiple student projects without reprogramming hardware.
Recomendado
Sensor Signal Conditioning Nodes
The PIC16F877A-E/L integrates sensor signal paths by multiplexing multiple analog sensors through the 10-bit ADC, processing thresholds, and driving outputs via SPI or UART. Its 5 MIPS performance is adequate for digital filtering (moving average, basic Kalman) on slow-changing sensor signals. The wide 2.0 V to 5.5 V supply supports battery and 5 V bus operation.
Recomendado
Automotive Body Electronics
The PIC16F877A-E/L is used in non-safety automotive body modules such as interior lighting controllers, seat adjusters, and HVAC panels. Its Extended temperature grade (-40 C to +125 C) handles under-dash environments, while the 33 I/O support multiple switch/LED loads. For safety-critical modules, migrate to AEC-Q100-qualified PIC16F parts; the PIC16F877A itself is not AEC-Q100 qualified.
Recomendado
Low-Cost Instrumentation
The PIC16F877A-E/L drives low-cost bench instruments such as panel meters, function generators, and signal analyzers using its PWM modules to synthesize waveforms and its 10-bit ADC to digitize measurements. Its UART enables USB-to-serial interface bridges for PC connectivity. The 14 KB Flash stores lookup tables and calibration data, simplifying firmware updates.
Recomendado
Resumo dos produtos recomendados
Dados de referência de engenharia para PIC16F877A-E/L — comparação, orientação de projeto e informações de conformidade.
Guia de seleção
Comparação com alternativas
| Parâmetro | Este produto | PIC16F877-20/L | PIC16F871-E/L | PIC18F458-E/L | PIC16F877A-I/L |
|---|---|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | 44-pin PLCC (J-lead) | 44-pin PLCC - same | 44-pin PLCC - same | 44-pin PLCC - same | 44-pin PLCC - same |
| Core | PIC16 (8-bit, 14-bit instruction) | PIC16 - same | PIC16 - same | PIC18 (16-bit instruction) | PIC16 - same |
| Program Memory (Flash) | 14 KB Flash | ROM (one-time programmable) | 13 KB Flash | 32 KB Flash | 14 KB Flash |
| Data Memory (SRAM) | 368 bytes | 368 bytes | 368 bytes | 1536 bytes | 368 bytes |
| Maximum Clock Frequency | 20 MHz | 20 MHz | 20 MHz | 40 MHz | 20 MHz |
| Operating Temperature | -40 C to +125 C (Extended) | 0 C to +70 C (Commercial) | -40 C to +125 C (Extended) | -40 C to +125 C (Extended) | -40 C to +85 C (Industrial) |
| ADC Channels | 8 x 10-bit | 8 x 10-bit | 5 x 10-bit | 8 x 10-bit | 8 x 10-bit |
Principais diferenciais
- Extended temperature grade for industrial/automotive environments (vs PIC16F877A-I/L)
- Decades of design heritage and reference material (vs PIC16F887-I/L)
- More ADC channels than PIC16F871 (vs PIC16F871-E/L)
Notas de projeto
Place 100 nF ceramic decoupling capacitors as close as possible to each VDD/AVDD pin (pins 11 and 32), plus a 10 uF bulk capacitor near the MCU. VSS pins (12 and 31) must both be returned to a common low-impedance ground plane. Estimated: the PIC16F877A typically draws 5-15 mA active at 20 MHz and 5 V; the brown-out reset (BOR) is configurable via the configuration word to assert below 4.0 V.
The PLCC-44 package uses J-leads and accepts through-hole sockets that simplify programming and rework. Use a PLCC-44 socket (e.g., 3M Textool) on development boards. Estimated: keep the MCLR pull-up (typically 10 kohm) within 5 mm of pin 1 to avoid spurious resets; route the PGC/PGD ICD signals (RB6/RB7) away from switching traces to preserve debug signal integrity.
Do not leave MCLR floating - always tie it to VDD through a 10 kohm pull-up or directly if hardware reset is not needed. Watchdog timer must be disabled in configuration or cleared in software to avoid unintended resets. The internal oscillator (INTOSC) saves an external crystal but limits timing accuracy to roughly 2%, which is insufficient for UART communication without calibration.
Informações de conformidade
RoHS compliance verified from Microchip product page. PIC16F877A-E/L is not AEC-Q100 qualified; for AEC-Q100 automotive, use PIC16F877A-E/L equivalent devices in the Microchip automotive portfolio.