Pic16F688 Data Sheet: 14-Pin Flash-Based, 8-Bit Cmos Microcontrollers With Nanowatt Technology
Pic16F688 Data Sheet: 14-Pin Flash-Based, 8-Bit Cmos Microcontrollers With Nanowatt Technology
Pic16F688 Data Sheet: 14-Pin Flash-Based, 8-Bit Cmos Microcontrollers With Nanowatt Technology
Data Sheet
14-Pin Flash-Based, 8-Bit
CMOS Microcontrollers with
nanoWatt Technology
• Microchip believes that its family of products is one of the most secure families of its kind on the market today, when used in the
intended manner and under normal conditions.
• There are dishonest and possibly illegal methods used to breach the code protection feature. All of these methods, to our
knowledge, require using the Microchip products in a manner outside the operating specifications contained in Microchip’s Data
Sheets. Most likely, the person doing so is engaged in theft of intellectual property.
• Microchip is willing to work with the customer who is concerned about the integrity of their code.
• Neither Microchip nor any other semiconductor manufacturer can guarantee the security of their code. Code protection does not
mean that we are guaranteeing the product as “unbreakable.”
Code protection is constantly evolving. We at Microchip are committed to continuously improving the code protection features of our
products. Attempts to break Microchip’s code protection feature may be a violation of the Digital Millennium Copyright Act. If such acts
allow unauthorized access to your software or other copyrighted work, you may have a right to sue for relief under that Act.
Program
Data Memory
Memory 10-bit A/D Timers
Device I/O Comparators
Flash SRAM EEPROM (ch) 8/16-bit
(words) (bytes) (bytes)
PIC16F688 4096 256 256 12 8 2 1/1
VDD 1 14 VSS
RA5/T1CKI/OSC1/CLKIN 2 13 RA0/AN0/C1IN+/ICSPDAT/ULPWU
RA4/AN3/T1G/OSC2/CLKOUT 3 RA1/AN1/C1IN-/VREF/ICSPCLK
PIC16F688
12
RA3/MCLR/VPP 4 11 RA2/AN2/T0CKI/INT/C1OUT
RC5/RX/DT 5 10 RC0/AN4/C2IN+
RC4/C2OUT/TX/CK 6 9 RC1/AN5/C2IN-
RC3/AN7 7 8 RC2/AN6
16-pin QFN
VDD
VSS
NC
NC
13
15
14
16
RA5/T1CKI/OSC1/CLKIN 1 12 RA0/AN0/C1IN+/ICSPDAT/ULPWU
RA4/AN3/T1G/OSC2/CLKOUT 2 11 RA1/AN1/C1IN-/VREF/ICSPCLK
PIC16F688
RA3/MCLR/VPP 3 10 RA2/AN2/T0CKI/INT/C1OUT
RC5/RX/DT 4 9 RC0/AN4/C2IN+
5
6
7
8
RC3/AN7
RC2/AN6
RC4/C2OUT/TX/CK
RC1/AN5/C2IN-
Errata
An errata sheet, describing minor operational differences from the data sheet and recommended workarounds, may exist for current
devices. As device/documentation issues become known to us, we will publish an errata sheet. The errata will specify the revision
of silicon and revision of document to which it applies.
To determine if an errata sheet exists for a particular device, please check with one of the following:
• Microchip’s Worldwide Web site; http://www.microchip.com
• Your local Microchip sales office (see last page)
When contacting a sales office, please specify which device, revision of silicon and data sheet (include literature number) you are
using.
INT
Configuration
13 8 PORTA
Data Bus
Program Counter
Flash RA0
4k x 14 RA1
Program RA2
RAM
Memory 8-Level Stack 256 bytes RA3
(13 bit) File RA4
Registers
RA5
Program
14
Bus RAM Addr 9
Addr MUX
Instruction Reg
PORTC
Direct Addr 7 Indirect
8 Addr RC0
RC1
FSR Reg
RC2
Instruction Oscillator
Decode & Start-up Timer ALU
Control
Power-on
Reset 8
Timing Watchdog
OSC1/CLKIN Generation W Reg
Timer
Brown-out
OSC2/CLKOUT
Reset
Internal
Oscillator
Block
RX/DT TX/CK
T1G VDD VSS
MCLR
T1CKI
2
Analog-to-Digital Converter Analog Comparators EEDAT
and Reference 256 bytes
8
DATA
EEPROM
EEADDR
VREF AN0 AN1 AN2 AN3 AN4 AN5 AN6 AN7 C1IN- C1IN+ C1OUT C2IN- C2IN+ C2OUT
General General
General Purpose Purpose
Purpose Register Register
Register
80 Bytes 80 Bytes
96 Bytes EFh 16Fh 1EFh
accesses F0h accesses 170h accesses 1F0h
7Fh Bank 0 FFh Bank 0 17Fh Bank 0 1FFh
Bank 0 Bank 1 Bank 2 Bank 3
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
bit 7 IRP: Register Bank Select bit (used for indirect addressing)
1 = Bank 2, 3 (100h-1FFh)
0 = Bank 0, 1 (00h-FFh)
bit 6-5 RP<1:0>: Register Bank Select bits (used for direct addressing)
00 = Bank 0 (00h-7Fh)
01 = Bank 1 (80h-FFh)
10 = Bank 2 (100h-17Fh)
11 = Bank 3 (180h-1FFh)
bit 4 TO: Time-out bit
1 = After power-up, CLRWDT instruction or SLEEP instruction
0 = A WDT time-out occurred
bit 3 PD: Power-down bit
1 = After power-up or by the CLRWDT instruction
0 = By execution of the SLEEP instruction
bit 2 Z: Zero bit
1 = The result of an arithmetic or logic operation is zero
0 = The result of an arithmetic or logic operation is not zero
bit 1 DC: Digit Carry/Borrow bit (ADDWF, ADDLW,SUBLW,SUBWF instructions)(1)
1 = A carry-out from the 4th low-order bit of the result occurred
0 = No carry-out from the 4th low-order bit of the result
bit 0 C: Carry/Borrow bit(1) (ADDWF, ADDLW, SUBLW, SUBWF instructions)(1)
1 = A carry-out from the Most Significant bit of the result occurred
0 = No carry-out from the Most Significant bit of the result occurred
Note 1: For Borrow, the polarity is reversed. A subtraction is executed by adding the two’s complement of the second operand.
For rotate (RRF, RLF) instructions, this bit is loaded with either the high-order or low-order bit of the source register.
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Note 1: BOREN<1:0> = 01 in the Configuration Word register for this bit to control the BOR.
PCLATH<4:3> 11
2 OPCODE<10:0>
PCLATH
The INDF register is not a physical register. Addressing EXAMPLE 2-1: INDIRECT ADDRESSING
the INDF register will cause indirect addressing.
MOVLW 0x20 ;initialize pointer
Indirect addressing is possible by using the INDF MOVWF FSR ;to RAM
register. Any instruction using the INDF register NEXT CLRF INDF ;clear INDF register
actually accesses data pointed to by the File Select INCF FSR ;inc pointer
Register (FSR). Reading INDF itself indirectly will BTFSS FSR,4 ;all done?
produce 00h. Writing to the INDF register indirectly GOTO NEXT ;no clear next
CONTINUE ;yes continue
results in a no operation (although Status bits may be
affected). An effective 9-bit address is obtained by
concatenating the 8-bit FSR register and the IRP bit of
the STATUS register, as shown in Figure 2-4.
Data
Memory
7Fh 1FFh
Bank 0 Bank 1 Bank 2 Bank 3
FOSC<2:0>
(Configuration Word Register)
External Oscillator SCS<0>
(OSCCON Register)
OSC2
Sleep
LP, XT, HS, RC, RCIO, EC
OSC1
MUX
IRCF<2:0>
(OSCCON Register) System Clock
(CPU and Peripherals)
8 MHz
111 INTOSC
Internal Oscillator 4 MHz
110
2 MHz
101
Postscaler
1 MHz
MUX
HFINTOSC 100
500 kHz
8 MHz 011
250 kHz
010
125 kHz
001
LFINTOSC 31 kHz
000
31 kHz
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Note 1: Bit resets to ‘0’ with Two-Speed Start-up and LP, XT or HS selected as the Oscillator mode or Fail-Safe
mode is enabled.
OPERATION (LP, XT OR
OSC1/CLKIN
HS MODE)
C1 To Internal
Logic
PIC® MCU
RP(3) RF(2) Sleep
OSC1/CLKIN
C1 To Internal
Logic OSC2/CLKOUT
C2 Ceramic RS(1)
Quartz Resonator
RF(2) Sleep
Crystal
Note 1: A series resistor (RS) may be required for
ceramic resonators with low drive level.
OSC2/CLKOUT
C2 RS(1) 2: The value of RF varies with the Oscillator mode
selected (typically between 2 MΩ to 10 MΩ).
Note 1: A series resistor (RS) may be required for 3: An additional parallel feedback resistor (RP)
quartz crystals with low drive level. may be required for proper ceramic resonator
2: The value of RF varies with the Oscillator mode operation.
selected (typically between 2 MΩ to 10 MΩ).
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
HF LF(1)
HFINTOSC LFINTOSC (FSCM and WDT disabled)
HFINTOSC
Start-up Time 2-cycle Sync Running
LFINTOSC
IRCF <2:0> ≠0 =0
System Clock
HFINTOSC
2-cycle Sync Running
LFINTOSC
IRCF <2:0> ≠0 =0
System Clock
LFINTOSC HFINTOSC
LFINTOSC turns off unless WDT or FSCM is enabled
LFINTOSC
Start-up Time 2-cycle Sync Running
HFINTOSC
IRCF <2:0> =0 ≠0
System Clock
HFINTOSC
TOST
OSC2
Program Counter PC - N PC PC + 1
System Clock
Sample Clock
System Oscillator
Clock Failure
Output
Note: The system clock is normally at a much higher frequency than the sample clock. The relative frequencies in
this example have been chosen for clarity.
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Note 1: Setting a pin to an analog input automatically disables the digital input circuitry, weak pull-ups and
interrupt-on-change, if available. The corresponding TRIS bit must be set to Input mode in order to allow
external control of the voltage on the pin.
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Note 1: Global Interrupt Enable (GIE) must be enabled for individual interrupts to be recognized.
2: IOCA<5:4> always reads ‘1’ in XT, HS and LP OSC modes.
WR CK Q
WPUDA RAPU
RD
WPUDA VDD
D Q
WR CK Q I/O PIN
PORTA
VSS
-
+ VT
D Q
WR CK Q
TRISA IULP
0 1
RD
TRISA Analog(1) Vss
Input Mode
ULPWUE
RD
PORTA
D Q
CK Q Q D
WR
IOCA
EN Q3
RD
IOCA Q D
EN
Interrupt-on-
Change
RD PORTA
To Comparator
To A/D Converter
FIGURE 4-2: BLOCK DIAGRAM OF RA1 FIGURE 4-3: BLOCK DIAGRAM OF RA2
Analog(1) Analog(1)
Data Bus Input Mode Data Bus Input Mode
D Q D Q VDD
VDD
WR WR CK
CK Q Q Weak
WPUA Weak WPUA
RD RAPU RD RAPU
WPUA WPUA
C1OUT
Enable
VDD VDD
D Q D Q
WR CK Q WR CK
PORTA Q C1OUT 1
PORTA
0 I/O pin
I/O pin
D Q D Q
WR CK Q WR CK
TRISA VSS TRISA Q VSS
(1)
Analog Analog(1)
RD Input Mode RD Input Mode
TRISA TRISA
RD RD
PORTA PORTA
D Q D Q
WR CK Q Q D Q D
WR CK Q
IOCA IOCA
EN Q3 EN Q3
RD RD
IOCA Q D IOCA Q D
EN EN
Interrupt-on- Interrupt-on-
change change
RD PORTA RD PORTA
To Comparator
To Timer0
To A/D Converter
To INT
To A/D Converter
Note 1: Comparator mode and ANSEL determines analog
Input mode.
Note 1: Analog Input mode is based upon ANSEL.
CK Q D
WR Q
IOCA
EN Q3
RD
IOCA Q D
EN
Interrupt-on-
change
RD PORTA
To T1G
To A/D Converter
Note 1: CLK modes are XT, HS, LP, LPTMR1 and CLKOUT
Enable.
2: With CLKOUT option.
3: Analog Input mode is ANSEL.
WR CK
PORTA Q
D Q I/O pin
WR CK
TRISA Q VSS
INTOSC
RD Mode
TRISA
RD
(2)
PORTA
D Q
CK Q D
WR Q
IOCA
EN Q3
RD
IOCA
Q D
EN
Interrupt-on-
change
RD PORTA
To Timer1 or CLKGEN
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
WR CK
VDD PORTC Q
D Q
WR CK I/O Pin
PORTC Q
D Q
WR CK
I/O Pin Q
TRISC VSS
D Q Analog Input
WR Mode(1)
CK RD
TRISC Q VSS TRISC
Analog Input
Mode(1) RD
RD
TRISC PORTC
To A/D Converter
RD
PORTC
To Comparators Note 1: Analog Input mode comes from ANSEL.
To A/D Converter
WR CK
VDD PORTC Q EUSART 1
EUSART DT Out
TX/CLKOUT 0 0 I/O Pin
Data Bus 0
C2OUT 1 D Q
1
WR CK
D Q I/O Pin Q VSS
TRISC
WR CK Q
PORTC VSS RD
TRISC
D Q RD
WR PORTC
CK Q
TRISC
To EUSART RX/DT In
RD
TRISC
RD
PORTC
To EUSART CLK Input
FOSC/4
Data Bus
0
8
1
Sync
1 2 Tcy TMR0
T0CKI 0
pin 0
T0SE T0CS Set Flag bit T0IF
8-bit
on Overflow
Prescaler PSA
1
8
WDTE PSA
SWDTEN
PS<2:0> 1
WDT
16-bit Time-out
Prescaler 0
16
31 kHz Watchdog
INTOSC Timer PSA
WDTPS<3:0>
Note 1: T0SE, T0CS, PSA, PS<2:0> are bits in the OPTION register.
2: SWDTEN and WDTPS<3:0> are bits in the WDTCON register.
3: WDTE bit is in the Configuration Word register.
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Note 1: A dedicated 16-bit WDT postscaler is available. See Section 11.5 “Watchdog Timer (WDT)” for more
information.
TMR1GE
T1GINV
TMR1ON
Set flag bit
TMR1IF on To C2 Comparator Module
Overflow Timer1 Clock
TMR1(2)
Synchronized
EN 0 clock input
TMR1H TMR1L
1
Oscillator
(1) T1SYNC
OSC1/T1CKI 1
Prescaler Synchronize(3)
FOSC/4 1, 2, 4, 8 det
Internal 0
OSC2/T1G Clock 2
T1CKPS<1:0>
TMR1CS
1
INTOSC
Without CLKOUT
C2OUT 0
T1OSCEN
T1GSS
Note 1: ST Buffer is low power type when using LP oscillator, or high speed type when using T1CKI.
2: Timer1 register increments on rising edge.
3: Synchronize does not operate while in Sleep.
T1CKI = 1
when TMR1
Enabled
T1CKI = 0
when TMR1
Enabled
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Note 1: T1GINV bit inverts the Timer1 gate logic, regardless of source.
2: TMR1GE bit must be set to use either T1G pin or C2OUT, as selected by the T1GSS bit of the CM2CON1
register, as a Timer1 gate source.
Output
MULTIPLEX
C1INV
Port Pins
To C1OUT pin
C1
To Data Bus
D Q
Q1
EN RD CMCON0
Q3*RD CMCON0
EN
CL
Reset
C2SYNC
To Timer1 Gate
MULTIPLEX
C2INV
Port Pins
0
C2 To C2OUT pin
D Q 1
Timer1
clock source(1)
To Data Bus
D Q
Q1
EN RD CMCON0
Q3*RD CMCON0
EN
CL
Reset
VT ≈ 0.6V RIC
Rs < 10K
To ADC Input
AIN
CPIN ILEAKAGE
VA
5 pF VT ≈ 0.6V ±500 nA
Vss
A VIN- C2IN-
A VIN-
C2IN-
(1) C2 C2OUT
VIN+ C2 Off A VIN+
C2IN+ A C2IN+
C2IN-
A VIN- A VIN-
C2IN-
A VIN+ C2 C2OUT A VIN+ C2 C2OUT
C2IN+ C2IN+
Four Inputs Multiplexed to Two Comparators Two Common Reference Comparators with Outputs
CM<2:0> = 010 CM<2:0> = 110
A
C1IN-
A VIN-
C1IN- CIS = 0 VIN-
A CIS = 1 VIN+ C1 C1OUT
C1IN+ C1 C1OUT
VIN+
C1OUT(pin) D
A
C2IN- CIS = 0 VIN-
C2IN-
A VIN-
C2IN+ A CIS = 1 C2OUT
VIN+ C2 A VIN+ C2 C2OUT
C2IN+
C2OUT(pin) D
From CVREF Module
C2IN-
A VIN- I/O VIN-
C2IN-
A VIN+ C2 C2OUT I/O VIN+ C2 Off(1)
C2IN+ C2IN+
Legend: A = Analog Input, ports always reads ‘0’ CIS = Comparator Input Switch (CMCON0<3>)
I/O = Normal port I/O D = Comparator Digital Output
Note 1: Reads as ‘0’, unless CxINV = 1.
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
16 Stages
8R R R R R
VDD
8R VRR
16-1 Analog
MUX
VREN
15
CVREF to 14
Comparator 2
Input 1
0
VR<3:0>(1)
VREN
VR<3:0> = 0000
VRR
VDD
VCFG = 0
VREF VCFG = 1
RA0/AN0 000
RA1/AN1/VREF 001
A/D
RA2/AN2 010
011 GO/DONE 10
RA4/AN3
RC0/AN4 100
0 = Left Justify
RC1/AN5 101 ADFM
1 = Right Justify
RC2/AN6 110 ADON 10
RC3/AN7 111
VSS ADRESH ADRESL
CHS
TCY to TAD TAD1 TAD2 TAD3 TAD4 TAD5 TAD6 TAD7 TAD8 TAD9 TAD10 TAD11
b9 b8 b7 b6 b5 b4 b3 b2 b1 b0
Conversion Starts
Holding Capacitor is Disconnected from Analog Input (typically 100 ns)
ADRESH ADRESL
(ADFM = 0) MSB LSB
bit 7 bit 0 bit 7 bit 0
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
T ACQ = Amplifier Settling Time + Hold Capacitor Charging Time + Temperature Coefficient
= T AMP + T C + T COFF
= 2µs + T C + [ ( Temperature - 25°C ) ( 0.05µs/°C ) ]
1
V AP PLIE D ⎛⎝ 1 – ------------⎞⎠ = V CHOLD ;[1] VCHOLD charged to within 1/2 lsb
2047
–TC
⎛ ----------⎞
RC ;[2] VCHOLD charge response to VAPPLIED
V AP P LI ED ⎜ 1 – e ⎟ = V CHOLD
⎝ ⎠
– Tc
⎛ ---------⎞
1
V AP P LIED ⎜ 1 – e ⎟ = V A P PLIE D ⎛⎝ 1 – ------------⎞⎠
RC
;combining [1] and [2]
⎝ ⎠ 2047
T C = – C HOLD ( R IC + R SS + R S ) ln(1/2047)
= – 10pF ( 1k Ω + 7k Ω + 10k Ω ) ln(0.0004885)
= 1.37 µs
Therefore:
T ACQ = 2ΜS + 1.37 ΜS + [ ( 50°C- 25°C ) ( 0.05ΜS /°C ) ]
= 4.67 ΜS
Note 1: The reference voltage (VREF) has no effect on the equation, since it cancels itself out.
2: The charge holding capacitor (CHOLD) is not discharged after each conversion.
3: The maximum recommended impedance for analog sources is 10 kΩ. This is required to meet the pin
leakage specification.
VDD
Sampling
Switch
VT = 0.6V
Rs ANx RIC ≤ 1k SS Rss
VA CPIN I LEAKAGE
VT = 0.6V CHOLD = 10 pF
5 pF ± 500 nA
VSS/VREF-
6V
5V RSS
Legend: CPIN = Input Capacitance VDD 4V
VT = Threshold Voltage 3V
I LEAKAGE = Leakage current at the pin due to 2V
various junctions
RIC = Interconnect Resistance 5 6 7 8 9 10 11
SS = Sampling Switch Sampling Switch
CHOLD = Sample/Hold Capacitance (kΩ)
Full-Scale Range
3FFh
3FEh
3FDh
3FCh
ADC Output Code
1 LSB ideal
3FBh
Full-Scale
004h Transition
003h
002h
001h
000h Analog Input Voltage
1 LSB ideal
ADCON0 ADFM VCFG — CHS2 CHS1 CHS0 GO/DONE ADON 00-0 0000 00-0 0000
ADCON1 — ADCS2 ADCS1 ADCS0 — — — — -000 ---- -000 ----
ANSEL ANS7 ANS6 ANS5 ANS4 ANS3 ANS2 ANS1 ANS0 1111 1111 1111 1111
ADRESH A/D Result Register High Byte xxxx xxxx uuuu uuuu
ADRESL A/D Result Register Low Byte xxxx xxxx uuuu uuuu
INTCON GIE PEIE T0IE INTE RAIE T0IF INTF RAIF 0000 000x 0000 000x
PIE1 EEIE ADIE RCIE C2IE C1IE OSFIE TXIE TMR1IE 0000 0000 0000 0000
PIR1 EEIF ADIF RCIF C2IF C1IF OSFIF TXIF TMR1IF 0000 0000 0000 0000
PORTA — — RA5 RA4 RA3 RA2 RA1 RA0 --x0 x000 --x0 x000
PORTC — — RC5 RC4 RC3 RC2 RC1 RC0 --xx 0000 --xx 0000
TRISA — — TRISA5 TRISA4 TRISA3 TRISA2 TRISA1 TRISA0 --11 1111 --11 1111
TRISC — — TRISC5 TRISC4 TRISC3 TRISC2 TRISC1 TRISC0 --11 1111 --11 1111
Legend: x = unknown, u = unchanged, — = unimplemented read as ‘0’. Shaded cells are not used for ADC module.
The write time is controlled by an on-chip timer. The Interrupt flag bit EEIF of the PIR1 register is set when
write/erase voltages are generated by an on-chip write is complete. It must be cleared in the software.
charge pump rated to operate over the voltage range of EECON2 is not a physical register. Reading EECON2
the device for byte or word operations. will read all ‘0’s. The EECON2 register is used
When the device is code-protected, the CPU may exclusively in the data EEPROM write sequence.
continue to read and write the data EEPROM memory
and read the program memory. When code-protected,
the device programmer can no longer access data or
program memory.
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
bit 7-0 EEDATn: Byte Value to Write to or Read from Data EEPROM bits
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
bit 7-0 EEADR<7:0>: 8 Least Significant Address bits for EEPROM Read/Write Operation(1) or Read from program memory
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
S = Bit can only be set
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
MOVLW AAh ;
MOVWF EECON2 ;Write AAh
BSF EECON1, WR ;Set WR bit to begin write
BSF INTCON, GIE ;Enable INTs.
;
;First instruction after BSF EECON1,RD executes normally
NOP
NOP ;Any instructions here are ignored as program
;memory is read in second cycle after BSF EECON1,RD
;
BANKSEL EEDAT ;
MOVF EEDAT, W ;W = LS Byte of Program Memory
MOVWF LOWPMBYTE ;
MOVF EEDATH, W ;W = MS Byte of Program EEDAT
MOVWF HIGHPMBYTE ;
BCF STATUS, RP1 ;Bank 0
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
Flash Data INSTR (PC) INSTR (PC + 1) EEDATH,EEDAT INSTR (PC + 3) INSTR (PC + 4)
RD bit
EEDATH
EEDAT
Register
EERHLT
TXEN
TRMT SPEN
Baud Rate Generator FOSC
÷n
TX9
BRG16 n
+1 Multiplier x4 x16 x64
TX9D
SYNC 1 X 0 0 0
SPBRGH SPBRG BRGH X 1 1 0 0
BRG16 X 1 0 1 0
BRG16
+1 n
Multiplier x4 x16 x64
SYNC 1 X 0 0 0
SPBRGH SPBRG BRGH X 1 1 0 0 FIFO
FERR RX9D RCREG Register
BRG16 X 1 0 1 0
8
Data Bus
RCIF Interrupt
RCIE
Write to TXREG
Word 1
BRG Output
(Shift Clock)
RC4/C2OUT/TX/CK
pin Start bit bit 0 bit 1 bit 7/8 Stop bit
Word 1
TXIF bit
(Transmit Buffer 1 TCY
Reg. Empty Flag)
Word 1
TRMT bit Transmit Shift Reg
(Transmit Shift
Reg. Empty Flag)
Write to TXREG
Word 1 Word 2
BRG Output
(Shift Clock)
RC4/C2OUT/TX/CK
pin Start bit bit 0 bit 1 bit 7/8 Stop bit Start bit bit 0
TXIF bit 1 TCY Word 1 Word 2
(Interrupt Reg. Flag)
1 TCY
TRMT bit Word 1 Word 2
(Transmit Shift Transmit Shift Reg.
Reg. Empty Flag) Transmit Shift Reg.
• CREN = 1 Immediately after all data bits and the Stop bit have
been received, the character in the RSR is transferred
• SYNC = 0
to the EUSART receive FIFO and the RCIF interrupt
• SPEN = 1 flag bit of the PIR1 register is set. The top character in
All other EUSART control bits are assumed to be in the FIFO is transferred out of the FIFO by reading the
their default state. RCREG register.
Setting the CREN bit of the RCSTA register enables the Note: If the receive FIFO is overrun, no additional
receiver circuitry of the EUSART. Clearing the SYNC bit characters will be received until the overrun
of the TXSTA register configures the EUSART for condition is cleared. See Section 10.1.2.5
asynchronous operation. Setting the SPEN bit of the “Receive Overrun Error” for more
RCSTA register enables the EUSART and information on overrun errors.
automatically configures the RX/DT I/O pin as an input.
If the RX/DT pin is shared with an analog peripheral the 10.1.2.3 Receive Interrupts
analog I/O function must be disabled by clearing the The RCIF interrupt flag bit of the PIR1 register is set
corresponding ANSEL bit. whenever the EUSART receiver is enabled and there is
Note: When the SPEN bit is set the TX/CK I/O an unread character in the receive FIFO. The RCIF
pin is automatically configured as an interrupt flag bit is read-only, it cannot be set or cleared
output, regardless of the state of the by software.
corresponding TRIS bit and whether or not RCIF interrupts are enabled by setting the following
the EUSART transmitter is enabled. The bits:
PORT latch is disconnected from the
• RCIE interrupt enable bit of the PIE1 register
output driver so it is not possible to use the
TX/CK pin as a general purpose output. • PEIE peripheral interrupt enable bit of the INT-
CON register
• GIE global interrupt enable bit of the INTCON
register
The RCIF interrupt flag bit will be set when there is an
unread character in the FIFO, regardless of the state of
interrupt enable bits.
Read Rcv
Buffer Reg
RCREG
RCIF
(Interrupt Flag)
OERR bit
CREN
Note: This timing diagram shows three words appearing on the RX input. The RCREG (receive buffer) is read after the third word,
causing the OERR (overrun) bit to be set.
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
BAUD FOSC = 4.000 MHz FOSC = 3.6864 MHz FOSC = 2.000 MHz FOSC = 1.000 MHz
RATE SPBRG SPBRG SPBRG SPBRG
Actual % Actual % Actual % Actual %
value value value value
Rate Error Rate Error Rate Error Rate Error
(decimal) (decimal) (decimal) (decimal)
300 300 0.16 207 300 0.00 191 300 0.16 103 300 0.16 51
1200 1202 0.16 51 1200 0.00 47 1202 0.16 25 1202 0.16 12
2400 2404 0.16 25 2400 0.00 23 2404 0.16 12 — — —
9600 — — — 9600 0.00 5 — — — — — —
10417 10417 0.00 5 — — — 10417 0.00 2 — — —
19.2k — — — 19.20k 0.00 2 — — — — — —
57.6k — — — 57.60k 0.00 0 — — — — — —
115.2k — — — — — — — — — — — —
BAUD FOSC = 20.000 MHz FOSC = 18.432 MHz FOSC = 11.0592 MHz FOSC = 8.000 MHz
RATE SPBRG SPBRG SPBRG SPBRG
Actual % Actual % Actual % Actual %
value value value value
Rate Error Rate Error Rate Error Rate Error
(decimal) (decimal) (decimal) (decimal)
300 — — — — — — — — — — — —
1200 — — — — — — — — — — — —
2400 — — — — — — — — — 2404 0.16 207
9600 9615 0.16 129 9600 0.00 119 9600 0.00 71 9615 0.16 51
10417 10417 0.00 119 10378 -0.37 110 10473 0.53 65 10417 0.00 47
19.2k 19.23k 0.16 64 19.20k 0.00 59 19.20k 0.00 35 19231 0.16 25
57.6k 56.82k -1.36 21 57.60k 0.00 19 57.60k 0.00 11 55556 -3.55 8
115.2k 113.64k -1.36 10 115.2k 0.00 9 115.2k 0.00 5 — — —
BAUD FOSC = 4.000 MHz FOSC = 3.6864 MHz FOSC = 2.000 MHz FOSC = 1.000 MHz
RATE SPBRG SPBRG SPBRG SPBRG
Actual % Actual % Actual % Actual %
value value value value
Rate Error Rate Error Rate Error Rate Error
(decimal) (decimal) (decimal) (decimal)
300 — — — — — — — — — 300 0.16 207
1200 1202 0.16 207 1200 0.00 191 1202 0.16 103 1202 0.16 51
2400 2404 0.16 103 2400 0.00 95 2404 0.16 51 2404 0.16 25
9600 9615 0.16 25 9600 0.00 23 9615 0.16 12 — — —
10417 10417 0.00 23 10473 0.53 21 10417 0.00 11 10417 0.00 5
19.2k 19.23k 0.16 12 19.2k 0.00 11 — — — — — —
57.6k — — — 57.60k 0.00 3 — — — — — —
115.2k — — — 115.2k 0.00 1 — — — — — —
BAUD FOSC = 20.000 MHz FOSC = 18.432 MHz FOSC = 11.0592 MHz FOSC = 8.000 MHz
RATE SPBRG SPBRG SPBRG SPBRG
Actual % Actual % Actual % Actual %
value value value value
Rate Error Rate Error Rate Error Rate Error
(decimal) (decimal) (decimal) (decimal)
300 300.0 -0.01 4166 300.0 0.00 3839 300.0 0.00 2303 299.9 -0.02 1666
1200 1200 -0.03 1041 1200 0.00 959 1200 0.00 575 1199 -0.08 416
2400 2399 -0.03 520 2400 0.00 479 2400 0.00 287 2404 0.16 207
9600 9615 0.16 129 9600 0.00 119 9600 0.00 71 9615 0.16 51
10417 10417 0.00 119 10378 -0.37 110 10473 0.53 65 10417 0.00 47
19.2k 19.23k 0.16 64 19.20k 0.00 59 19.20k 0.00 35 19.23k 0.16 25
57.6k 56.818 -1.36 21 57.60k 0.00 19 57.60k 0.00 11 55556 -3.55 8
115.2k 113.636 -1.36 10 115.2k 0.00 9 115.2k 0.00 5 — — —
BAUD FOSC = 4.000 MHz FOSC = 3.6864 MHz FOSC = 2.000 MHz FOSC = 1.000 MHz
RATE SPBRG SPBRG SPBRG SPBRG
Actual % Actual % Actual % Actual %
value value value value
Rate Error Rate Error Rate Error Rate Error
(decimal) (decimal) (decimal) (decimal)
300 300.1 0.04 832 300.0 0.00 767 299.8 -0.108 416 300.5 0.16 207
1200 1202 0.16 207 1200 0.00 191 1202 0.16 103 1202 0.16 51
2400 2404 0.16 103 2400 0.00 95 2404 0.16 51 2404 0.16 25
9600 9615 0.16 25 9600 0.00 23 9615 0.16 12 — — —
10417 10417 0.00 23 10473 0.53 21 10417 0.00 11 10417 0.00 5
19.2k 19.23k 0.16 12 19.20k 0.00 11 — — — — — —
57.6k — — — 57.60k 0.00 3 — — — — — —
115.2k — — — 115.2k 0.00 1 — — — — — —
BAUD FOSC = 20.000 MHz FOSC = 18.432 MHz FOSC = 11.0592 MHz FOSC = 8.000 MHz
RATE SPBRG SPBRG SPBRG SPBRG
Actual % Actual % Actual % Actual %
value value value value
Rate Error Rate Error Rate Error Rate Error
(decimal) (decimal) (decimal) (decimal)
300 300.0 0.00 16665 300.0 0.00 15359 300.0 0.00 9215 300.0 0.00 6666
1200 1200 -0.01 4166 1200 0.00 3839 1200 0.00 2303 1200 -0.02 1666
2400 2400 0.02 2082 2400 0.00 1919 2400 0.00 1151 2401 0.04 832
9600 9597 -0.03 520 9600 0.00 479 9600 0.00 287 9615 0.16 207
10417 10417 0.00 479 10425 0.08 441 10433 0.16 264 10417 0 191
19.2k 19.23k 0.16 259 19.20k 0.00 239 19.20k 0.00 143 19.23k 0.16 103
57.6k 57.47k -0.22 86 57.60k 0.00 79 57.60k 0.00 47 57.14k -0.79 34
115.2k 116.3k 0.94 42 115.2k 0.00 39 115.2k 0.00 23 117.6k 2.12 16
BAUD FOSC = 4.000 MHz FOSC = 3.6864 MHz FOSC = 2.000 MHz FOSC = 1.000 MHz
RATE SPBRG SPBRG SPBRG SPBRG
Actual % Actual % Actual % Actual %
value value value value
Rate Error Rate Error Rate Error Rate Error
(decimal) (decimal) (decimal) (decimal)
300 300.0 0.01 3332 300.0 0.00 3071 299.9 -0.02 1666 300.1 0.04 832
1200 1200 0.04 832 1200 0.00 767 1199 -0.08 416 1202 0.16 207
2400 2398 0.08 416 2400 0.00 383 2404 0.16 207 2404 0.16 103
9600 9615 0.16 103 9600 0.00 95 9615 0.16 51 9615 0.16 25
10417 10417 0.00 95 10473 0.53 87 10417 0.00 47 10417 0.00 23
19.2k 19.23k 0.16 51 19.20k 0.00 47 19.23k 0.16 25 19.23k 0.16 12
57.6k 58.82k 2.12 16 57.60k 0.00 15 55.56k -3.55 8 — — —
115.2k 111.1k -3.55 8 115.2k 0.00 7 — — — — — —
BRG Clock
RCIDL
RCIF bit
(Interrupt)
Read
RCREG
Note 1: The ABD sequence requires the EUSART module to be configured in Asynchronous mode.
RCIF
Cleared due to User Read of RCREG
Note 1: The EUSART remains in Idle while the WUE bit is set.
Note 1: If the wake-up event requires long oscillator warm-up time, the automatic clearing of the WUE bit can occur while the stposc signal is
still active. This sequence should not depend on the presence of Q clocks.
2: The EUSART remains in Idle while the WUE bit is set.
Write to TXREG
Dummy Write
BRG Output
(Shift Clock)
RX/DT
pin bit 0 bit 1 bit 2 bit 7 bit 0 bit 1 bit 7
Word 1 Word 2
TX/CK pin
(SCKP = 0)
TX/CK pin
(SCKP = 1)
Write to
TXREG Reg Write Word 1 Write Word 2
TXIF bit
(Interrupt Flag)
TRMT bit
‘1’ ‘1’
TXEN bit
Note: Sync Master mode, SPBRG = 0, continuous transmission of two 8-bit words.
TX/CK pin
Write to
TXREG reg
TXIF bit
TRMT bit
TXEN bit
RX/DT
pin bit 0 bit 1 bit 2 bit 3 bit 4 bit 5 bit 6 bit 7
TX/CK pin
(SCKP = 0)
TX/CK pin
(SCKP = 1)
Write to
bit SREN
SREN bit
RCIF bit
(Interrupt)
Read
RXREG
Note: Timing diagram demonstrates Sync Master mode with bit SREN = 1 and bit BRGH = 0.
Legend:
R = Readable bit W = Writable bit P = Programmable’ U = Unimplemented bit, read
as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Note 1: Enabling Brown-out Reset does not automatically enable Power-up Timer.
2: The entire data EEPROM will be erased when the code protection is turned off.
3: The entire program memory will be erased when the code protection is turned off.
4: When MCLR is asserted in INTOSC or RC mode, the internal clock oscillator is disabled.
External
Reset
MCLR/VPP pin
Sleep
WDT WDT
Module Time-out
Reset
VDD Rise
Detect
Power-on Reset
VDD
Brown-out(1)
Reset BOREN
SBOREN S
OST/PWRT
OST
Chip_Reset
10-bit Ripple Counter R Q
OSC1/
CLKI pin
PWRT
LFINTOSC 11-bit Ripple Counter
Enable PWRT
Enable OST
VDD
VBOD
Internal
Reset 64 ms(1)
VDD
VBOD
Internal < 64 ms
Reset 64 ms(1)
VDD
VBOD
Internal
Reset 64 ms(1)
XT, HS, LP TPWRT + 1024 1024 • TOSC TPWRT + 1024 1024 • TOSC 1024 • TOSC
• TOSC • TOSC
RC, EC, INTOSC TPWRT — TPWRT — —
0 u 1 1 Power-on Reset
1 0 1 1 Brown-out Reset
u u 0 u WDT Reset
u u 0 0 WDT Wake-up
CONFIG(2) BOREN1 BOREN0 CPD CP MCLRE PWRTE WDTE FOSC2 FOSC1 FOSC0 — —
PCON — — ULPWUE SBOREN — — POR BOR --01 --qq --0u --uu
STATUS IRP RP1 RP0 TO PD Z DC C 0001 1xxx 000q quuu
Legend: u = unchanged, x = unknown, – = unimplemented bit, reads as ‘0’, q = value depends on condition. Shaded cells are not used by BOR.
Note 1: Other (non Power-up) Resets include MCLR Reset and Watchdog Timer Reset during normal operation.
2: See Configuration Word register (Register 11-1) for operation of all register bits.
VDD
MCLR
Internal POR
TPWRT
OST Time-out
Internal Reset
VDD
MCLR
Internal POR
TPWRT
OST Time-out
Internal Reset
VDD
MCLR
Internal POR
TPWRT
OST Time-out
Internal Reset
IOC-RA0
IOCA0
IOC-RA1
IOCA1
IOC-RA2
IOCA2
IOC-RA3
IOCA3
IOC-RA4
IOCA4
IOC-RA5
IOCA5
C2IF GIE
C2IE
ADIF
ADIE
EEIF
EEIE
OSFIF
OSFIE
RCIF
RCIE
CLKOUT (3)
(4)
INT pin
(1)
(1)
INTF Flag (5) Interrupt Latency (2)
(INTCON<1>)
GIE bit
(INTCON<7>)
Instruction Flow
PC PC PC + 1 PC + 1 0004h 0005h
Instruction
Fetched Inst (PC) Inst (PC + 1) — Inst (0004h) Inst (0005h)
Prescaler(1)
1
16-bit WDT Prescaler
PSA
PS<2:0>
31 kHz
WDTPS<3:0> To TMR0
LFINTOSC Clock
0 1
PSA
Legend:
R = Readable bit W = Writable bit U = Unimplemented bit, read as ‘0’
-n = Value at POR ‘1’ = Bit is set ‘0’ = Bit is cleared x = Bit is unknown
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
OSC1
CLKOUT(4) TOST(2)
INT pin
INTF flag
(INTCON<1>) Interrupt Latency (3)
GIE bit
(INTCON<7>) Processor in
Sleep
Instruction Flow
PC PC PC + 1 PC + 2 PC + 2 PC + 2 0004h 0005h
Instruction Inst(PC + 1) Inst(PC + 2) Inst(0004h) Inst(0005h)
Fetched Inst(PC) = Sleep
Instruction Sleep Inst(PC + 1) Dummy Cycle Dummy Cycle
Executed Inst(PC - 1) Inst(0004h)
11.8 ID Locations
Four memory locations (2000h-2003h) are designated
as ID locations where the user can store checksum or
other code identification numbers. These locations are
not accessible during normal execution but are
readable and writable during Program/Verify mode.
Only the Least Significant 7 bits of the ID locations are
used.
NC 1 20 ICDCLK
ICDMCLR/VPP 2 19 ICDDATA
* * *
PIC16F688 -ICD
VDD 3 18 Vss
RA5 4 17 RA0
To Normal RA4 5 16 RA1
Connections RA3 6 15 RA2
RC5 7 14 RC0
* Isolation devices (as required) RC4 8 13 RC1
RC3 9 12 RC2
ICD 10 11 NC
Before Instruction
W = 0x07
After Instruction
W = value of k8
C=0 W>f
C=1 W≤f
DC = 0 W<3:0> > f<3:0>
DC = 1 W<3:0> ≤ f<3:0>
† NOTICE: Stresses above those listed under “Absolute Maximum Ratings” may cause permanent damage to the
device. This is a stress rating only and functional operation of the device at those or any other conditions above those
indicated in the operation listings of this specification is not implied. Exposure above maximum rating conditions for
extended periods may affect device reliability.
5.5
5.0
4.5
VDD (V)
4.0
3.5
3.0
2.5
2.0
0 8 10 20
Frequency (MHz)
Note 1: The shaded region indicates the permissible combinations of voltage and frequency.
FIGURE 14-2: HFINTOSC FREQUENCY ACCURACY OVER DEVICE VDD AND TEMPERATURE
125
± 5%
85
Temperature (°C)
± 2%
60
25 ± 1%
VDD (V)
Param Conditions
Device Characteristics Min Typ† Max Units
No. VDD Note
D010 Supply Current (IDD) (1, 2)
— 16 23 μA 2.0 FOSC = 32 kHz
— 27 38 μA 3.0 LP Oscillator mode
— 47 75 μA 5.0
D011* — 180 250 μA 2.0 FOSC = 1 MHz
— 290 400 μA 3.0 XT Oscillator mode
— 490 650 μA 5.0
D012 — 280 380 μA 2.0 FOSC = 4 MHz
— 480 670 μA 3.0 XT Oscillator mode
— 0.9 1.4 mA 5.0
D013* — 130 220 μA 2.0 FOSC = 1 MHz
— 215 360 μA 3.0 EC Oscillator mode
— 360 520 μA 5.0
D014 — 220 340 μA 2.0 FOSC = 4 MHz
— 375 550 μA 3.0 EC Oscillator mode
— 0.65 1.0 mA 5.0
D015 — 8 20 μA 2.0 FOSC = 31 kHz
— 16 40 μA 3.0 LFINTOSC mode
— 31 65 μA 5.0
D016* — 320 400 μA 2.0 FOSC = 4 MHz
— 490 640 μA 3.0 HFINTOSC mode
— 0.87 1.2 mA 5.0
D017 — 0.5 0.7 mA 2.0 FOSC = 8 MHz
— 0.78 1 mA 3.0 HFINTOSC mode
— 1.43 1.8 mA 5.0
D018 — 340 580 μA 2.0 FOSC = 4 MHz
— 550 950 μA 3.0 EXTRC mode(3)
— 0.92 1.6 mA 5.0
D019 — 2.9 3.7 mA 4.5 FOSC = 20 MHz
— 3.1 3.8 mA 5.0 HS Oscillator mode
* These parameters are characterized but not tested.
† Data in “Typ” column is at 5.0V, 25°C unless otherwise stated. These parameters are for design guidance
only and are not tested.
Note 1: The test conditions for all IDD measurements in active operation mode are: OSC1 = external square wave,
from rail-to-rail; all I/O pins tri-stated, pulled to VDD; MCLR = VDD; WDT disabled.
2: The supply current is mainly a function of the operating voltage and frequency. Other factors, such as I/O
pin loading and switching rate, oscillator type, internal code execution pattern and temperature, also have
an impact on the current consumption.
3: For RC oscillator configurations, current through REXT is not included. The current through the resistor can
be extended by the formula IR = VDD/2REXT (mA) with REXT in kΩ.
Param Conditions
Device Characteristics Min Typ† Max Units
No. VDD Note
D020 Power-down Base — 0.05 1.2 μA 2.0 WDT, BOR, Comparators, VREF and
Current(IPD)(2) — 0.15 1.5 μA 3.0 T1OSC disabled
— 0.35 1.8 μA 5.0
— 150 500 nA 3.0 -40°C ≤ TA ≤ +25°C
D021 — 1.0 2.2 μA 2.0 WDT Current(1)
— 2.0 4.0 μA 3.0
— 3.0 7.0 μA 5.0
D022 — 42 60 μA 3.0 BOR Current(1)
— 85 122 μA 5.0
D023 — 32 45 μA 2.0 Comparator Current(1), both
— 60 78 μA 3.0 comparators enabled
— 120 160 μA 5.0
D024 — 30 36 μA 2.0 CVREF Current(1) (high range)
— 45 55 μA 3.0
— 75 95 μA 5.0
D025* — 39 47 μA 2.0 CVREF Current(1) (low range)
— 59 72 μA 3.0
— 98 124 μA 5.0
D026 — 4.5 7.0 μA 2.0 T1OSC Current(1), 32.768 kHz
— 5.0 8.0 μA 3.0
— 6.0 12 μA 5.0
D027 — 0.30 1.6 μA 3.0 A/D Current(1), no conversion in
— 0.36 1.9 μA 5.0 progress
* These parameters are characterized but not tested.
† Data in “Typ” column is at 5.0V, 25°C unless otherwise stated. These parameters are for design guidance
only and are not tested.
Note 1: The peripheral current is the sum of the base IDD or IPD and the additional current consumed when this
peripheral is enabled. The peripheral Δ current can be determined by subtracting the base IDD or IPD
current from this limit. Max values should be used when calculating total current consumption.
2: The power-down current in Sleep mode does not depend on the oscillator type. Power-down current is
measured with the part in Sleep mode, with all I/O pins in high-impedance state and tied to VDD.
Param Conditions
Device Characteristics Min Typ† Max Units
No. VDD Note
D020E Power-down Base — 0.05 9 μA 2.0 WDT, BOR, Comparators, VREF and
Current (IPD)(2) — 0.15 11 μA 3.0 T1OSC disabled
— 0.35 15 μA 5.0
D021E — 1 28 μA 2.0 WDT Current(1)
— 2 30 μA 3.0
— 3 35 μA 5.0
D022E — 42 65 μA 3.0 BOR Current(1)
— 85 127 μA 5.0
D023E — 32 45 μA 2.0 Comparator Current(1), both
— 60 78 μA 3.0 comparators enabled
— 120 160 μA 5.0
D024E — 30 70 μA 2.0 CVREF Current(1) (high range)
— 45 90 μA 3.0
— 75 120 μA 5.0
D025E* — 39 91 μA 2.0 CVREF Current(1) (low range)
— 59 117 μA 3.0
— 98 156 μA 5.0
D026E — 4.5 25 μA 2.0 T1OSC Current(1), 32.768 kHz
— 5 30 μA 3.0
— 6 40 μA 5.0
D027E — 0.30 12 μA 3.0 A/D Current(1), no conversion in
— 0.36 16 μA 5.0 progress
* These parameters are characterized but not tested.
† Data in “Typ” column is at 5.0V, 25°C unless otherwise stated. These parameters are for design guidance
only and are not tested.
Note 1: The peripheral current is the sum of the base IDD or IPD and the additional current consumed when this
peripheral is enabled. The peripheral Δ current can be determined by subtracting the base IDD or IPD
current from this limit. Max values should be used when calculating total current consumption.
2: The power-down current in Sleep mode does not depend on the oscillator type. Power-down current is
measured with the part in Sleep mode, with all I/O pins in high-impedance state and tied to VDD.
Param
Sym Characteristic Min Typ† Max Units Conditions
No.
D100 IULP Ultra Low-Power Wake-Up — 200 — nA See Application Note AN879,
Current “Using the Microchip Ultra
Low-Power Wake-up Module”
(DS00879)
Capacitive Loading Specs on
Output Pins
D101* COSC2 OSC2 pin — — 15 pF In XT, HS and LP modes when
external clock is used to drive
OSC1
D101A* CIO All I/O pins — — 50 pF
Data EEPROM Memory
D120 ED Byte Endurance 100K 1M — E/W -40°C ≤ TA ≤ +85°C
D120A ED Byte Endurance 10K 100K — E/W +85°C ≤ TA ≤ +125°C
D121 VDRW VDD for Read/Write VMIN — 5.5 V Using EECON1 to read/write
VMIN = Minimum operating
voltage
D122 TDEW Erase/Write Cycle Time — 5 6 ms
D123 TRETD Characteristic Retention 40 — — Year Provided no other specifications
are violated
D124 TREF Number of Total Erase/Write 1M 10M — E/W -40°C ≤ TA ≤ +85°C
Cycles before Refresh(4)
Program Flash Memory
D130 EP Cell Endurance 10K 100K — E/W -40°C ≤ TA ≤ +85°C
D130A ED Cell Endurance 1K 10K — E/W +85°C ≤ TA ≤ +125°C
D131 VPR VDD for Read VMIN — 5.5 V VMIN = Minimum operating
voltage
D132 VPEW VDD for Erase/Write 4.5 — 5.5 V
D133 TPEW Erase/Write cycle time — 2 2.5 ms
D134 TRETD Characteristic Retention 40 — — Year Provided no other specifications
are violated
* These parameters are characterized but not tested.
† Data in “Typ” column is at 5.0V, 25°C unless otherwise stated. These parameters are for design guidance only and are
not tested.
Note 1: In RC oscillator configuration, the OSC1/CLKIN pin is a Schmitt Trigger input. It is not recommended to use an external
clock in RC mode.
2: Negative current is defined as current sourced by the pin.
3: The leakage current on the MCLR pin is strongly dependent on the applied voltage level. The specified levels represent
normal operating conditions. Higher leakage current may be measured at different input voltages.
4: See Section 9.0 “Data EEPROM and Flash Program Memory Control” for additional information.
5: Including OSC2 in CLKOUT mode.
1. TppS2ppS
2. TppS
T
F Frequency T Time
Lowercase letters (pp) and their meanings:
pp
cc CCP1 osc OSC1
ck CLKOUT rd RD
cs CS rw RD or WR
di SDI sc SCK
do SDO ss SS
dt Data in t0 T0CKI
io I/O PORT t1 T1CKI
mc MCLR wr WR
Uppercase letters and their meanings:
S
F Fall P Period
H High R Rise
I Invalid (High-impedance) V Valid
L Low Z High-impedance
Load Condition
Pin CL
VSS
Q4 Q1 Q2 Q3 Q4 Q1
OSC1/CLKIN
OS02
OS04 OS04
OS03
OSC2/CLKOUT
(LP, XT, HS Modes)
OSC2/CLKOUT
(CLKOUT Mode)
FOSC
OS11 OS12
OS20
CLKOUT OS21
OS19 OS16 OS18
OS13 OS17
I/O pin
(Input)
OS15 OS14
I/O pin Old Value New Value
(Output)
OS18, OS19
VDD
MCLR
30
Internal
POR
33
PWRT
Time-out 32
OSC
Start-Up Time
Internal Reset(1)
Watchdog Timer
Reset(1)
31
34
34
I/O pins
VDD
VBOR + VHYST
VBOR
37
Reset
(due to BOR) 33*
* 64 ms delay only if PWRTE bit in the Configuration Word register is programmed to ‘0’.
T0CKI
40 41
42
T1CKI
45 46
47 49
TMR0 or
TMR1
Param
Sym Characteristic Min Typ† Max Units Conditions
No.
AD130* TAD A/D Clock Period 1.6 — 9.0 μs TOSC-based, VREF ≥ 3.0V
3.0 — 9.0 μs TOSC-based, VREF full range
A/D Internal RC ADCS<1:0> = 11 (ADRC mode)
Oscillator Period 3.0 6.0 9.0 μs At VDD = 2.5V
1.6 4.0 6.0 μs At VDD = 5.0V
AD131 TCNV Conversion Time — 11 — TAD Set GO/DONE bit to new data in A/D
(not including Result register
Acquisition Time)(1)
AD132* TACQ Acquisition Time 11.5 — μs
AD133* TAMP Amplifier Settling Time — — 5 μs
AD134 TGO Q4 to A/D Clock Start — TOSC/2 — —
BSF ADCON0, GO
1 TCY
AD134 (TOSC/2(1))
AD131
Q4
AD130
A/D CLK
A/D Data 9 8 7 6 3 2 1 0
ADIF 1 TCY
GO DONE
Sampling Stopped
Sample AD132
Note 1: If the A/D clock source is selected as RC, a time of TCY is added before the A/D clock starts. This allows the
SLEEP instruction to be executed.
BSF ADCON0, GO
AD134 (TOSC/2 + TCY(1)) 1 TCY
AD131
Q4
AD130
A/D CLK
A/D Data 9 8 7 6 3 2 1 0
ADIF 1 TCY
GO DONE
Note 1: If the A/D clock source is selected as RC, a time of TCY is added before the A/D clock starts. This allows the
SLEEP instruction to be executed.
Note: The graphs and tables provided following this note are a statistical summary based on a limited number of
samples and are provided for informational purposes only. The performance characteristics listed herein are
not tested or guaranteed. In some graphs or tables, the data presented may be outside the specified
operating range (e.g., outside specified power supply range) and therefore, outside the warranted range.
“Typical” represents the mean of the distribution at 25°C. “Maximum” or “minimum” represents
(mean + 3σ) or (mean - 3σ) respectively, where σ is a standard deviation, over each temperature range.
FIGURE 15-1: TYPICAL IDD vs. FOSC OVER VDD (EC MODE)
3.5
2.0 4.0V
IDD (mA)
1.5
3.0V
1.0
2.0V
0.5
0.0
1 MHz 2 MHz 4 MHz 6 MHz 8 MHz 10 MHz 12 MHz 14 MHz 16 MHz 18 MHz 20 MHz
FOSC
4.0
Typical: Statistical Mean @25°C
5.5V
3.5 Maximum: Mean (Worst-case Temp) + 3σ
(-40°C to 125°C)
5.0V
3.0
2.5
4.0V
IDD (mA)
2.0
3.0V
1.5
2.0V
1.0
0.5
0.0
1 MHz 2 MHz 4 MHz 6 MHz 8 MHz 10 MHz 12 MHz 14 MHz 16 MHz 18 MHz 20 MHz
FOSC
FIGURE 15-3: TYPICAL IDD vs. FOSC OVER VDD (HS MODE)
4.0
Typical: Statistical Mean @25°C 5.5V
3.5 Maximum: Mean (Worst-case Temp) + 3σ
(-40°C to 125°C)
Temp)+ 5,0V
3.0
4.5V
2.5
IDD (mA)
2.0
1.5
4.0V
1.0 3.5V
3.0V
0.5
0.0
4 MHz 10 MHz 16 MHz 20 MHz
FOSC
5.0
4.5 Typical:
Typical: Statistical
Statistical Mean
Mean @25°C
@25×C
Maximum: 5.5V
Maximum: Mean
Mean (Worst-case
(Worst CaseTemp) + 3σ
4.0 (-40°C
Temp)+to 3 125°C)
5.0V
3.5
4.5V
3.0
IDD (mA)
2.5
2.0
4.0V
1.5
3.5V
3.0V
1.0
0.5
0.0
4 MHz 10 MHz 16 MHz 20 MHz
FOSC
FIGURE 15-5: TYPICAL IDD vs. VDD OVER FOSC (XT MODE)
1200
@25°C
Typical: Statistical Mean @25×C
Maximum: Mean (Worst Case Temp)
(Worst-case Temp) ++ 3σ
1000
800
IDD (uA)
600
4 MHz
400
1 MHz
200
0
2 2.5 3 3.5 4 4.5 5 5.5
VDD (V)
1,800
1,200
1,000
IDD (uA)
800 4 MHz
600
400 1 MHz
200
0
2 2.5 3 3.5 4 4.5 5 5.5
VDD (V)
FIGURE 15-7: TYPICAL IDD vs. VDD OVER FOSC (EXTRC MODE)
1,200
Typical:
Typical:Statistical
StatisticalMean
Mean@25×C
@25°C
Maximum: Mean (Worst Case Temp) +
1,000 3
Maximum: Mean (Worst-case Temp) + 3σ
((-40°C
40×Ct to 125°C)
125×C)
800 4 MHz
IDD (uA)
600
1 MHz
400
200
0
2 2.5 3 3.5 4 4.5 5 5.5
VDD (V)
2,000
1,400
4 MHz
1,200
IDD (uA)
1,000
800
1 MHz
600
400
200
0
2 2.5 3 3.5 4 4.5 5 5.5
VDD (V)
FIGURE 15-9: IDD vs. VDD OVER FOSC (LFINTOSC MODE, 31 kHz)
LFINTOSC Mode, 31KHZ
80
Typical: Statistical Mean @25°C
70 Maximum: Mean (Worst-case Temp) + 3σ
(-40°C to 125°C)
60
50
Maximum
IDD (μA)
40
30
Typical
20
10
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
90
Typical: Statistical Mean @25°C
80 Maximum: Mean (Worst-case Temp) + 3σ
(-40°C to 125°C)
70
60 32 kHz Maximum
50
IDD (uA)
40
30
32 kHz Typical
20
10
0
2 2.5 3 3.5 4 4.5 5 5.5
VDD (V)
FIGURE 15-11: TYPICAL IDD vs. FOSC OVER VDD (HFINTOSC MODE)
HFINTOSC
1,800
Typical: Statistical Mean @25°C 5.5V
1,600 Maximum: Mean (Worst-case Temp) + 3σ
(-40°C to 125°C)
5.0V
1,400
1,200
4.0V
1,000
IDD (uA)
3.0V
800
600
2.0V
400
200
0
125 kHz 250 kHz 500 kHz 1 MHz 2 MHz 4 MHz 8 MHz
VDD (V)
2,500
5.0V
1,500
IDD (uA)
4.0V
3.0V
1,000
2.0V
500
0
125 kHz 250 kHz 500 kHz 1 MHz 2 MHz 4 MHz 8 MHz
VDD (V)
FIGURE 15-13: TYPICAL IPD vs. VDD (SLEEP MODE, ALL PERIPHERALS DISABLED)
Typical
(Sleep Mode all Peripherals Disabled)
0.45
0.30
0.25
IPD (μA)
0.20
0.15
0.10
0.05
0.0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
10.0
IPD (μA)
8.0
6.0
4.0
Max. 85°C
2.0
0.0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
180
120
Maximum
100
IPD (μA)
Typical
80
60
40
20
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
160
120
100
Maximum
IPD (μA)
80
Typical
60
40
20
0
2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
3.0
2.5
2.0
IPD (uA)
1.5
1.0
0.5
0.0
2.0V 2.5V 3.0V 3.5V 4.0V 4.5V 5.0V 5.5V
VDD (V)
40.0
35.0
Max. 125°C
30.0
25.0
IPD (uA)
20.0
15.0
10.0
Max. 85°C
5.0
0.0
2.0V 2.5V 3.0V 3.5V 4.0V 4.5V 5.0V 5.5V
VDD (V)
30
Typical: Statistical Mean @25°C
Maximum: Mean + 3σ (-40°C to 125°C)
28 Maximum: Mean + 3σ
Max. (125°C)
26
Max. (85°C)
24
22
Time (ms)
20
Typical
18
16
14
Minimum
12
10
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
30
Typical: Statistical Mean @25°C
28 Maximum: Mean + 3σ
26
Maximum
24
22
Time (ms)
20
Typical
18
16
Minimum
14
12
10
-40°C 25°C 85°C 125°C
Temperature (°C)
FIGURE 15-21: CVREF IPD vs. VDD OVER TEMPERATURE (HIGH RANGE)
High Range
140
Typical: Statistical Mean @25°C
Maximum: Mean + 3σ (-40°C to 125°C)
120
100
Max. 125°C
80
IPD (μA)
Max. 85°C
60
Typical
40
20
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
180
Typical: Statistical Mean @25°C
160 Maximum: Mean (Worst-case Temp) + 3σ
(-40°C to 125°C)
140
120
Max. 125°C
100
IPD (μA)
Max. 85°C
80
Typical
60
40
20
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
0.8
Max. 125°C
0.6
0.4
0.2
Min. -40°C
0.1
0.0
5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0
IOL (mA)
0.45
0.25
VOL (V)
Typ. 25°C
0.20
0.10
0.05
0.00
5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 10.0
IOL (mA)
3.5
3.0
Max. -40°C
Typ. 25°C
2.5
Min. 125°C
2.0
VOH (V)
1.5
0.5
0.0
0.0 -0.5 -1.0 -1.5 -2.0 -2.5 -3.0 -3.5 -4.0
IOH (mA)
5.5
5.0
Max. -40°C
Typ. 25°C
4.5
VOH (V)
Min. 125°C
4.0
3.0
0.0 -0.5 -1.0 -1.5 -2.0 -2.5 -3.0 -3.5 -4.0 -4.5 -5.0
IOH (mA)
FIGURE 15-27: TTL INPUT THRESHOLD VIN vs. VDD OVER TEMPERATURE
(TTL Input, -40×C TO 125×C)
1.7
Max. -40°C
1.3
Typ. 25°C
VIN (V)
1.1
Min. 125°C
0.9
0.7
0.5
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
4.0
VIH Max. 125°C
Typical: Statistical Mean @25°C
3.5 Maximum: Mean (Worst-case Temp) + 3σ
(-40°C to 125°C)
VIH Min. -40°C
3.0
2.5
VIN (V)
2.0
VIL Max. -40°C
1.0
0.5
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
FIGURE 15-29: T1OSC IPD vs. VDD OVER TEMPERATURE (32 kHz)
45.0
Typical: Statistical Mean @25°C
40.0 Maximum: Mean
Maximum: Mean (Worst-case
(-40×C
+ Temp) + 3σ
3 to 125×C)
(-40°C to 125°C)
35.0
Max. 125°C
30.0
25.0
IPD (mA)
20.0
15.0
Max. 85°C
10.0
5.0
Typ. 25°C
0.0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
1000
900
700
Response Time (nS)
400
300
0
2.0 2.5 4.0 5.5
VDD (V)
1000
900
700
Response Time (nS)
400
300
0
2.0 2.5 4.0 5.5
VDD (V)
45,000
40,000
Max. -40°C
35,000
Typ. 25°C
30,000
Frequency (Hz)
25,000
Min. 125°C
15,000
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
6
85°C
Time (μs)
25°C
4
-40°C
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
16
12
25°C
10
Time (μs)
-40°C
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
FIGURE 15-35: MAXIMUM HFINTOSC START-UP TIMES vs. VDD OVER TEMPERATURE
-40C to +85C
25
15
Time (μs)
85°C
25°C
10
-40°C
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
10
9
Typical: Statistical Mean @25°C
8 Maximum: Mean (Worst-case Temp) + 3σ
(-40°C to 125°C)
7
85°C
6
Time (μs)
25°C
5
-40°C
4
0
2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5
VDD (V)
2
Change from Calibration (%)
-1
-2
-3
-4
-5
VDD (V)
3
Change from Calibration (%)
-1
-2
-3
-4
-5
VDD (V)
3
Change from Calibration (%)
-1
-2
-3
-4
-5
VDD (V)
3
Change from Calibration (%)
-1
-2
-3
-4
-5
VDD (V)
XXXXXXXXXXXXXX PIC16F688
XXXXXXXXXXXXXX -I/P e3
YYWWNNN 0610017
XXXXXXXXXXX PIC16C688
XXXXXXXXXXX -I/SL e3
YYWWNNN 0610017
XXXXXXXX 688/ST e3
YYWW 0610
NNN 017
XXXXXX 16F688
XXXXXX -I/ML e3
YWWNNN 610017
Note: In the event the full Microchip part number cannot be marked on one line, it will
be carried over to the next line, thus limiting the number of available
characters for customer-specific information.
* Standard PIC® device marking consists of Microchip part number, year code, week code, and traceability
code. For PIC device marking beyond this, certain price adders apply. Please check with your Microchip
Sales Office. For QTP devices, any special marking adders are included in QTP price.
NOTE 1
E1
1 2 3
A A2
L c
A1
b1
b e eB
6% 7+8-
& 9&% 7 7: ;
7!&( $ 7
% 1+
% % < <
""4 4 0 , 0
1 % % 0 < <
!" % !" ="% - , ,0
""4="% - 0 >
: 9% ,0 0 0
% % 9 0 , 0
9" 4 > 0
6 9"="% ( 0 ?
9 ) 9"="% ( >
: ) * 1 < < ,
!"#$%! & '(!%&! %( %")% % % "
*$%+ % %
, & "-" %!"& "$ % ! "$ % ! %#". "
& "% -/0
1+21 & %#%! ))% !%%
E1
NOTE 1
1 2 3
e
h
b
α
h
φ c
A A2
A1 L
L1 β
Units MILLMETERS
Dimension Limits MIN NOM MAX
Number of Pins N 14
Pitch e 1.27 BSC
Overall Height A – – 1.75
Molded Package Thickness A2 1.25 – –
Standoff § A1 0.10 – 0.25
Overall Width E 6.00 BSC
Molded Package Width E1 3.90 BSC
Overall Length D 8.65 BSC
Chamfer (optional) h 0.25 – 0.50
Foot Length L 0.40 – 1.27
Footprint L1 1.04 REF
Foot Angle φ 0° – 8°
Lead Thickness c 0.17 – 0.25
Lead Width b 0.31 – 0.51
Mold Draft Angle Top α 5° – 15°
Mold Draft Angle Bottom β 5° – 15°
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. § Significant Characteristic.
3. Dimensions D and E1 do not include mold flash or protrusions. Mold flash or protrusions shall not exceed 0.15 mm per side.
4. Dimensioning and tolerancing per ASME Y14.5M.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
REF: Reference Dimension, usually without tolerance, for information purposes only.
Microchip Technology Drawing C04-065B
3 % & %! % 4" ) ' % 4 $% %"%
%% 255)))& &5 4
14-Lead Plastic Thin Shrink Small Outline (ST) – 4.4 mm Body [TSSOP]
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
E
E1
NOTE 1
1 2
e
b
c φ
A A2
A1 L1 L
Units MILLIMETERS
Dimension Limits MIN NOM MAX
Number of Pins N 14
Pitch e 0.65 BSC
Overall Height A – – 1.20
Molded Package Thickness A2 0.80 1.00 1.05
Standoff A1 0.05 – 0.15
Overall Width E 6.40 BSC
Molded Package Width E1 4.30 4.40 4.50
Molded Package Length D 4.90 5.00 5.10
Foot Length L 0.45 0.60 0.75
Footprint L1 1.00 REF
Foot Angle φ 0° – 8°
Lead Thickness c 0.09 – 0.20
Lead Width b 0.19 – 0.30
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. Dimensions D and E1 do not include mold flash or protrusions. Mold flash or protrusions shall not exceed 0.15 mm per side.
3. Dimensioning and tolerancing per ASME Y14.5M.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
REF: Reference Dimension, usually without tolerance, for information purposes only.
Microchip Technology Drawing C04-087B
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
16-Lead Plastic Quad Flat, No Lead Package (ML) – 4x4x0.9 mm Body [QFN]
Note: For the most current package drawings, please see the Microchip Packaging Specification located at
http://www.microchip.com/packaging
D D2
EXPOSED
PAD
E E2
2 2 b
1 1
K
N N
NOTE 1 L
TOP VIEW BOTTOM VIEW
A A3
A1
Units MILLIMETERS
Dimension Limits MIN NOM MAX
Number of Pins N 16
Pitch e 0.65 BSC
Overall Height A 0.80 0.90 1.00
Standoff A1 0.00 0.02 0.05
Contact Thickness A3 0.20 REF
Overall Width E 4.00 BSC
Exposed Pad Width E2 2.50 2.65 2.80
Overall Length D 4.00 BSC
Exposed Pad Length D2 2.50 2.65 2.80
Contact Width b 0.25 0.30 0.35
Contact Length L 0.30 0.40 0.50
Contact-to-Exposed Pad K 0.20 – –
Notes:
1. Pin 1 visual index feature may vary, but must be located within the hatched area.
2. Package is saw singulated.
3. Dimensioning and tolerancing per ASME Y14.5M.
BSC: Basic Dimension. Theoretically exact value shown without tolerances.
REF: Reference Dimension, usually without tolerance, for information purposes only.
Microchip Technology Drawing C04-127B
3 % & %! % 4" ) ' % 4 $% %"%
%% 255)))& &5 4
Replaced Package Drawings; Revised Product ID (SL Timers (8/16-bit) 1/1 1/1
Package to 3.90 mm); Replaced PICmicro with PIC; Oscillator Modes 8 8
Replaced Dev. Tool Section. Brown-out Reset Y Y
Internal Pull-ups RA0/1/2/4/5 RA0/1/2/4/5,
Revision E MCLR
Updated Peripheral Features, page 1; Deleted Note 1, Interrupt-on-change RA0/1/2/3 RA0/1/2/3/4/5
page 13; Updated the Typical Info. in Param. OS18, /4/5
Table 14-3; Added sub-section 10.3.2 (Auto-Baud Comparator 1 2
Overflow, page 100) to Chapter 10; Added SOIC,
EUSART N Y
TSSOP, QFN Package Land Patterns.
Ultra Low-Power N Y
Wake-up
Extended WDT N Y
Software Control N Y
Option of WDT/BOR
INTOSC Frequencies 4 MHz 32 kHz -
8 MHz
Clock Switching N Y
From: Name
Company
Address
City / State / ZIP / Country
Telephone: (_______) _________ - _________ FAX: (______) _________ - _________
Application (optional):
Would you like a reply? Y N
Questions:
2. How does this document meet your hardware and software development needs?
3. Do you find the organization of this document easy to follow? If not, why?
4. What additions to the document do you think would enhance the structure and subject?
5. What deletions from the document could be made without affecting the overall usefulness?
03/26/09
Authorized Distributor
Microchip:
PIC16F688-E/P PIC16F688-I/SL PIC16F688T-E/SL PIC16F688T-E/ST PIC16F688-E/ST PIC16F688-E/SL
PIC16F688-I/P PIC16F688T-I/SL PIC16F688T-I/ST PIC16F688-I/ST PIC16F688-I/STG PIC16F688-E/ML
PIC16F688-I/ML PIC16F688T-I/ML