PIC16F871-E/P - 8-bit MCU, 3.5KB Flash, 20MHz, 40-Pin PDIP | Microchip
N.º da peça: PIC16F871-E/P ✓ Ativo| Qtd. | Preço unitário | Total |
|---|---|---|
| 1 | $3.76 | $3,76 |
| 10 | $3.4 | $34,00 |
| 100 | $2.95 | $295,00 |
| 500 | $2.55 | $1.275,00 |
| 1.000 | $2.25 | $2.250,00 |
PIC16F871-E/P Visão geral
What is a PIC16 microcontroller? The PIC16 family is a line of 8-bit Harvard-architecture microcontrollers from Microchip Technology that sits within the broader taxonomy of microcontroller -> embedded processor -> semiconductor. PIC16 devices use a reduced instruction set (RISC) with typically 35 single-word instructions, are Flash-based for in-field reprogrammability, and are widely used in cost-sensitive embedded designs ranging from appliance controls to industrial sensors. The PIC16F871 specifically belongs to the "PIC16F87x" mid-range sub-family with enhanced peripherals such as 10-bit ADC and USART.
Key features include an integrated ICD (In-Circuit Debugger) interface, self-programming capability, eight channels of 10-bit Analog-to-Digital conversion, two additional 8-bit timers, a 16-bit timer with capture/compare/PWM, and a Universal Asynchronous Receiver Transmitter (USART) for serial communications. The part is fully static, supports nanoWatt power management for low-power sleep modes, and exposes 33 digital I/O lines across two ports (PORTA, PORTB, PORTC, PORTD, PORTE).
Architecturally the PIC16F871 uses a Harvard memory layout with separate program and data buses, allowing simultaneous instruction fetch and operand access. Its 14-bit wide instruction word yields high code density, and the in-circuit serial programming (ICSP) interface plus ICD permit real-time debug without removing the device from the board - a feature uncommon in this price tier.
Typical applications include industrial control panels, motor drive interface logic, HVAC thermostats, appliance controllers, instrumentation front-ends, and educational/learning kits where the PIC16F871's simple toolchain (MPLAB X IDE + XC8 compiler + PICkit programmer) keeps development costs low. Designers favor this MCU when they need ADC, PWM, and serial I/O in a single 40-pin footprint.
When designing with the PIC16F871-E/P, place decoupling capacitors (100 nF ceramic plus 10 uF bulk) within 5 mm of the VDD pins, use a 4.7 kΩ pull-up on MCLR if not driven by a debug tool, and observe the 4.0 V minimum VDD - operation below this rail causes EEPROM write failure and unreliable ADC readings.
This page synthesizes Microchip datasheet specifications, distributor pricing snapshots, and a focused set of drop-in PIC16F871 alternatives not always surfaced on DigiKey or Mouser product pages, helping engineers verify pin compatibility and parametric proximity before committing to a substitution.
Alternativas drop-in para PIC16F871-E/P — 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 PIC16F871-E/P (mesmo formato e footprint) — diferindo em Mounting Type, I/O Pins, In-Circuit Debug, Package, Self-Programming.
Ferramenta de comparação rápida — selecione peças alternativas para comparação lado a lado:
PIC16F870-E/P
✅ Drop-In📋 Alternativa de referência (fora do catálogo)
PIC16F872-E/P
✅ Drop-In📋 Alternativa de referência (fora do catálogo)
PIC16F871-E/L
✅ Drop-In✓ Em estoque
$5.2 / unidade
Ver ficha técnica →PIC16F871-I/P
✅ Drop-In✓ Em estoque
$3.3 / unidade
Ver ficha técnica →PIC16F873A-I/P
✅ Drop-In📋 Alternativa de referência (fora do catálogo)
PIC16F876A-I/P
✅ Drop-In📋 Alternativa de referência (fora do catálogo)
PIC16F871-E/P Classificações máximas e características elétricas
| Core Processor | PIC |
| Core Size | 8-bit |
| Program Memory Type | Flash |
| Program Memory Size | 3.5 KB (3.5K x 14) |
| RAM Size | 192 bytes |
| EEPROM Size | 64 bytes |
| Maximum Clock Speed | 20 MHz |
| Instruction Cycle | 200 ns |
| Supply Voltage (VDD) | 4.0 V to 5.5 V |
| Temperatura de operação | -40C to +125C |
| Encapsulamento / Caixa | 40-DIP (0.600", 15.24 mm) |
| Number of I/O Pins | 33 |
| ADC | 8 channels x 10-bit |
| Timers | 2 x 8-bit + 1 x 16-bit (with capture/compare/PWM) |
| Communication Interfaces | USART |
| In-Circuit Debug | ICD |
| Self-Programming | Yes (Flash) |
| Tipo de montagem | Through-Hole (PDIP) |
Configuração de pinos do PIC16F871-E/P
| Pino 1 | MCLR — Master Clear (reset) input, active low |
| Pino 2 | RA0/AN0 — PORTA bit 0 / ADC channel 0 |
| Pino 3 | RA1/AN1 — PORTA bit 1 / ADC channel 1 |
| Pino 4 | RA2/AN2 — PORTA bit 2 / ADC channel 2 |
| Pino 5 | RA3/AN3/VREF+ — PORTA bit 3 / ADC channel 3 / ADC positive reference |
| Pino 6 | RA4/AN4 — PORTA bit 4 / ADC channel 4 |
| Pino 7 | RA5/AN5/SS — PORTA bit 5 / ADC channel 5 / SPI slave select |
| Pino 8 | RE0/RD/AN5 — PORTE bit 0 / parallel-port read / ADC channel 5 alt |
| Pino 9 | RE1/WR/AN6 — PORTE bit 1 / parallel-port write / ADC channel 6 |
| Pino 10 | RE2/CS/AN7 — PORTE bit 2 / parallel-port chip select / ADC channel 7 |
| Pino 11 | VDD — Positive supply (4.0 V to 5.5 V) |
| Pino 12 | VSS — Ground reference |
| Pino 13 | OSC1/CLKI — Oscillator crystal input / external clock input |
| Pino 14 | OSC2/CLKO — Oscillator crystal output / clock output |
| Pino 15 | RC0/T1OSO — PORTC bit 0 / Timer1 oscillator output |
| Pino 16 | RC1/T1OSI — PORTC bit 1 / Timer1 oscillator input |
| Pino 17 | RC2/CCP1 — PORTC bit 2 / Capture-Compare-PWM 1 |
| Pino 18 | RC3 — PORTC bit 3 |
| Pino 19 | RD0 — PORTD bit 0 |
| Pino 20 | RD1 — PORTD bit 1 |
| Pino 21 | RD2 — PORTD bit 2 |
| Pino 22 | RD3 — PORTD bit 3 |
| Pino 23 | RC4 — PORTC bit 4 |
| Pino 24 | RC5 — PORTC bit 5 |
| Pino 25 | RC6/TX/CK — PORTC bit 6 / USART TX / clock |
| Pino 26 | RC7/RX/DT — PORTC bit 7 / USART RX / data |
| Pino 27 | RD4 — PORTD bit 4 |
| Pino 28 | RD5 — PORTD bit 5 |
| Pino 29 | RD6 — PORTD bit 6 |
| Pino 30 | RD7 — PORTD bit 7 |
| Pino 31 | VSS — Ground reference |
| Pino 32 | VDD — Positive supply (4.0 V to 5.5 V) |
| Pino 33 | RB0/INT — PORTB bit 0 / external interrupt |
| Pino 34 | RB1 — PORTB bit 1 |
| Pino 35 | RB2 — PORTB bit 2 |
| Pino 36 | RB3/PGM — PORTB bit 3 / low-voltage programming |
| Pino 37 | RB4 — PORTB bit 4 |
| Pino 38 | RB5 — PORTB bit 5 |
| Pino 39 | RB6/PGC — PORTB bit 6 / ICSP clock |
| Pino 40 | RB7/PGD — PORTB bit 7 / ICSP data |
Aplicações típicas
PIC16F871-E/P é adequado para 6 aplicaçãos: Industrial Control Panels, Appliance Motor Controllers, HVAC Thermostat Interface, Instrumentation Front-Ends, Educational Microcontroller Kits, Sensor Hub / Data Logger.
Industrial Control Panels
The PIC16F871-E/P fits industrial control panels because its 8-channel 10-bit ADC can read multiple sensor inputs (temperature, pressure, current) while its USART drives a local HMI or Modbus link. The -40C to +125C extended temperature grade handles factory-floor thermal swings, and the 40-pin PDIP package is friendly to hand-soldered prototypes and field-repair workflows.
Recomendado
Appliance Motor Controllers
In appliance motor controllers the PIC16F871-E/P's 16-bit timer with capture/compare/PWM drives FET gate signals for brushed and small BLDC motors, while the ADC monitors back-EMF and current. The 5 V supply rail aligns with typical appliance power trees and the 200 ns instruction cycle is fast enough for commutation loops under 10 kHz.
Recomendado
HVAC Thermostat Interface
Thermostat designs benefit from the PIC16F871-E/P's 8-channel ADC reading thermistor or RTD sensors, USART driving a Wi-Fi/Ethernet co-processor, and PWM dimming a backlight or buzzer. nanoWatt sleep modes drop standby current for battery-backed thermostats and the 40-pin PDIP simplifies through-hole assembly for high-volume HVAC OEMs.
Recomendado
Instrumentation Front-Ends
Bench and field instruments use the PIC16F871-E/P to digitize analog front-end signals through its 10-bit ADC and forward calibration data over USART to a host PC. The ICD interface lets engineers step through acquisition code without removing the chip, and the extended temperature range keeps the part stable inside enclosure enclosures without active cooling.
Recomendado
Educational Microcontroller Kits
Universities and self-learners favor the PIC16F871-E/P because the 40-pin PDIP seats in any breadboard and pairs with low-cost PICkit programmers. MPLAB X IDE + XC8 compiler are free, the PIC16 instruction set has only 35 single-word opcodes, and the 8-channel ADC plus PWM give students enough peripherals for real lab projects without overwhelming beginners.
Recomendado
Sensor Hub / Data Logger
Low-cost data loggers route multiple analog channels into the PIC16F871-E/P's 10-bit ADC and store calibration plus timestamps in the 64-byte EEPROM. The USART streams captured data to a host, and self-programming enables firmware updates in the field without an external bootloader. The 40-pin PDIP makes it serviceable in remote installations.
Recomendado
Resumo dos produtos recomendados
Dados de referência de engenharia para PIC16F871-E/P — comparação, orientação de projeto e informações de conformidade.
Guia de seleção
Comparação com alternativas
| Parâmetro | Este produto | PIC16F870-E/P | PIC16F872-E/P | PIC16F871-E/L | PIC16F871-I/P | PIC16F873A-I/P |
|---|---|---|---|---|---|---|
| Package | 40-pin PDIP | 40-pin PDIP (same) | 40-pin PDIP (same) | 44-pin PLCC (adapter needed) | 40-pin PDIP (same) | 40-pin PDIP (same) |
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Program Memory (Flash) | 3.5 KB | 2 KB | 4 KB | 3.5 KB | 3.5 KB | 7.2 KB |
| RAM | 192 bytes | 128 bytes | 192 bytes | 192 bytes | 192 bytes | 192 bytes |
| EEPROM | 64 bytes | 64 bytes | 64 bytes | 64 bytes | 64 bytes | 256 bytes |
| Max Clock Speed | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 20 MHz |
| Operating Temperature | -40C to +125C (Extended) | -40C to +125C (Extended) | -40C to +125C (Extended) | -40C to +125C (Extended) | -40C to +85C (Industrial) | -40C to +85C (Industrial) |
| ADC Channels | 8 x 10-bit | 8 x 10-bit | 8 x 10-bit | 8 x 10-bit | 8 x 10-bit | 5 x 10-bit |
| PWM Outputs | 1 (CCP1) | 1 (CCP1) | 1 (CCP1) | 1 (CCP1) | 1 (CCP1) | 2 (CCP1+CCP2) |
Principais diferenciais
- Higher Flash density than PIC16F870 in identical 40-pin PDIP package (vs PIC16F870-E/P)
- More I/O and ADC channels than PIC16F873A's reduced-pin variants (vs PIC16F873A-I/P)
- Lower cost than PIC16F872 for cost-sensitive designs (vs PIC16F872-E/P)
- Extended -40C to +125C temperature grade vs industrial -40C to +85C (vs PIC16F871-I/P)
Notas de projeto
Place a 100 nF ceramic decoupling capacitor within 5 mm of every VDD pin (pins 11 and 32) and a single 10 uF bulk tantalum or aluminum electrolytic on the supply rail. The PIC16F871-E/P switches internal digital blocks at up to 20 MHz; without local bypassing the VDD rail can sag 50-100 mV during ADC conversions, degrading 10-bit accuracy by 1-2 LSB.
MCLR must be pulled high through a 4.7 kΩ resistor for normal operation - leaving MCLR floating can cause intermittent resets or, when driving the ICSP debugger, prevent connection. When using ICD debugging, route the PGC (RB6) and PGD (RB7) lines away from high-current switching nodes; capacitive loading above 30 pF on these pins can break the ICSP clock.
Route the analog AVdd/AVss rails as a star from a single point at the regulator, and keep ADC traces (RA0-RA5, RE0-RE2) short and guarded by digital ground. For AREF use a 0.1 uF + 10 uF RC filter rather than driving AREF from a noisy source - the 10-bit ADC dynamic range depends on a clean reference.
Estimated: at 20 MHz, 5 V, and 100% CPU duty, ICC is approximately 15-20 mA, dissipating 75-100 mW in the PIC16F871-E/P. With theta_JA around 50 C/W for a 40-pin PDIP, the junction rise is only 4-5 C above ambient - well within the 125 C limit and rarely a concern at this clock/power profile.
Informações de conformidade
RoHS and REACH compliance inferred from Microchip's standard product labeling for PIC16Fxxx PDIP parts; specific test certificates are available on Microchip's product page.