PIC16F870-I/SP - 8-bit MCU 20MHz 3.5KB Flash 28-SPDIP | Microchip
Артикул: PIC16F870-I/SP ✓ Активен| Кол-во | Цена за ед. | Итого |
|---|---|---|
| 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 Обзор
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.
Аналоги без доработки для PIC16F870-I/SP — тот же корпус, pin-to-pin совместимость. Компоненты в других корпусах, требующие переработки PCB, исключены.
Варианты в этой серии
Модели той же серии, совместимые без доработки с PIC16F870-I/SP (тот же форм-фактор и посадочное место) — отличается по Package, Timers, Core Architecture, ADC, Operating Temperature.
Инструмент быстрого сравнения — выберите альтернативные компоненты для сравнения бок о бок:
PIC16F870-E/SP
✅ Прямая замена✓ В наличии
$2.85 / шт.
Открыть даташит →PIC16F870-I/SO
✅ Прямая замена ⚠️ Характеристики не проверены✓ В наличии
$3.32 / шт.
Открыть даташит →PIC16F871-I/SP
✅ Прямая замена📋 Справочный аналог (нет в каталоге)
PIC16F872-I/SP
✅ Прямая замена📋 Справочный аналог (нет в каталоге)
PIC16LF870-I/SP
✅ Прямая замена✓ В наличии
$2.31 / шт.
Открыть даташит →PIC16F873A-I/SP
✅ Прямая замена📋 Справочный аналог (нет в каталоге)
PIC16C716-04/P
✅ Прямая замена📋 Справочный аналог (нет в каталоге)
PIC16F870-I/SP Максимальные параметры и электрические характеристики
| 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 |
| Диапазон рабочих температур | -40C to +85C (Industrial) |
| Корпус | 28-pin SPDIP (Skinny Plastic DIP, through-hole) |
| Lead Finish | Matte Tin (Pb-free) |
| Статус RoHS | Compliant |
| Тип монтажа | Through-Hole |
Конфигурация выводов PIC16F870-I/SP
| Контакт 1 | MCLR/VPP — Master Clear (reset) input / Programming voltage input |
| Контакт 2 | RA0/AN0 — PORTA bit 0 / Analog input 0 |
| Контакт 3 | RA1/AN1 — PORTA bit 1 / Analog input 1 |
| Контакт 4 | RA2/AN2 — PORTA bit 2 / Analog input 2 |
| Контакт 5 | RA3/AN3/VREF+ — PORTA bit 3 / Analog input 3 / ADC positive reference |
| Контакт 6 | RA4/T0CKI — PORTA bit 4 / Timer0 clock input |
| Контакт 7 | RA5/AN4/SS — PORTA bit 5 / Analog input 4 / SPI slave select |
| Контакт 8 | VSS — Ground reference |
| Контакт 9 | OSC1/CLKIN — Crystal oscillator input / external clock input |
| Контакт 10 | OSC2/CLKOUT — Crystal oscillator output / clock output |
| Контакт 11 | RC0/T1OSO/T1CKI — PORTC bit 0 / Timer1 oscillator output / Timer1 clock input |
| Контакт 12 | RC1/T1OSI/CCP2 — PORTC bit 1 / Timer1 oscillator input / CCP2 output |
| Контакт 13 | RC2/CCP1 — PORTC bit 2 / Capture/Compare/PWM 1 output |
| Контакт 14 | RC3/SCK/SCL — PORTC bit 3 / SPI clock / I2C clock |
| Контакт 15 | RC4/SDI/SDA — PORTC bit 4 / SPI data in / I2C data |
| Контакт 16 | RC5/SDO — PORTC bit 5 / SPI data out |
| Контакт 17 | RC6/TX/CK — PORTC bit 6 / USART TX / USART clock |
| Контакт 18 | RC7/RX/DT — PORTC bit 7 / USART RX / USART data |
| Контакт 19 | VSS — Ground reference |
| Контакт 20 | VDD — Positive supply voltage |
| Контакт 21 | RB0/INT — PORTB bit 0 / External interrupt input |
| Контакт 22 | RB1 — PORTB bit 1 |
| Контакт 23 | RB2 — PORTB bit 2 |
| Контакт 24 | RB3/PGM — PORTB bit 3 / Low-voltage programming input |
| Контакт 25 | RB4 — PORTB bit 4 / Interrupt-on-change |
| Контакт 26 | RB5 — PORTB bit 5 / Interrupt-on-change |
| Контакт 27 | RB6/PGC — PORTB bit 6 / ICSP clock / Interrupt-on-change |
| Контакт 28 | RB7/PGD — PORTB bit 7 / ICSP data / Interrupt-on-change |
Типичное применение
PIC16F870-I/SP подходит для 6 применениеs: 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.
Рекомендуется
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.
Рекомендуется
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.
Рекомендуется
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.
Рекомендуется
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.
Рекомендуется
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.
Рекомендуется
Сводка рекомендуемых товаров
Справочные инженерные данные для PIC16F870-I/SP — сравнение, рекомендации по проектированию и информация о соответствии.
Руководство по выбору
Сравнение с аналогами
| Параметр | Этот товар | 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) |
Ключевые отличия
- Through-hole SPDIP package for breadboard prototyping and field replacement (против PIC16F873A-I/SP (also SPDIP) and PIC16LF870-I/SP)
- Self-programming Flash memory supports in-field firmware updates (против PIC16C716-04/P (OTP))
- Industrial -40C to +85C temperature range standard (против PIC16F870-E/SP (Extended -40C to +125C))
Заметки по проектированию
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.
Информация о соответствии
RoHS compliant per Microchip product page. Pb-free matte-tin finish. Not AEC-Q100 qualified - use PIC16F870-E/SP variants for automotive-grade applications.