PIC16F688-I/P - 8-Bit 20MHz 7KB Flash MCU 14-PDIP | Microchip
MPN: PIC16F688-I/P ✓ Active| Qty | Unit Price | Extended |
|---|---|---|
| 1 | $2.29 | $2.29 |
| 10 | $2.06 | $20.60 |
| 100 | $1.78 | $178.00 |
| 500 | $1.55 | $775.00 |
| 1,000 | $1.32 | $1,320.00 |
PIC16F688-I/P Overview
A microcontroller (MCU) is a single-chip computer that integrates a CPU, program memory, data memory, and peripherals into one package. Within the broader taxonomy, the PIC16F688 belongs to the 8-bit microcontroller family, which sits under microcontrollers, then integrated circuits (ICs), and finally semiconductors. Its role in a system is to read sensor or digital inputs, run deterministic firmware, and drive outputs such as LEDs, relays, FETs, or communication lines. The PIC16 family's standardized instruction set and broad toolchain support (MPLAB X, XC8, PICkit programmers) make it a long-lived platform in industrial, appliance, and consumer products.
Key features include a hardware USART/EUSART for asynchronous serial, an MSSP module supporting SPI and I2C (both master and slave), a 10-bit ADC with 8 channels, two 8-bit timers plus one 16-bit timer, enhanced PWM/capture/compare peripherals, and nanoWatt Technology dynamic power management with multiple idle and sleep modes that drop quiescent current to under 1 uA in sleep.
Technically, the device uses a 14-bit instruction word, an 8-level deep hardware stack, and direct/indirect addressing modes. The 8 MHz internal RC oscillator eliminates external crystal cost, and on-chip in-circuit debug (ICD) and program memory self-write reduce production programming cost.
Typical applications include low-cost sensor nodes, LED lighting control, small appliance control boards, battery-powered instrumentation, and remote-control transmitter/receiver pairs. The wide voltage range and low sleep current also make it attractive for IoT edge devices running on coin cells or harvested energy.
When designing with the PIC16F688-I/P, place a 100 nF decoupling capacitor within 5 mm of VDD and consider an MCLR pull-up of about 10 kohm with the usual diode to VDD for in-circuit programming compatibility.
This page synthesizes distributor pricing, drop-in 14-pin PDIP alternatives, and practical design notes not found in the manufacturer datasheet.
Drop-in alternatives for PIC16F688-I/P — 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 PIC16F688-I/P (same form factor and footprint) — differing in ADC, Internal Oscillator, Package, Program Memory (Flash), RoHS Status.
Quick Comparison Tool — Select alternative parts for side-by-side comparison:
PIC16F684-I/P
✅ Drop-In📋 Reference alternative (not in catalog)
PIC16F688-I/P Maximum Ratings & Electrical Characteristics
| Core Architecture | PIC16 mid-range, 8-bit, 14-bit instruction word |
| Program Memory (Flash) | 7 KB (4K x 14) |
| Data SRAM | 256 bytes |
| Data EEPROM | 256 bytes |
| Maximum CPU Speed | 20 MHz |
| Operating Voltage (VDD) | 2.0 V to 5.5 V |
| I/O Pins | 12 |
| ADC | 10-bit, 8 channels |
| Timers | 2 x 8-bit, 1 x 16-bit |
| PWM/CCP | Enhanced CCP, 10-bit PWM |
| Communication Peripherals | EUSART, MSSP (SPI / I2C master & slave) |
| Internal Oscillator | 8 MHz precision, software-selectable |
| Comparator | 2 x analog comparators with reference |
| Operating Temperature | -40 C to +85 C (Industrial) |
| Package | 14-pin PDIP (DIP-14), through-hole |
| RoHS Status | Compliant (lead-free, per DigiKey listing) |
PIC16F688-I/P Pin Configuration
| Pin 1 | VDD — Positive supply (2.0 V to 5.5 V) |
| Pin 2 | RA5/T1CKI/OSC1/CLKIN — GPIO RA5 / Timer1 clock in / oscillator input |
| Pin 3 | RA4/AN3/T1G/OSC2/CLKOUT — GPIO RA4 / ADC input / Timer1 gate / oscillator output |
| Pin 4 | RA3/MCLR/VPP — GPIO RA3 / Master Clear reset (active low) / programming voltage |
| Pin 5 | RC5 — GPIO RC5 |
| Pin 6 | RC4 — GPIO RC4 |
| Pin 7 | RC3 — GPIO RC3 |
| Pin 8 | RC2 — GPIO RC2 |
| Pin 9 | RC1 — GPIO RC1 |
| Pin 10 | RC0 — GPIO RC0 |
| Pin 11 | RA2/AN2/T0CKI/INT/CVREF — GPIO RA2 / ADC input / Timer0 clock in / external interrupt / comparator Vref |
| Pin 12 | RA1/AN1/CIN-/ICSPCLK — GPIO RA1 / ADC input / comparator in- / ICD clock |
| Pin 13 | RA0/AN0/CIN+/ICSPDAT — GPIO RA0 / ADC input / comparator in+ / ICD data |
| Pin 14 | VSS — Ground reference (0 V) |
Typical Applications
PIC16F688-I/P is suitable for 6 applications: Low-Cost Sensor Node with I2C/SPI, Battery-Powered IoT Edge Device, White Goods / Appliance Control, LED Lighting Driver / Dimmer Controller, Remote Control Transmitter/Receiver Pair, Industrial Sensor Conditioning Module.
Low-Cost Sensor Node with I2C/SPI
The PIC16F688-I/P suits a generic I2C/SPI sensor aggregator because it has an MSSP peripheral supporting both protocols in master and slave modes, a 10-bit 8-channel ADC for analog front-ends, and 12 I/O pins to drive a sensor plus a comms interface. The 7 KB Flash is enough for a state-machine driver plus a calibration table, and the 2.0-5.5 V VDD range lets it sit directly on a 3.3 V sensor bus. Place the part between the sensor I2C lines (RC4/SDA, RC3/SCL) and a low-power RF module, using the internal 8 MHz oscillator to avoid external crystal cost. nanoWatt sleep drops standby current below 1 uA, which is critical for battery-powered nodes that wake only on a timer interrupt.
Recommended
Battery-Powered IoT Edge Device
For coin-cell or 2xAA powered IoT endpoints, the PIC16F688-I/P combines 2.0 V minimum VDD with nanoWatt Technology idle/sleep modes that drop supply current below 1 uA. The 8 MHz internal oscillator eliminates the always-on crystal current and the 7 KB Flash holds a small BLE/Zigbee driver plus application code. Pair the MCU with a low-power radio such as the Microchip MRF24J40 on the SPI bus; the enhanced CCP can drive an indicator LED while the ADC samples a battery-divider for fuel-gauge code. Wide VDD also lets the device run directly from a single CR2032 cell down to its end-of-discharge voltage.
Recommended
White Goods / Appliance Control
The PIC16F688-I/P fits cost-sensitive appliance boards such as coffee makers, blenders, and washing-machine sub-modules where 12 I/O pins are enough to scan a keypad matrix, drive an LED or seven-segment display, and control a relay or TRIAC. The 10-bit ADC handles temperature or weight-sensor inputs, the two comparators detect zero-cross for TRIAC dimming, and the EUSART talks to a main controller or HMI daughter board. Industrial -40 C to +85 C temperature grade and 5.5 V VDD tolerance survive motor-derived supply noise; adding a TVS and bulk cap on VDD improves reliability.
Recommended
LED Lighting Driver / Dimmer Controller
The PIC16F688-I/P is a natural fit as a digital dimming controller for LED fixtures because the enhanced CCP generates a 10-bit PWM that drives a constant-current LED driver IC while the analog comparators detect zero-cross of the AC mains for phase-cut dimming feedback. Its 2.0-5.5 V VDD range can be powered from a small capacitive dropper or an auxiliary winding, and the 12 I/O pins give room for an I2C OLED status display plus a push-button input. nanoWatt Technology reduces standby power below regulatory limits when the fixture is off, and the industrial temperature grade survives enclosed-luminaire thermal rise.
Recommended
Remote Control Transmitter/Receiver Pair
With EUSART and MSSP on-chip, the PIC16F688-I/P can implement both ends of a sub-GHz or IR remote-control link using the same firmware base. In a transmitter it drives a 38 kHz carrier via PWM and reads a keypad matrix; in a receiver it decodes the demodulated signal and toggles relay outputs. The wide 2.0-5.5 V supply lets a single lithium cell power the unit and the low sleep current keeps shelf-life long. 256 bytes of EEPROM store pairing codes without external memory.
Recommended
Industrial Sensor Conditioning Module
For a 4-20 mA loop-powered sensor transmitter, the PIC16F688-I/P can run the ADC, apply linearization, and drive a current-loop DAC. Its 2.0-5.5 V range tolerates loosely regulated 24 V industrial bus rails stepped down with a small switching regulator, while the EUSART supports HART or Modbus RTU over RS-485. The 10-bit ADC, two analog comparators, and reference allow direct connection of a bridge sensor or thermocouple amplifier. Industrial -40 C to +85 C rating and robust PDIP package suit harsh factory-floor environments where surface-mount rework is undesirable.
Recommended
Recommended Products Summary
Engineering reference data for PIC16F688-I/P — comparison, design guidance, and compliance information.
Selection Guide
Comparison with Alternatives
| Parameter | This Product | PIC16F684-I/P | PIC16F690-I/P |
|---|---|---|---|
| Brand | Microchip Technology | Microchip Technology | Microchip Technology |
| Package | DIP-14 (PDIP-14) | DIP-14 (PDIP-14) - same | DIP-20 - NOT same |
| Program Memory | 7 KB (4K x 14) Flash | 3.5 KB Flash | 7 KB Flash |
| Data SRAM | 256 bytes | 256 bytes | 256 bytes |
| Data EEPROM | 256 bytes | 256 bytes | 256 bytes |
| Maximum CPU Speed | 20 MHz | 20 MHz | 20 MHz |
| I/O Pins | 12 | 12 | 18 |
| Operating Voltage | 2.0 V to 5.5 V | 2.0 V to 5.5 V | 2.0 V to 5.5 V |
| EUSART | Yes | Yes | Yes |
Key Differentiators
- Industry-standard PIC16 mid-range core with proven toolchain (vs PIC16F628A-I/P)
- Enhanced CCP provides 10-bit PWM and capture/compare (vs PIC16F684-I/P)
- Low pin count yet rich peripheral set (vs PIC16F690-I/P)
Design Notes
Place a 100 nF decoupling capacitor within 5 mm of the VDD pin (pin 1) and a bulk 1-10 uF capacitor on the same rail. The PIC16F688-I/P nanoWatt Technology sleep current is specified below 1 uA in the datasheet, but real-world figures depend on disabling all peripherals in software and routing MCLR high with the internal pull-up. Always tie unused I/O pins to defined logic levels (RA/RC outputs or inputs with the WPU disabled) to avoid floating-pin supply current.
Route the ICSP clock (RA1/ICSPCLK) and ICSP data (RA0/ICSPDAT) traces directly to a 5-pin header so that a PICkit 3 or PICkit 4 programmer can attach without rework. Keep the MCLR pull-up (typically 10 kohm) close to the pin and add a diode from VDD to MCLR if you intend to use the internal weak pull-up. For 50 Hz/60 Hz mains applications, keep ADC traces short and shield the analog AVSS/AVDD (shared with VSS/VDD on this device) from switching-node copper.
The PIC16F688-I/P I2C pins (RC3/SCL and RC4/SDA) require external pull-ups to VDD because the MSSP peripheral uses open-drain outputs; values between 2.2 kohm and 10 kohm are typical at 100 kHz. The 14-pin PDIP variant is rated to 20 MHz only when VDD is at least 2.5 V - below that, use the LF version. Do not leave the MCLR pin floating; a floating MCLR causes random resets in noisy environments. If you switch from the internal 8 MHz oscillator to a crystal, configure OSCCON correctly before clearing SCS bits.
The EUSART output swing on RC5 (TX) is CMOS, not RS-232 levels, so add an external level translator (such as a MAX232 or a discrete charge pump) for RS-232 communication. For RS-485, use a half-duplex transceiver like the Microchip MCP2551 or equivalent and enable the hardware address-detect feature in EUSART to reduce firmware overhead. When using SPI at high speeds (>4 MHz), keep traces short and add 22-33 ohm series resistors near the source pin to dampen ringing.
Compliance Information
Lead-free PDIP package per DigiKey product listing. RoHS and REACH compliance inherited from Microchip's standard 8-bit MCU declaration; AEC-Q100 not qualified (use PIC16F1xxx automotive parts if required).