PIC16F871-I/P - 8-Bit 20MHz 3.5KB Flash MCU 40-PDIP | Microchip
부품 번호: PIC16F871-I/P ✓ 활성| 수량 | 단가 | 합계 |
|---|---|---|
| 1 | $5.1 | $5.10 |
| 10 | $4.6 | $46.00 |
| 100 | $4.1 | $410.00 |
| 500 | $3.7 | $1,850.00 |
| 1,000 | $3.3 | $3,300.00 |
PIC16F871-I/P 개요
A microcontroller (MCU) is a single-chip computer that contains a processor core, memory, and programmable input/output peripherals. Within the broader taxonomy, the PIC16F871 is a member of the 8-bit MCU class (below 32-bit Cortex-M microcontrollers), specifically the PIC16F mid-range family introduced by Microchip Technology as an evolution of the PIC16C5X, PIC12CXXX, and PIC16C7X lines. It belongs to the integrated circuit (semiconductor) hierarchy and serves as a power management/control subsystem in embedded designs.
Key differentiating features include 8 channels of 10-bit Analog-to-Digital conversion, two additional timers (extending the standard timer count to three), a Capture/Compare/PWM (CCP) module, and a Universal Synchronous/Asynchronous Receiver Transmitter (USART). The 33 I/O pins are organized into five ports (RA, RB, RC, RD, RE) and can source/sink up to 25 mA per pin, enabling direct LED drive without external buffers. In-circuit debugging is supported via the ICD interface, while in-application self-programming allows field firmware updates.
The PIC16F871 uses a Harvard bus architecture with separate program and data paths, allowing instruction fetch and operand read in a single cycle. Built around a CMOS flash process, it provides typical power consumption below 2 mA at 5 V and 20 MHz, with sleep current in the microampere range, making it suitable for both line-powered industrial equipment and battery-influenced designs. The USART supports RS-232/RS-485 communication, while the CCP module enables precision timing, PWM motor control, and event capture.
Typical applications include industrial control logic boards, white-goods and appliance control, sensor signal conditioning, simple human-machine interfaces, motor-driver control with PWM, and legacy PIC16 system upgrades. The 40-pin PDIP package makes it friendly for hobbyists, education, and through-hole prototyping, while still offering industrial-grade (-40C to +85C) temperature operation under the "-I" suffix designation.
When designing with this part, pay attention to the 40-pin DIP footprint versus the 28-pin PIC16F870/871 variants - the 40-pin device exposes PORTE (RE0/RE1/RE2) and additional PORTD pins. Ensure the MCLR pin is properly pulled high and that the oscillator configuration (RC/HS/XT/LP) matches the chosen resonator. The "I" suffix indicates the industrial temperature grade of -40C to +85C, so verify your application thermal envelope.
This page synthesizes distributor pricing for PIC16F871-I/P from DigiKey, Mouser, and Octopart alongside drop-in alternatives, application context, and design notes that are not aggregated in the manufacturer datasheet alone. Engineers can use the comparison and FAQ sections to evaluate this part against newer PIC18 and ATSAM alternatives.
드롭인 대체품: PIC16F871-I/P — 동일 패키지, 핀 호환. PCB 재작업이 필요한 다른 패키지 부품은 제외됩니다.
이 시리즈의 변형
다음과 드롭인 호환되는 동일 시리즈 모델: PIC16F871-I/P (동일 폼 팩터 및 풋프린트) — 차이점: Mounting Type, Package, Timers, In-Circuit Debug, Operating Temperature.
빠른 비교 도구 — 나란히 비교할 대체 부품을 선택하십시오:
PIC16F870-I/P
✅ 드롭인 ⚠️ 사양 미검증📋 참조 대체품 (카탈로그에 없음)
PIC16F871-I/L
✅ 드롭인✓ 재고 있음
$2.75 / 개
데이터시트 보기 →PIC16F871-E/P
✅ 드롭인✓ 재고 있음
$2.25 / 개
데이터시트 보기 →PIC16F871-I/P 최대 정격 & 전기적 특성
| Core | PIC16 8-bit RISC |
| Instruction Set | 35 single-word instructions |
| Max CPU Speed | 20 MHz (200 ns instruction cycle) |
| Program Memory (Flash) | 3.5 KB (2K x 14) |
| Data SRAM | 128 bytes |
| Data EEPROM | 64 bytes |
| I/O Pins | 33 |
| ADC | 8 channels x 10-bit |
| Timers | 3 (Timer0, Timer1, Timer2) |
| CCP Modules | 1 (Capture/Compare/PWM) |
| Serial | USART (AUSART) |
| In-Circuit Debug | ICD supported |
| Self-Programming | Yes (in-application) |
| Operating Voltage | 2.0 V to 5.5 V |
| Temperature Grade | Industrial (-40C to +85C) |
| 패키지 | 40-pin PDIP |
| 실장 유형 | Through-Hole (DIP) |
| RoHS 상태 | Compliant |
PIC16F871-I/P 핀 구성
| 핀 1 | MCLR/VPP — Master Clear (reset) input / programming voltage |
| 핀 2 | RA0/AN0 — PORTA bit 0 / Analog input 0 |
| 핀 3 | RA1/AN1 — PORTA bit 1 / Analog input 1 |
| 핀 4 | RA2/AN2/VREF- — PORTA bit 2 / Analog input 2 / VREF- |
| 핀 5 | RA3/AN3/VREF+ — PORTA bit 3 / Analog input 3 / VREF+ |
| 핀 6 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input |
| 핀 7 | RA5/AN4/SS — PORTA bit 5 / Analog input 4 / SPI slave select |
| 핀 8 | OSC1/CLKIN — Oscillator input / external clock |
| 핀 9 | OSC2/CLKOUT — Oscillator output |
| 핀 10 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator output |
| 핀 11 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator input / CCP2 |
| 핀 12 | RC2/CCP1 — PORTC bit 2 / Capture/Compare/PWM 1 |
| 핀 13 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock |
| 핀 14 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I2C data |
| 핀 15 | RC5/SDO — PORTC bit 5 / SPI data out |
| 핀 16 | RC6/TX/CK — PORTC bit 6 / USART TX / clock |
| 핀 17 | RC7/RX/DT — PORTC bit 7 / USART RX / data |
| 핀 18 | VSS — Ground reference |
| 핀 19 | VDD — Positive supply voltage (2.0 V to 5.5 V) |
| 핀 20 | RB0/INT — PORTB bit 0 / external interrupt |
| 핀 21 | RB1 — PORTB bit 1 |
| 핀 22 | RB2 — PORTB bit 2 |
| 핀 23 | RB3/PGM — PORTB bit 3 / low-voltage programming |
| 핀 24 | RB4 — PORTB bit 4 |
| 핀 25 | RB5 — PORTB bit 5 |
| 핀 26 | RB6/PGC — PORTB bit 6 / ICSP clock |
| 핀 27 | RB7/PGD — PORTB bit 7 / ICSP data |
| 핀 28 | VSS — Ground reference (digital) |
| 핀 29 | VDD — Positive supply voltage |
| 핀 30 | RD0 — PORTD bit 0 |
| 핀 31 | RD1 — PORTD bit 1 |
| 핀 32 | RD2 — PORTD bit 2 |
| 핀 33 | RD3 — PORTD bit 3 |
| 핀 34 | RD4 — PORTD bit 4 |
| 핀 35 | RD5 — PORTD bit 5 |
| 핀 36 | RD6 — PORTD bit 6 |
| 핀 37 | RD7 — PORTD bit 7 |
| 핀 38 | VSS — Ground reference (digital) |
| 핀 39 | VDD — Positive supply voltage |
| 핀 40 | RE0/RD — PORTE bit 0 / parallel slave port read |
| 핀 41 | RE1/WR — PORTE bit 1 / parallel slave port write |
| 핀 42 | RE2/CS — PORTE bit 2 / parallel slave port chip select |
| 핀 43 | VSS — Ground reference (PORTE) [via internal bonding - not externally pinned on 40-PDIP] |
| 핀 44 | NC — Not connected on 40-pin PDIP (44-pin PLCC package has these extra PORTE and ground pins) |
일반적인 애플리케이션
PIC16F871-I/P 적합 용도: 6 애플리케이션s: Industrial Control Logic Boards, White-Goods / Appliance Control, Sensor Signal Conditioning Hubs, Motor Driver PWM Control, Legacy PIC16 System Upgrades, Education and Prototyping Platforms.
Industrial Control Logic Boards
The PIC16F871-I/P is a strong fit for industrial control logic boards thanks to its 33 I/O pins (5 ports), 8-channel 10-bit ADC, and USART, which together can monitor sensors, drive relays, and communicate with master PLCs. The 3.5 KB FLASH and 128 bytes of RAM host state-machine logic, while the industrial -40C to +85C temperature grade tolerates factory-floor thermal envelopes. Place the MCU near connector interfaces, use one ADC channel per analog sensor, and route the USART lines through a protection TVS to RS-485 transceivers.
추천
White-Goods / Appliance Control
White-goods and household appliance controllers benefit from the PIC16F871-I/P's CCP module for PWM-driven motor or heater control, combined with the 10-bit ADC for thermistor or pressure-sensor feedback. The 35-instruction RISC core allows tight control loops, and the 64-byte EEPROM stores user settings. Use the PWM output to drive a TRIAC or IGBT via an opto-isolated gate driver, with the MCLR pin held high by a 10k pull-up for clean resets during brown-out events.
추천
Sensor Signal Conditioning Hubs
The PIC16F871-I/P acts as a sensor-conditioning hub by reading multiple analog sensors through its 8-channel 10-bit ADC, applying on-chip math, and relaying results via USART. The 128 bytes of SRAM support 16-bit averaging buffers, while the in-circuit debugger via ICD shortens development cycles. Place 100nF ceramic bypass capacitors within 5 mm of VDD/AVDD/VSS, and route analog inputs (AN0-AN7) away from digital switching lines to preserve 10-bit accuracy.
추천
Motor Driver PWM Control
The PIC16F871-I/P drives brushed DC motors and small steppers through the Capture/Compare/PWM (CCP) module, generating up to 10-bit resolution PWM at the system clock rate. The 33 I/O pins provide direction and enable control, while the USART feeds back RPM data from hall sensors. Use a discrete H-bridge (or external driver IC) with the PWM output fed through a gate resistor; current sensing can be routed through one ADC channel for closed-loop torque control.
추천
Legacy PIC16 System Upgrades
The PIC16F871-I/P is widely used to upgrade legacy PIC16C5X, PIC12CXXX, and PIC16C7X designs where pinout compatibility is desired for a minimal PCB rework. The 35-instruction RISC core simplifies code porting, and the FLASH memory allows field firmware updates through the self-programming bootloader. For systems migrating from 18- or 28-pin PICs, the 40-pin PDIP offers more I/O and ADC channels without redesigning the socket.
추천
Education and Prototyping Platforms
The PIC16F871-I/P is a popular choice in university embedded courses and hobbyist prototyping because of its through-hole 40-pin PDIP form factor, breadboard-friendly footprint, and the freely available MPLAB X IDE toolchain. The 35-instruction RISC core teaches assembly fundamentals, while in-circuit debugging via ICD accelerates lab troubleshooting. Pair the MCU with a simple character LCD and a few buttons for an introductory development board that maps directly to datasheet example code.
추천
추천 제품 요약
엔지니어링 참조 데이터: PIC16F871-I/P — 비교, 설계 지침 및 규정 준수 정보.
선택 가이드
대체품과의 비교
| 파라미터 | 이 제품 | PIC16F870-I/P | PIC16F871-I/L | PIC16F871-E/P |
|---|---|---|---|---|
| Package | 40-Pin PDIP | 40-Pin PDIP - same | 44-Pin PLCC (NOT a true drop-in) | 40-Pin PDIP - same |
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| FLASH Memory | 3.5 KB (2K x 14) | 2 KB (-43%) | 3.5 KB (same) | 3.5 KB (same) |
| SRAM | 128 bytes | 64 bytes (-50%) | 128 bytes (same) | 128 bytes (same) |
| EEPROM | 64 bytes | 64 bytes (same) | 64 bytes (same) | 64 bytes (same) |
| I/O Pins | 33 | 33 (same) | 33 + 3 PLCC-only | 33 (same) |
| ADC | 8 x 10-bit | 8 x 10-bit (same) | 8 x 10-bit (same) | 8 x 10-bit (same) |
| Temperature Grade | Industrial -40C to +85C | Industrial -40C to +85C | Industrial -40C to +85C | Extended -40C to +125C |
| Operating Voltage | 2.0 V to 5.5 V | 2.0 V to 5.5 V | 2.0 V to 5.5 V | 2.0 V to 5.5 V |
| Max CPU Speed | 20 MHz | 20 MHz | 20 MHz | 20 MHz |
주요 차별점
- Largest FLASH memory in 40-pin PIC16F870/871 family (vs PIC16F870-I/P)
- Industrial temperature grade optimized for cost-sensitive designs (vs PIC16F871-E/P)
- Same die as PIC16F871-I/L but in breadboard-friendly 40-PDIP package (vs PIC16F871-I/L)
설계 노트
Estimated: at VDD=5V, 20 MHz operation, the PIC16F871-I/P typically draws about 5-10 mA active. Place a 100 nF decoupling capacitor within 5 mm of each VDD pin (pins 11, 21, 32) and a 10 uF bulk capacitor near the device to handle inrush. The MCLR pin must be pulled high through a 10 k resistor and may include a 100 nF cap for noise immunity; leave MCLR/VPP accessible for in-circuit programming.
Estimated: route analog inputs (RA0-RA5) and digital I/O on separate sides of the MCU when possible. The 8-channel ADC shares pins with PORTA, so digital noise on RA0-RA5 can couple into the ADC - adding a 100 nF cap on VREF+ and short traces for analog signals improves 10-bit conversion stability. Keep clock traces (OSC1/OSC2) short and guard the crystal with a ground ring to reduce EMI.
Do not confuse PIC16F870 with PIC16F871 - the 870 has only 2 KB FLASH and 64 bytes RAM, and firmware designed for the 871 may exceed the 870's memory map. Verify your CONFIG bits (oscillator, watchdog, low-voltage programming, brown-out voltage) match your application before code generation. For in-circuit debug via ICD, leave RB6 (PGC) and RB7 (PGD) free of external pull-ups so the debugger can drive them; otherwise, debugging will fail intermittently.
The USART pins (RC6/TX, RC7/RX) operate at CMOS logic levels - for RS-232 communication, use a MAX232 or equivalent level translator. For RS-485, use an MAX485 or similar transceiver; remember to bias the bus with a fail-safe resistor network when no driver is active. The CCP1 PWM output on RC2 toggles up to the system clock rate - route PWM traces away from analog inputs to avoid switching-noise coupling into ADC readings.
규정 준수 정보
RoHS compliant per Microchip product page. Not AEC-Q100 qualified - automotive applications should consider PIC16F871-E/P or PIC18F family with automotive qualification. Lead-free terminal finish with matte-tin plating compatible with lead-free wave soldering.