PIC16F677-E/SO - 8-Bit 20MHz 3.5KB Flash MCU | Microchip
MPN: PIC16F677-E/SO ✓ Active| Qty | Unit Price | Extended |
|---|---|---|
| 1 | $1.85 | $1.85 |
| 10 | $1.65 | $16.50 |
| 100 | $1.42 | $142.00 |
| 500 | $1.21 | $605.00 |
| 1,000 | $1.05 | $1,050.00 |
PIC16F677-E/SO Overview
A microcontroller (MCU) is a single-chip computer that integrates a CPU, memory, and programmable peripherals, and is the fundamental building block of embedded systems. Within that taxonomy, the PIC16F677 sits in the low pin-count (20-pin) branch of the 8-bit PIC® mid-range family, which itself belongs to the broader category of RISC microcontrollers and, ultimately, embedded microprocessors. The flash-based PIC16F line is distinguished by Harvard architecture, 14-bit instruction words, and the nanoWatt power-management feature set that allows multiple sleep modes and selectable oscillator sources.
Key features include 200 ns instruction execution time, 2.0 V to 5.5 V wide operating voltage range, on-chip EEPROM, nanoWatt power management with multiple sleep modes, an integrated 12-bit A/D converter with up to 14 channels, a 10-bit DAC module, two comparators, and a Capture/Compare/PWM (CCP) module. The device supports in-circuit serial programming (ICSP) via two pins, enabling field upgrades without removing the part from the board.
Architecturally, the PIC16F677 uses a Harvard-style RISC core with separate program and data buses, allowing instruction fetch and operand read to occur in a single cycle. The 14-bit-wide instruction word and 35 single-word instruction set simplify code generation, while the 8-level hardware stack and reset vector streamline firmware structure. Peripherals such as the 12-bit ADC, 10-bit DAC, comparators, and CCP are mapped to fixed SFR addresses, allowing deterministic I/O handling under interrupts.
Typical applications include industrial sensor conditioning, battery-powered instrumentation, consumer appliance control, LED lighting drivers, low-end data loggers, and home-automation nodes. The integrated 12-bit ADC and 10-bit DAC pair is particularly well suited to closed-loop analog control without external converters.
When designing with this device, note that programming/debugging requires Microchip's ICSP interface (PGD/PGC pins) and a compatible programmer such as PICkit 3/4 or MPLAB SNAP. Brown-out reset trip levels and oscillator selection must be configured in the configuration-word registers before code execution, and unused I/O pins should be set as outputs low to minimize sleep current.
This page synthesizes distributor pricing, drop-in alternatives, and practical design notes not found in the manufacturer datasheet alone, including a same-brand first alternatives list and a quantified comparison table against equivalent PIC16 family members.
Drop-in alternatives for PIC16F677-E/SO — same package, pin-to-pin compatible. Different-package parts requiring PCB rework are excluded.
Variants in this series
Same-series models that are drop-in compatible with PIC16F677-E/SO (same form factor and footprint) — differing in Package, ADC, Timers, Operating Temperature, Architecture.
Quick Comparison Tool — Select alternative parts for side-by-side comparison:
PIC16F677-I/SO
✅ Drop-In✓ In Stock
$1.05 / Unit
View Datasheet →PIC16F677T-I/SO
✅ Drop-In✓ In Stock
$1.34 / Unit
View Datasheet →PIC16F677-E/P
✅ Drop-In✓ In Stock
$1.55 / Unit
View Datasheet →PIC16F677-E/ML
✅ Drop-In✓ In Stock
$0.73 / Unit
View Datasheet →PIC16F676-I/SO
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F677-E/SO Maximum Ratings & Electrical Characteristics
| Architecture | PIC16 8-bit RISC (Harvard) |
| Instruction Set | 35 instructions, 14-bit word |
| Program Memory | 3.5 KB Flash |
| Data Memory (SRAM) | 128 bytes |
| EEPROM | 256 bytes (on-chip) |
| Maximum CPU Speed | 20 MHz |
| Instruction Cycle | 200 ns at 20 MHz |
| Operating Voltage Range | 2.0 V to 5.5 V |
| I/O Pins | 18 |
| ADC | 12-bit, up to 14 channels |
| DAC | 10-bit, 1 channel |
| Comparators | 2 |
| CCP/PWM Modules | 1 |
| Timers | 2x 8-bit, 1x 16-bit |
| Package | 20-pin SOIC (SO) |
| Operating Temperature | -40C to +125C (E suffix) |
| Mounting Type | Surface Mount |
| RoHS Status | Compliant |
PIC16F677-E/SO Pin Configuration
| Pin 1 | RA0/AN0/C1IN+/ICSPDAT — Bidirectional I/O / ADC input / Comparator input / ICSP data |
| Pin 2 | RA1/AN1/C1IN-/ICSPCLK — Bidirectional I/O / ADC input / Comparator input / ICSP clock |
| Pin 3 | RA2/AN2/C1OUT — Bidirectional I/O / ADC input / Comparator 1 output |
| Pin 4 | RA3/AN3/C1IN+/VREF+ — Bidirectional I/O / ADC input / Comparator input / Voltage reference |
| Pin 5 | RA4/AN4/C2OUT/T0CKI — Bidirectional I/O / ADC input / Comparator 2 output / Timer0 clock |
| Pin 6 | RA5/AN5/SS/HLVDIN — Bidirectional I/O / ADC input / SPI slave select / High/Low voltage detect |
| Pin 7 | VSS — Ground reference |
| Pin 8 | OSC1/CLKI/RA7 — Crystal oscillator input / External clock input / I/O |
| Pin 9 | OSC2/CLKO/RA6 — Crystal oscillator output / Clock output / I/O |
| Pin 10 | RC0/T1CKI — Bidirectional I/O / Timer1 clock input |
| Pin 11 | RC1/CCP2 — Bidirectional I/O / Capture Compare PWM 2 |
| Pin 12 | RC2/CCP1/P1A — Bidirectional I/O / Capture Compare PWM 1 / PWM output |
| Pin 13 | RC3/AN7/C12IN3-/PGM — Bidirectional I/O / ADC input / Comparator input / LVP program |
| Pin 14 | RC4/AN8/C12IN2-/SDI/SDA — Bidirectional I/O / ADC input / Comparator input / SPI data / I2C data |
| Pin 15 | RC5/AN9/SDO — Bidirectional I/O / ADC input / SPI data out |
| Pin 16 | RC6/AN10/TX/CK — Bidirectional I/O / ADC input / USART async transmit / USART sync clock |
| Pin 17 | RC7/AN11/RX/DT — Bidirectional I/O / ADC input / USART async receive / USART sync data |
| Pin 18 | RB4/AN12 — Bidirectional I/O / ADC input / interrupt-on-change |
| Pin 19 | RB5/AN13/DACOUT — Bidirectional I/O / ADC input / DAC output |
| Pin 20 | VDD — Positive supply voltage |
Typical Applications
PIC16F677-E/SO is suitable for 6 applications: Industrial Sensor Conditioning, Battery-Powered Instrumentation, Consumer Appliance Control, LED Lighting Drivers, Low-End Data Loggers, Home-Automation Sensor Nodes.
Industrial Sensor Conditioning
The PIC16F677-E/SO's integrated 12-bit ADC with up to 14 input channels, 10-bit DAC, and two on-chip comparators make it a strong fit for industrial sensor signal-conditioning modules. The 3.5 KB flash comfortably holds a PID control loop, linearization tables for RTDs or thermocouples, and a Modbus RTU slave stack for 4-20 mA loop transmitters. With -40C to +125C extended temperature support, the part operates reliably in factory-floor enclosures without additional thermal derating, and the 2.0 V to 5.5 V supply range tolerates 24 V industrial rails after a simple LDO drop. Two CCP/PWM channels drive solenoid valves or solid-state relays directly, reducing external component count.
Recommended
Battery-Powered Instrumentation
The PIC16F677-E/SO's nanoWatt technology with multiple sleep modes and 2.0 V minimum supply voltage enables multi-year battery life in portable instrumentation. Sleep current below 1 uA combined with on-chip EEPROM data logging eliminates the need for external RTC or non-volatile memory, and the 10-bit DAC drives bias voltages to bridge sensors directly. The 128 B SRAM holds intermediate samples before flash writes, while ICSP allows field firmware updates over the same two pins used for in-circuit programming. Common deployments include handheld multimeters, wireless environmental loggers, and Bluetooth Low Energy beacon peripherals where the MCU serves as the analog front-end controller.
Recommended
Consumer Appliance Control
The PIC16F677-E/SO suits consumer appliance control boards such as coffee machines, washing machines, and induction cooktops, where 18 I/O pins and 12-bit ADC resolution are sufficient for temperature sensing, motor speed feedback, and user-interface keypads. The CCP/PWM module drives triac phase control or low-side MOSFETs directly, while two on-chip comparators implement over-current and zero-cross detection without external analog ICs. The 200 ns instruction cycle ensures deterministic interrupt latency for safety-critical loops, and the 3.5 KB flash hosts a small RTOS or state-machine scheduler plus a customer-configuration menu. Production pricing below USD 1.10 per unit at 1000-piece reels keeps BOM cost competitive in white-goods volumes.
Recommended
LED Lighting Drivers
The PIC16F677-E/SO is well matched to constant-current LED driver modules, where its 10-bit DAC sets the regulated current setpoint and the 12-bit ADC measures the high-side shunt voltage for closed-loop feedback. The CCP/PWM module generates the switching frequency for buck or boost topologies up to 100 kHz, and the 200 ns instruction cycle handles PID updates within the PWM period. Two comparators detect over-temperature and short-circuit faults with sub-microsecond response, while the on-chip EEPROM stores calibration constants and dimming profiles across power cycles. Operating from 2.0 V to 5.5 V supports both 3.3 V and 5 V LED-driver rails with no additional LDO.
Recommended
Low-End Data Loggers
The PIC16F677-E/SO's 256-byte on-chip EEPROM and 3.5 KB flash make it a viable controller for low-sample-rate standalone data loggers used in HVAC monitoring, cold-chain verification, and energy metering. Time-stamped sensor reads can be buffered in SRAM before batch flash writes, and the 12-bit ADC captures process variables to 0.024% resolution. The device supports ICSP field upgrades so installers can swap firmware variants without removing the MCU from the board, and the extended -40C to +125C temperature range covers outdoor and refrigerated environments. A real-time interrupt can wake the part from sleep on a programmable interval, extending battery life between log downloads.
Recommended
Home-Automation Sensor Nodes
The PIC16F677-E/SO powers compact home-automation sensor nodes for occupancy, light-level, and indoor air-quality reporting, where its 12-bit ADC reads photodiodes and analog gas sensors while the DAC drives actuator reference voltages. Sleep current in the nanoWatt range supports multi-year operation from coin cells, and 18 I/O pins accommodate multiple I2C/SPI sensor buses plus indicator LEDs. The 35-instruction RISC core simplifies firmware certification for safety-related applications, and the on-chip EEPROM stores node configuration and pairing keys without external memory. Combined with a sub-GHz or BLE transceiver, the MCU forms a complete wireless sensor node.
Recommended
Recommended Products Summary
Engineering reference data for PIC16F677-E/SO — comparison, design guidance, and compliance information.
Selection Guide
Comparison with Alternatives
| Parameter | This Product | PIC16F677-I/SO | PIC16F677T-I/SO | PIC16F677-E/P | PIC16F677-E/ML | PIC16F676-I/SO |
|---|---|---|---|---|---|---|
| Package | 20-pin SOIC (SO) | 20-pin SOIC - same | 20-pin SOIC - same | 20-pin PDIP - different footprint | 20-pin QFN - different footprint | 20-pin SOIC - same |
| Brand | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology | Microchip Technology |
| Program Memory | 3.5 KB Flash | 3.5 KB Flash | 3.5 KB Flash | 3.5 KB Flash | 3.5 KB Flash | 1.75 KB Flash (-50%) |
| SRAM | 128 bytes | 128 bytes | 128 bytes | 128 bytes | 128 bytes | 64 bytes (-50%) |
| ADC | 12-bit, 14 channels | 12-bit, 14 channels | 12-bit, 14 channels | 12-bit, 14 channels | 12-bit, 14 channels | 10-bit, 8 channels |
| DAC | 10-bit, 1 channel | 10-bit, 1 channel | 10-bit, 1 channel | 10-bit, 1 channel | 10-bit, 1 channel | No DAC |
| Operating Temperature | -40C to +125C | -40C to +85C | -40C to +85C | -40C to +125C | -40C to +125C | -40C to +85C |
| Maximum CPU Speed | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 20 MHz | 20 MHz |
| Approximate Unit Price | USD 1.85 (qty 1) | USD 1.85 (qty 1) | USD 1.85 (qty 1) | USD 1.95 (qty 1) | USD 2.05 (qty 1) | USD 1.60 (qty 1) |
Key Differentiators
- Extended -40C to +125C operating temperature (vs PIC16F677-I/SO)
- On-chip 10-bit DAC eliminates external converter cost (vs PIC16F676-I/SO)
- Twice the flash and SRAM of the PIC16F676 family (vs PIC16F676-I/SO)
- Surface-mount SOIC-20 packaging for high-density designs (vs PIC16F677-E/P)
Design Notes
The PIC16F677-E/SO operating voltage is 2.0 V to 5.5 V. Place a 100 nF decoupling capacitor as close as possible to the VDD pin (pin 20) and a 10 uF bulk capacitor on the same rail. For battery applications, leverage the nanoWatt sleep modes (Sleep, Idle, and several low-power oscillator options) which drop current below 1 uA in Sleep; wake-up via Watchdog Timer, external interrupt, or peripheral interrupt allows decades of battery life on a single coin cell. Brown-out Reset (BOR) and Power-on Reset (POR) are configured via the configuration word and should always be enabled to prevent undefined behavior on a slow-rising supply.
Route the ICSP signals PGD (RA1, pin 2) and PGC (RA0, pin 1) to a 2x3 or 1x6 header with at least 100 mil pin pitch for reliable pogo-pin programming access. Keep the ICSP traces short (less than 50 mm) and avoid routing them next to switching nodes to prevent programming errors. If the LVP (low-voltage programming) configuration bit is enabled, leave pin RC3/PGM (pin 13) accessible. The 20-pin SOIC land pattern follows JEDEC MS-013 with 1.27 mm pin pitch and a 7.5 mm body width; refer to Microchip application note AN1095 for SOIC-20 footprint guidelines.
Configuration-word settings must be programmed before any code executes; leaving the oscillator selection at the default can trap the part if no external crystal is fitted. Unused I/O pins should be configured as outputs driving low to minimize sleep-mode current and to prevent floating-input CMOS oscillations. The 12-bit ADC requires the acquisition time to be calculated based on source impedance (typical TACQ = 4 us for 10 kohm source); using TACQ = 0 will produce inaccurate readings. The CCP/PWM module uses Timer2 as the time base; ensure Timer2 is enabled and configured before enabling the PWM output.
When the 12-bit ADC is sampling high-impedance sensors (above 10 kohm), add an external op-amp buffer to keep source impedance below 1 kohm so the internal sample-and-hold settles within the acquisition window. Place ADC traces away from digital switching signals and clock lines, and provide a solid ground plane under analog pins (AN0-AN13) to minimize digital-noise coupling. If using the internal voltage reference (VREF+), enable the reference only after a 5 ms stabilization delay to avoid ADC offset error on the first conversion.
Compliance Information
RoHS compliant per Microchip product page. The -E extended temperature grade is not AEC-Q100 automotive qualified; for automotive applications, request the PIC16F677-E/SO automotive variant or higher-grade PIC16 family member. Lead-free and halogen-free per Microchip packaging datasheet.