PIC16F84-10/SO - 8-Bit 10MHz Flash MCU 1.75KB | Microchip
Référence : PIC16F84-10/SO ✓ Actif| Qté | Prix unitaire | Total |
|---|---|---|
| 1 | $6.8 | $6,80 |
| 10 | $5.92 | $59,20 |
| 100 | $4.86 | $486,00 |
| 500 | $4.1 | $2 050,00 |
| 1 000 | $3.65 | $3 650,00 |
PIC16F84-10/SO Présentation
What is a flash microcontroller? A flash microcontroller is a single-chip computer that integrates a CPU, non-volatile program memory (Flash), working RAM, EEPROM data storage, and programmable I/O on one silicon die. The PIC16F84 belongs to the mid-range PIC16 family, which sits between the baseline PIC10/12/16 MCUs and the enhanced PIC18 family. Within the broader taxonomy it is a microcontroller -> embedded controller -> CMOS RISC microprocessor -> semiconductor IC. The 14-bit instruction width and 35 single-word instruction set keep code density high while keeping the core footprint small.
Key features of the PIC16F84-10/SO include 10MHz maximum clock (200ns instruction cycle), 1.75KB Flash program memory, 68 bytes data RAM, 64 bytes EEPROM, 13 I/O pins with individually programmable direction, a watchdog timer with on-chip RC oscillator, power-on reset, power-saving SLEEP mode, in-circuit serial programming (ICSP) via RB6/RB7, and code protection bits. The CMOS fully-static design lets the clock be stopped without losing register state, which is valuable for low-power standby.
Architecturally the device uses a Harvard-style memory map with separate program Flash and data RAM address spaces and a single accumulator-based ALU. The 8-level deep hardware stack limits nested call depth, but the RISC pipeline delivers deterministic single-cycle execution for most instructions. Compared with older EPROM PIC16C84 designs, the PIC16F84 replaces the quartz-window UV-erase EPROM with in-circuit re-programmable Flash, removing the need for an eraser.
Typical applications include hobbyist and educational projects (the canonical 'hello world' PIC), low-volume embedded controllers, simple sensor interfaces, replacement of legacy 8051/68HC05 designs, LED driving and key-scan matrices, and timer/scheduler modules in larger systems. The 18-pin SOIC footprint makes it friendly to breadboards and hand-soldered prototypes. According to Microchip, the recommended successor for new designs is the PIC16F84A, which adds internal oscillator options and improved Flash endurance.
When designing with this part, note that newer 16F84A silicon is the preferred long-life replacement; legacy 16F84 designs should still be treated as active but EOL-leaning. A 4MHz to 10MHz crystal or ceramic resonator on OSC1/OSC2 is the typical clock source, and decoupling of 100nF plus 10uF bulk should be placed within a few millimeters of VDD/VSS. The ICSP pins (RB6/RB7) double as general I/O, so series resistors are sometimes required to isolate the programmer from the rest of the board.
This page synthesizes distributor pricing, drop-in compatible alternatives from the PIC16F8x family, application guidance, and design notes that go beyond the manufacturer datasheet, helping both new users and sourcing engineers make an informed decision.
Alternatives de remplacement direct pour PIC16F84-10/SO — même boîtier, compatible broche à broche. Les références à boîtier différent nécessitant une retouche du PCB sont exclues.
Variantes de cette série
Modèles de la même série directement compatibles avec PIC16F84-10/SO (même facteur de forme et même empreinte) — différant par Package, Timers, Core Architecture, Instruction Cycle Time, Operating Temperature.
Outil de comparaison rapide — sélectionnez des références alternatives pour une comparaison côte à côte :
PIC16F84A-10/SO
✅ Remplacement direct📋 Alternative de référence (hors catalogue)
PIC16F84-10I/SO
✅ Remplacement direct✓ En stock
$2.1 / unité
Voir la fiche technique →PIC16F84-04/SO
✅ Remplacement direct✓ En stock
$3.19 / unité
Voir la fiche technique →PIC16F84-04I/SO
✅ Remplacement direct✓ En stock
$2.18 / unité
Voir la fiche technique →PIC16F628A-I/SO
✅ Remplacement direct✓ En stock
$2.32 / unité
Voir la fiche technique →PIC16F84-10/SO Valeurs maximales et caractéristiques électriques
| Product Family | PIC16F8x mid-range 8-bit MCU |
| Core Architecture | 8-bit RISC, Harvard, 14-bit instruction word |
| Program Memory (Flash) | 1.75 KB (1K x 14 words) |
| Data RAM | 68 bytes |
| Data EEPROM | 64 bytes |
| Maximum CPU Clock | 10 MHz |
| Instruction Cycle Time | 200 ns (at 10 MHz FOSC) |
| Operating Voltage (VDD) | 2.0 V to 6.0 V |
| I/O Pins | 13 digital I/O (PORTB[7:0] + PORTA[4:0]) |
| Timers | 1 x 8-bit Timer0 with 8-bit prescaler; WDT with dedicated RC oscillator |
| Interrupts | 4 sources (RB0/INT, TMR0 overflow, PORTB change, EEPROM write complete) |
| Boîtier | 18-pin SOIC (SO, 0.300" / 7.50 mm body width) |
| Type de montage | Surface Mount |
| In-Circuit Programming | ICSP via RB6/RB7 |
| Code Protection | Yes (programmable via CONFIG bits) |
| Statut RoHS | Compliant |
Configuration des broches de PIC16F84-10/SO
| Broche 1 | RA2 — Port A bit 2 (bidirectional digital I/O) |
| Broche 2 | RA3 — Port A bit 3 (bidirectional digital I/O) |
| Broche 3 | RA4/RTCC — Port A bit 4 / Timer0 clock input (open-drain output) |
| Broche 4 | /MCLR — Master Clear reset input (active low, internal pull-up) |
| Broche 5 | VSS — Ground reference |
| Broche 6 | RB0/INT — Port B bit 0 / external interrupt input |
| Broche 7 | RB1 — Port B bit 1 |
| Broche 8 | RB2 — Port B bit 2 |
| Broche 9 | RB3 — Port B bit 3 |
| Broche 10 | RB4 — Port B bit 4 (interrupt-on-change capable) |
| Broche 11 | RB5 — Port B bit 5 (interrupt-on-change capable) |
| Broche 12 | RB6/PGC — Port B bit 6 / ICSP serial clock |
| Broche 13 | RB7/PGD — Port B bit 7 / ICSP serial data |
| Broche 14 | VDD — Positive supply voltage (+2.0V to +6.0V) |
| Broche 15 | OSC2/CLKOUT — Oscillator crystal output / FOSC/4 clock output |
| Broche 16 | OSC1/CLKIN — Oscillator crystal input / external clock input |
| Broche 17 | RA0 — Port A bit 0 (bidirectional digital I/O) |
| Broche 18 | RA1 — Port A bit 1 (bidirectional digital I/O) |
Applications typiques
PIC16F84-10/SO convient pour 6 applications: Educational / Hobbyist 8-bit Projects, Low-Volume Embedded Controllers, LED Display and Lighting Controllers, Sensor Reading and Data Logging Front-Ends, Legacy 8051 / 68HC05 Replacement, Timer / Scheduler Modules in Larger Systems.
Educational / Hobbyist 8-bit Projects
The PIC16F84-10/SO has been the canonical 'first microcontroller' for two decades of students and makers thanks to its 35-instruction RISC core, in-circuit serial programming, and SO-18 footprint that fits on a DIP adapter. Its 10MHz CPU clock (200ns instruction cycle) executes simple Blink-LED programs without bottlenecks, while the 1.75 KB Flash holds 1000+ 14-bit instructions - ample for capstone projects from line-following robots to weather stations. The widely-available PICkit 2/3/4 programmers target ICSP pins RB6/RB7 directly, so no bootloader or special hardware is required. Compared with newer 32-bit boards the 16F84-10/SO teaches bare-metal register manipulation without HAL layers, building real embedded intuition. Operating from 2.0V to 6.0V it also works in single-cell Li-ion or 4xAA alkaline projects.
Recommandé
Low-Volume Embedded Controllers
For production runs of a few hundred to a few thousand boards, the PIC16F84-10/SO remains a cost-effective 8-bit controller thanks to its $3-6 unit pricing and mature toolchain. Its 13 GPIO pins drive LED matrices, key-scan grids, or relay boards without external shift registers, while the on-chip 64-byte EEPROM stores non-volatile calibration data, lookup tables, or user-set parameters. The 8-bit Timer0 with prescaler supports precise timing of motor or PWM control up to several kHz. The SO-18 surface-mount package enables reflow assembly on compact PCBs, and the device's deterministic 200ns instruction cycle guarantees predictable interrupt latency. For industrial control cabinets the wide 2.0-6.0V supply tolerates 24V bus regulation down to 5V or 3.3V rails without rework.
Recommandé
LED Display and Lighting Controllers
The PIC16F84-10/SO's 13 I/O pins are well matched to Charlieplexed LED arrays of up to 12-13 LEDs using only the PORTB pins, plus simple 7-segment display multiplexing on PORTA. At 10 MHz the firmware can refresh 4-digit multiplexed displays at >100Hz with zero flicker using direct port manipulation. The wide 2.0V to 6.0V operating range supports both 3.3V logic-level LED drivers and 5V common-anode displays without level shifters. The hardware watchdog timer (WDT) provides failsafe restart on program hang, critical for unattended lighting installations. EEPROM-backed brightness presets persist across power cycles. Source code for hobbyist LED cubes, POV wands, and indicator panels widely references the 16F84 SO-18 footprint and pinout.
Recommandé
Sensor Reading and Data Logging Front-Ends
The PIC16F84-10/SO paired with an external ADC such as the MCP3002 or with analog comparator ICs forms a simple sensor reading front-end for environmental monitoring. Its 1.75 KB Flash stores averaging filters, calibration tables, and a UART bit-banged output driver to push readings to a host PC or 433 MHz transmitter. The 64-byte EEPROM is ideal for storing calibration constants or a rolling 24-hour log buffer without external FRAM. SLEEP mode reduces quiescent current to a few microamps for battery-powered remote sensors, with WDT wake-up enabling periodic sampling every few seconds. Industrial-grade variants (PIC16F84-10I/SO) tolerate -40C to +85C enclosures for outdoor weather stations.
Recommandé
Legacy 8051 / 68HC05 Replacement
Designers maintaining mid-1990s products built around 8051 or 68HC05 microcontrollers frequently migrate to the PIC16F84-10/SO because of its modern Flash memory (no UV eraser needed), free MPLAB X IDE, and mature MPASM assembler toolchain. The 18-pin SOIC footprint is roughly the same size as the popular 8051 variants in PDIP-20 packages while adding ICSP programming - removing the need for a socketed EPROM. With 10MHz clock and 1.75 KB Flash it can host the same firmware that originally targeted 12MHz 8051 cores, with straightforward translation of assembler routines. The device's 8-level stack and 14-bit instructions reduce code size by 2x vs typical 8051 CISC code.
Recommandé
Timer / Scheduler Modules in Larger Systems
Used as a sub-controller on I2C or bit-banged SPI buses, the PIC16F84-10/SO adds independent timing and watchdog functionality to a parent microcontroller or SBC without consuming the main CPU's resources. Its SLEEP + WDT wake-up cycle lets it poll sensors every few seconds at sub-100uA average current, sending interrupt signals back to the host only when thresholds are crossed. The 1.75 KB Flash holds a small scheduler kernel, while the 64-byte EEPROM saves state across power cycles. The SO-18 surface-mount package fits on a 20x20 mm carrier board that can be hand-soldered onto retrofits. ICSP via RB6/RB7 allows field firmware updates without removing the module.
Recommandé
Récapitulatif des produits recommandés
Données de référence d'ingénierie pour PIC16F84-10/SO — comparaison, recommandations de conception et informations de conformité.
Guide de sélection
Comparaison avec les alternatives
| Paramètre | Ce produit | PIC16F84A-10/SO | PIC16F84-10I/SO | PIC16F84-04/SO | PIC16F84-04I/SO | PIC16F628A-I/SO |
|---|---|---|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | 18-SOIC (SO, 0.300" / 7.50 mm) | 18-SOIC (SO) - same | 18-SOIC (SO) - same | 18-SOIC (SO) - same | 18-SOIC (SO) - same | 18-SOIC (SO) - same |
| Maximum CPU Clock | 10 MHz | 10 MHz | 10 MHz | 4 MHz (-60%) | 4 MHz (-60%) | 20 MHz (+100%) |
| Program Flash Memory | 1.75 KB | 1.75 KB | 1.75 KB | 1.75 KB | 1.75 KB | 3.5 KB (+100%) |
| Data RAM | 68 bytes | 68 bytes | 68 bytes | 68 bytes | 68 bytes | 224 bytes (+229%) |
| Data EEPROM | 64 bytes | 64 bytes | 64 bytes | 64 bytes | 64 bytes | 128 bytes (+100%) |
| Operating Voltage | 2.0 V to 6.0 V | 2.0 V to 5.5 V | 2.0 V to 6.0 V | 2.0 V to 6.0 V | 2.0 V to 6.0 V | 2.0 V to 5.5 V |
| Temperature Grade | Commercial (0C to +70C) | Commercial / Industrial | Industrial (-40C to +85C) | Commercial (0C to +70C) | Industrial (-40C to +85C) | Industrial (-40C to +85C) |
| Internal Oscillator | No (external crystal/RC required) | Yes (4 MHz internal RC) | No | No | No | Yes (4 MHz internal RC) |
| On-board Peripherals | Timer0, WDT, 13x GPIO, ICSP | Timer0/Timer1/WDT, 13x GPIO, ICSP, BOR | Timer0, WDT, 13x GPIO, ICSP | Timer0, WDT, 13x GPIO, ICSP | Timer0, WDT, 13x GPIO, ICSP | Timer0/Timer1/Timer2, PWM, USART, comparators, internal OSC, 16x GPIO |
Principaux différenciateurs
- Recommended Microchip successor with same SO-18 footprint (vs PIC16F84A-10/SO)
- Industrial temperature range available in same SO-18 package (vs PIC16F84-10I/SO)
- Pin-compatible upgrade with substantially more peripherals (vs PIC16F628A-I/SO)
Notes de conception
Estimated: at 10 MHz and 5V supply, the PIC16F84-10/SO draws roughly 5-10 mA active and <1 uA in SLEEP mode. Place a 100 nF ceramic decoupling capacitor within 5 mm of the VDD pin (14) and a 10 uF bulk tantalum or aluminum on the same power rail. For battery-powered designs, drive the watchdog timer to wake from SLEEP every few seconds and execute sensor reads in <1 ms active windows to keep average current below 100 uA. The 2.0V minimum VDD allows single-cell LiFePO4 (3.2V nominal) or 2xAA alkaline operation without a boost converter.
The 18-SOIC (SO, 0.300" body) is a wide-body SOIC with 1.27 mm pitch. Standard SO-18 land patterns from IPC-7351 are usable; the exposed copper pad under the package is not present (no thermal pad) so single-sided ground pours are fine for this low-power MCU. Keep the OSC1/OSC2 traces (pins 16 and 15) under 10 mm and shielded by a ground pour to minimize EMI pickup on the clock. Place the crystal or resonator as close to pins 15/16 as physically possible, with short symmetric traces, and add 1 MOhm feedback resistor across OSC1/OSC2 if using a Pierce oscillator.
Three common pitfalls with the PIC16F84-10/SO: (1) The 8-level hardware stack means deeply nested CALL chains will silently overflow - keep call depth <=7 or rewrite iterative. (2) RA4 is an open-drain output (no internal pull-up, no push-pull drive) - external pull-up resistor required if used as output or to drive LEDs. (3) /MCLR pin (4) must be tied to VDD through a 10 kOhm resistor for normal operation; if left floating the device may intermittently reset. (4) When using ICSP, isolate the PGC/PGD lines (RB6/RB7) from external loads with series resistors to avoid programmer conflicts in-circuit.
Route the ICSP signals RB6 (PGC) and RB7 (PGD) as a dedicated pair away from switching nodes and high-current traces to ensure reliable in-circuit programming in production. If the design uses RB6/RB7 for external functions (buttons, LEDs), place 4.7 kOhm series resistors to isolate the application circuit from the programmer. The ICD (In-Circuit Debugger) variant PIC16F84A-ICD supports these same pins for debug, so laying out RB6/RB7 with short, accessible traces future-proofs the board for production test and field updates.
Informations de conformité
RoHS compliant per Microchip product page and DigiKey/Mouser listings. Lead-free SO-18 with matte-tin finish, reflow rated to 260C peak per JEDEC J-STD-020. REACH and conflict-minerals statements available on Microchip corporate compliance site. AEC-Q100 not applicable - this is a general-purpose MCU, not automotive-qualified.