PIC16F870-I/SP - 8-bit MCU 20MHz 3.5KB Flash 28-SPDIP | Microchip
Teilenummer: PIC16F870-I/SP ✓ Aktiv| Menge | Stückpreis | Gesamt |
|---|---|---|
| 1 | $3.34 | $3,34 |
| 10 | $3 | $30,00 |
| 100 | $2.65 | $265,00 |
| 500 | $2.4 | $1.200,00 |
| 1.000 | $2.18 | $2.180,00 |
PIC16F870-I/SP Übersicht
A microcontroller is a single-chip embedded computer combining a processor core, non-volatile program memory, volatile data memory, and programmable peripherals on one silicon die. The PIC16F870 sits inside the hierarchy 8-bit PIC microcontroller -> PIC16 mid-range family -> CMOS FLASH-based MCU -> embedded system. It is upwards compatible with PIC16C5X, PIC12CXXX, and PIC16C7X legacy devices for migration of older designs.
Key features of the PIC16F870 include a 5-channel 10-bit Analog-to-Digital converter for direct sensor interfacing, one Capture/Compare/PWM (CCP) module for timing and motor control, a Universal Asynchronous Receiver Transmitter (USART) for asynchronous serial links, and self-programming capability for in-field firmware upgrades. The 22 digital I/O pins are distributed across PORTA (5), PORTB (8), and PORTC (8), with interrupt-on-change capability on PORTB for keyboard or rotary-encoder scanning. The integrated In-Circuit Debugger (ICD) interface allows developers to use PICkit or MPLAB ICD tools for non-intrusive emulation.
The device is built on a Harvard architecture with separate program and data buses, enabling simultaneous instruction fetch and operand access. It supports four oscillator modes - LP (low-power crystal), XT (standard crystal), HS (high-speed crystal), and RC (resistor-capacitor) - for trade-offs between cost, accuracy, and power. An on-chip watchdog timer, brown-out reset, and programmable code protection complete the embedded feature set. The 28-pin SPDIP variant omits the Parallel Slave Port found on the 40-pin PIC16F871 sibling, reducing cost and PCB area.
Typical applications for the PIC16F870-I/SP include industrial control panels, appliance controllers, sensor interface nodes with analog front-ends, motor-driver PWM controllers, and serial communication bridges (RS-232/RS-485). The 10-bit ADC suits temperature, pressure, and potentiometer reading, while PWM channels drive DC motors, solenoids, and LED dimmers. The wide supply range supports both 3.3 V and 5 V rails.
When designing with this part, place a 0.1 uF decoupling capacitor close to VDD and pull MCLR high through a 10 kohm resistor to prevent spurious resets. Programming uses a PICkit or ICD interface via the RB6/RB7 pins. Pricing as of 2026-09-21 reflects active distributor stock.
This page consolidates distributor pricing, drop-in alternatives, and practical design notes that complement the Microchip datasheet and selector guide.
Drop-in-Alternativen für PIC16F870-I/SP – gleiches Gehäuse, Pin-kompatibel. Bauteile mit anderem Gehäuse, die eine PCB-Überarbeitung erfordern, sind ausgeschlossen.
Varianten dieser Serie
Modelle derselben Serie, die drop-in-kompatibel sind mit PIC16F870-I/SP (gleiche Bauform und Footprint) – abweichend in Package, Timers, Core Architecture, ADC, Operating Temperature.
Schnellvergleichstool – Wählen Sie Alternativbauteile für den Direktvergleich:
PIC16F870-E/SP
✅ Drop-In✓ Auf Lager
$2.85 / Stück
Datenblatt ansehen →PIC16F870-I/SO
✅ Drop-In ⚠️ Spezifikationen ungeprüft✓ Auf Lager
$3.32 / Stück
Datenblatt ansehen →PIC16F871-I/SP
✅ Drop-In📋 Referenzalternative (nicht im Katalog)
PIC16F872-I/SP
✅ Drop-In📋 Referenzalternative (nicht im Katalog)
PIC16LF870-I/SP
✅ Drop-In✓ Auf Lager
$2.31 / Stück
Datenblatt ansehen →PIC16F873A-I/SP
✅ Drop-In📋 Referenzalternative (nicht im Katalog)
PIC16C716-04/P
✅ Drop-In📋 Referenzalternative (nicht im Katalog)
PIC16F870-I/SP Grenzwerte & elektrische Eigenschaften
| Product Type | 8-bit Microcontroller (MCU) |
| Core Architecture | PIC16 mid-range RISC |
| Program Memory (Flash) | 3.5 KB (2K x 14 words) |
| RAM | 128 bytes |
| Data EEPROM | 64 bytes |
| Maximum CPU Clock | 20 MHz |
| Instruction Cycle Time | 200 ns |
| Supply Voltage (VDD) | 4.0 V to 5.5 V |
| I/O Pins | 22 |
| A/D Converter | 10-bit, 5 channels |
| Timers | Timer0, Timer1, Timer2 |
| CCP Modules | 1 (Capture/Compare/PWM) |
| Serial Interface | USART (asynchronous) |
| Self-Programming | Yes (Flash program memory) |
| In-Circuit Debug | ICD interface (RB6/RB7) |
| Oscillator Modes | LP, XT, HS, RC |
| Betriebstemperaturbereich | -40C to +85C (Industrial) |
| Gehäuse | 28-pin SPDIP (Skinny Plastic DIP, through-hole) |
| Lead Finish | Matte Tin (Pb-free) |
| RoHS-Status | Compliant |
| Montageart | Through-Hole |
PIC16F870-I/SP Pin-Konfiguration
| Pin 1 | MCLR/VPP — Master Clear (reset) input / Programming voltage input |
| 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 / ADC positive reference |
| 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 | VSS — Ground reference |
| Pin 9 | OSC1/CLKIN — Crystal oscillator input / external clock input |
| Pin 10 | OSC2/CLKOUT — Crystal oscillator output / clock output |
| Pin 11 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator output / Timer1 clock input |
| Pin 12 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator input / CCP2 output |
| Pin 13 | RC2/CCP1 — PORTC bit 2 / Capture/Compare/PWM 1 output |
| Pin 14 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock |
| Pin 15 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I2C data |
| Pin 16 | RC5/SDO — PORTC bit 5 / SPI data out |
| Pin 17 | RC6/TX/CK — PORTC bit 6 / USART TX / USART clock |
| Pin 18 | RC7/RX/DT — PORTC bit 7 / USART RX / USART data |
| Pin 19 | VSS — Ground reference |
| Pin 20 | VDD — Positive supply voltage |
| Pin 21 | RB0/INT — PORTB bit 0 / External interrupt input |
| Pin 22 | RB1 — PORTB bit 1 |
| Pin 23 | RB2 — PORTB bit 2 |
| Pin 24 | RB3/PGM — PORTB bit 3 / Low-voltage programming input |
| Pin 25 | RB4 — PORTB bit 4 / Interrupt-on-change |
| Pin 26 | RB5 — PORTB bit 5 / Interrupt-on-change |
| Pin 27 | RB6/PGC — PORTB bit 6 / ICSP clock / Interrupt-on-change |
| Pin 28 | RB7/PGD — PORTB bit 7 / ICSP data / Interrupt-on-change |
Typische Anwendungen
PIC16F870-I/SP ist geeignet für 6 Anwendungs: Industrial Control Panels, Appliance Controllers, Sensor Interface Nodes, Motor Drive and PWM Control, Serial Communication Bridges, Educational and Prototyping Boards.
Industrial Control Panels
The PIC16F870-I/SP suits industrial control panels where a stable 5 V supply, 5-channel ADC, and PWM outputs are needed for sensor reading and actuator drive. Its 20 MHz CPU delivers 5 MIPS, sufficient for PID loops and human-machine interface polling at 10 ms scan rates. The 28-pin SPDIP package simplifies field replacement in legacy equipment, and the ICD interface allows on-board firmware updates via PICkit. Compared with discrete logic, the integrated MCU reduces BOM and PCB area while supporting USART for Modbus RTU or RS-485 bridges.
Empfohlen
Appliance Controllers
The PIC16F870-I/SP integrates well into white-goods appliance controllers such as washing machines, dishwashers, and microwave ovens, where it reads temperature sensors, drives motor triacs, and scans user keypads. The 10-bit ADC provides 0.5C resolution with a typical NTC thermistor divider, and the CCP/PWM module produces variable-duty motor drive signals at up to 20 kHz. The 35-instruction RISC core keeps firmware simple and certifiable, while the 64-byte EEPROM stores user preferences across power cycles. Its industrial temperature range covers appliance operating environments.
Empfohlen
Sensor Interface Nodes
In distributed sensor-interface nodes, the PIC16F870-I/SP reads multiple analog sensors via its 5-channel 10-bit ADC and forwards data over USART to a master controller. The MCU's low power consumption (under 2 mA active at 5 V, 20 MHz) suits battery or bus-powered nodes, while the 128-byte RAM buffers local measurements between transmissions. The ICD interface simplifies firmware iteration during sensor-calibration development. Compared with standalone ADCs, integrating the ADC, CPU, and USART into one package reduces node cost to under $5 BOM.
Empfohlen
Motor Drive and PWM Control
The PIC16F870-I/SP generates PWM signals for DC motors, solenoids, and LED dimming using its on-chip CCP module. With 10-bit PWM resolution at 20 kHz carrier, the MCU drives brushed DC motors and stepper drivers smoothly across a wide duty range. The 5-channel ADC reads current-sense amplifiers for closed-loop torque control, while the USART streams telemetry to a higher-level controller. Pin compatibility with PIC16F873A-I/SP lets designers scale to higher Flash if motor-control firmware grows beyond 3.5 KB.
Empfohlen
Serial Communication Bridges
The PIC16F870-I/SP serves as a low-cost serial bridge between UART peripherals and main controllers, translating baud rates, packetizing data, and adding protocol headers. Its USART supports asynchronous serial up to several hundred kbps, sufficient for RS-232, RS-485, and TTL-level debug links. Self-programming via Flash enables field re-flash of bridge firmware for protocol updates. The 28-pin SPDIP form factor allows easy installation in legacy equipment retrofits, and PICkit programmers can update code through the existing RB6/RB7 ICSP pins.
Empfohlen
Educational and Prototyping Boards
The PIC16F870-I/SP is widely used in university embedded-systems courses and hobbyist prototyping because of its through-hole SPDIP package, low price, and mature MPLAB X toolchain. Students can plug the chip into breadboards, program via PICkit, and experiment with ADC, PWM, timers, and USART without surface-mount soldering. The 35-instruction RISC core keeps assembly-language tutorials tractable, while the 3.5 KB Flash accommodates realistic C-code projects under XC8 compiler. The same chip scales directly into commercial designs, providing a smooth learning-to-production path.
Empfohlen
Zusammenfassung der empfohlenen Produkte
Technische Referenzdaten für PIC16F870-I/SP – Vergleich, Designhinweise und Compliance-Informationen.
Auswahlhilfe
Vergleich mit Alternativen
| Parameter | Dieses Produkt | PIC16F870-E/SP | PIC16F872-I/SP | PIC16LF870-I/SP | PIC16F873A-I/SP | PIC16C716-04/P |
|---|---|---|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | 28-pin SPDIP | 28-pin SPDIP (same) | 28-pin SPDIP (same) | 28-pin SPDIP (same) | 28-pin SPDIP (same) | 28-pin PDIP (same) |
| Program Memory (Flash) | 3.5 KB | 3.5 KB | 3.5 KB | 3.5 KB | 7.2 KB (+106%) | 2K x 14 OTP ROM (-43%) |
| RAM | 128 bytes | 128 bytes | 128 bytes | 128 bytes | 192 bytes (+50%) | 128 bytes |
| Maximum Clock | 20 MHz | 20 MHz | 20 MHz | 10 MHz (-50%) | 20 MHz | 4 MHz (-80%) |
| Supply Voltage | 4.0 V to 5.5 V | 4.0 V to 5.5 V | 4.0 V to 5.5 V | 2.0 V to 5.5 V (wider) | 4.0 V to 5.5 V | 4.0 V to 6.0 V |
| ADC Channels x Resolution | 5 x 10-bit | 5 x 10-bit | 5 x 10-bit | 5 x 10-bit | 5 x 10-bit | 4 x 8-bit (-20%) |
| Operating Temperature | -40C to +85C (Industrial) | -40C to +125C (Extended) | -40C to +85C (Industrial) | -40C to +85C (Industrial) | -40C to +85C (Industrial) | -40C to +125C (Extended) |
Wichtigste Unterscheidungsmerkmale
- Through-hole SPDIP package for breadboard prototyping and field replacement (vs. PIC16F873A-I/SP (also SPDIP) and PIC16LF870-I/SP)
- Self-programming Flash memory supports in-field firmware updates (vs. PIC16C716-04/P (OTP))
- Industrial -40C to +85C temperature range standard (vs. PIC16F870-E/SP (Extended -40C to +125C))
Designhinweise
Estimated: Place a 0.1 uF ceramic decoupling capacitor within 5 mm of the VDD pin (pin 20) and a 10 uF bulk capacitor on the same VDD trace. The PIC16F870 draws approximately 2 mA active at 20 MHz, 5 V and less than 5 uA in sleep mode. Add a 10 kohm pull-up on MCLR (pin 1) to VDD; do not leave MCLR floating, or spurious resets may occur. For battery-powered designs, switch to PIC16LF870-I/SP for 2.0 V operation and lower sleep current.
Keep the crystal or resonator (between OSC1 pin 9 and OSC2 pin 10) within 10 mm of the MCU and route traces over a continuous ground plane. The 28-pin SPDIP package leaves room for through-hole prototyping but also suits wave-soldering assembly. For trace routing, place the ICSP pins RB6/PGC (pin 27) and RB7/PGD (pin 28) near a 6-pin header for in-circuit programming access. Avoid running high-current motor traces beneath the MCU's analog AVSS/VDD area to minimize ADC noise injection.
Do not exceed the 5.5 V absolute-maximum VDD rating - even brief transients above 6 V can latch up the CMOS output drivers. The PIC16F870 is NOT a drop-in replacement for the PIC16LF870 at 3.3 V: the standard F version requires 4.0 V minimum. When migrating code from PIC16C716 (OTP) to PIC16F870 (Flash), note that Flash programming requires a programming voltage on MCLR/VPP and proper ICSP sequencing. Always configure the watchdog timer software after enabling it to prevent unwanted resets.
Compliance-Informationen
RoHS compliant per Microchip product page. Pb-free matte-tin finish. Not AEC-Q100 qualified - use PIC16F870-E/SP variants for automotive-grade applications.