2001 Microchip Technology Inc. DS30557F-page 1
PIC12C5XX
This document includes the progr amming
specifications for the following devices:
1.0 PROGRAMMING THE
PIC12C5XX
The PIC12C5XX can be programmed using a serial
method. Due to this serial programming, the
PIC12C5XX can be programmed while in the user’s
system , i nc reas in g d esi gn flexi bil ity. Thi s pr ogra mm in g
specification applies to PIC12C5XX devices in all
packages.
1.1 Hardware Requirements
The PIC12C5XX requires two programmable power
supplies, one for VDD (2.0V to 6.5V recommended) and
one for VPP (12V to 14V). Both s upplies should have a
minimum resolution of 0.25V.
1.2 Programming Mode
The Programming mode for the PIC12C5XX allows
programming of user program memory, special loca-
tions used for ID, and the configuration word for the
PIC12C5XX.
Pin Diagram
PIC12C508 PIC12C508A PIC12CE518
PIC12C509 PIC12C509A PIC12CE519
PDIP, SOIC, JW
8
7
6
5
1
2
3
4
VDD
GP5/OSC1/CLKIN
GP4/OSC2/CLKOUT
GP3/MCLR/VPP
VSS
GP0
GP1
GP2/T0CKI
PIC12C5XX
PIC12C5XXA
PIC12CE5XXA
In-Cir cuit Serial Programm ing
for PIC12C5XX OTP MCUs
PIC12C5XX
DS30557F-page 2 2001 Microchip Technology Inc.
2.0 PROGRAM MODE ENTRY
The Program/Verify Test mode is entered by holding
pins D B0 and DB1 low , whil e raisin g MCLR pin from VIL
to VIHH. Once in this Test mode, the user program
memory and the test program memory can be
accessed and programmed in a serial fashion. The first
selec ted memor y locatio n is the f uses. GP0 and GP1
are Schmitt Trigger inputs in this mode.
Incrementing the PC once (using the increment
address command), selects location 0x000 of the reg-
ular program memory. Afterwards, all other memory
locations from 0x001-01FF (PIC12C508/CE518),
0x001-03FF (PIC12C509/CE519) can be addressed
by in crementing the PC.
If the program counter has reached the last user pro-
gram location and is incremented again, the on-chip
specia l EPROM area wi ll be addres sed. (See Figure 2-
2 to determine where the special EPROM area is
located for the various PIC12C5XX devices.)
2.1 Programming Method
The programming technique is described in the follow-
ing section. It is designed to guarantee good program-
ming margins. It does, however, require a variable
power supply for VCC.
2.1.1 PROGRAMMING METHOD DETAILS
Essenti ally, this techni que inc ludes the followi ng st eps :
1. Perform blank check at VDD = VDDMIN. Report
failure. The device may not be properly erased.
2. Program location with pulses and verify after
each pulse at VDD = VDDP:
where VDDP = VDD range required during
programming ( 4.5V - 5.5V) .
a) Programming condition:
VPP = 13.0V to 13.25V
VDD = VDDP = 4.5V to 5.5V
VPP must be VDD + 7.25V to keep
Programming mode active.
b) Verify condition:
VDD = VDDP
VPP VDD + 7.5V but not to exceed 13.25V
If locati on fa il s to p rogram after N pulses (sug-
gested maximum program pulses of 8), then
report error as a programming failure.
3. Once location passes Step 2", apply 11X over
progra mming, i.e ., apply 11 times the number of
pulses that were required to program the loca-
tion. This will insure a solid programming mar-
gin. The over programming should be made
software programmable for easy updates .
4. Progr am all locations.
5. Verify all l oc ati ons (us in g Speed Verify mo de) at
VDD = VDDMIN.
6. Verify all locations at VDD = VDDMAX.
VDDMIN is the minimum operating voltage spec.
for the part. VDDMAX is the maximum operating
voltage spec. for the part.
2.1.2 SYSTEM REQUIREMENTS
Clearly , to implement this technique, the most stringent
requirements will be that of the power supplies:
VPP: VPP can be a fixed 13.0V to 13.25V supply. It must
not exceed 14.0V to avoid damage to the pin and
should be current limited to approxima tely 100m A.
VDD: 2.0V to 6.5V with 0.25V granularity. Since this
method calls for verification at different VDD values, a
programmable VDD power supply is needed.
Current Requirement: 40mA maximum
Microc hip ma y release devices in the fu ture with differ-
ent VDD ranges, which make it necessary to have a
programmable VDD.
It is important to verify an EPROM at the voltages
specified in this method to remain consistent with
Microc hip's test sc reening. For example, a PIC12C5XX
specified for 4.5V to 5.5V should be tested for proper
programm in g from 4.5V to 5.5V.
2.1.3 SOFTWARE REQUIREMENTS
Certain parameters should be programmable (and
therefore, easily modified) for easy upgrade.
a) Pulse width.
b) Maximum number of pulses, present limit 8.
c) Numbe r of ov er-prog rammi ng pulse s: sh ould b e
= (A N) + B, where N = number of pulses
required in regular programming. In our current
algorithm A = 11, B = 0.
2.2 Programming Pulse Width
Program Memory Cells: When programming one
word of EPROM, a programming pulse width (TPW) of
100µs is reco mmended.
The maximum number of programming attempts
should be lim ite d to 8 per word.
After the first successful verify, the same location should
be over-programmed with 11X over-programming.
Configuration W ord: The configuration word for oscil-
lator selection, WDT (Watchdog Timer) disable and
code protection, and MCLR enable, requires a pro-
gramming pulse width (TPWF) of 10ms. A series of
100µs pulses is preferred over a single 10ms pulse.
Note: Device must be verified at minimum and
maximum specified operating voltages as
specified in the data sheet.
Note: Any programmer not meeting the program-
mable VDD requirement and the verify at
VDDMAX and VDDMIN requirement, may
only be classified as a prototype or
development programmer, but not a
produ cti on prog ram me r.
2001 Microchip Technology Inc. DS30557F-page 3
PIC12C5XX
FIGURE 2-1: PROGRAMMING METHOD FLOW CHART
N > 8?
Start
Blank Check
@ VDD = VDDMIN
Pass?
Report Possible Erase Failure
Continue Programming
at user s option
Program 1 Location
@ VPP = 13.0V to 13.25V
VDD = VDDP
N = N + 1
(N = # of program pulses)
Report Programming Failure
Incr e ment PC to p o i n t to
next location, N = 0 Apply 11N additional
program pulses
Pass?
All
locations
done?
Verify all locations
@ VDD = VDDMIN
Pass? Report verify failure
@ VDDMIN
VDD = VDD max.
Verif y all locations
@ VDD = VDDMAX
Pass? Report verify failure
@ VDDMAX
Done
Yes
No
Yes
No
No
Yes
No
Yes
Yes
Yes
No
No
Now program
Configuration Word Verif y Configuration Word
@ VDDMAX & VDDMIN
PIC12C5XX
DS30557F-page 4 2001 Microchip Technology Inc.
FIGURE 2-2: PIC12C5XX SERIES PROGRAM MEMORY MAP IN PROGRAM/VERIFY MODE
Address
(HEX) 000 Bit Number
11 0
NNN
TTT
TTT + 1
TTT + 2
TTT + 3
TTT + 3F
(FFF)
For Customer Use
(4 x 4 bit usable)
For Factory Use
Configuration Word 5 bits
0 0 ID0
0 0 ID1
0 0 ID2
0 0 ID3
User Program Me mory
(NNN + 1) x 12 bit
NNN Highest normal EPROM memory address. NNN = 0x1FF for PIC12C508/CE518.
NNN = 0x3FF for PIC12C509/CE519.
TTT Start address of special EPROM area and ID locations.
Note that some versions will have an oscillator calibration value programmed at NNN.
2001 Microchip Technology Inc. DS30557F-page 5
PIC12C5XX
2.3 S pecial Memory Locations
The highest address of program memory space is
reserve d for the intern al RC osci llator cal ibration v alue.
This location should not be overwritten except when
this location is blank, and it should be verified, when
programmed, that it is a MOVLW XX instruction.
The ID L ocations are a is only enabled i f the devic e is in
Programming/Verify mode. Thus, in normal operation
mode, only the memory location 0x000 to 0xNNN will
be acce ssed and the Progr am Count er wil l just rollov er
from address 0xNNN to 0x000 when incremented.
The configuration word can only be accessed immedi -
atel y after M CLR g oing f rom VIL to VHH. The Program
Counter will be set to all 1s upon MCLR =VIL. Thus,
it ha s the valu e 0xFFF when acce ssing th e configu ra-
tion EPROM. Incrementing the Program Counter once
causes the Program Counter to rollover to all '0's.
Incrementing the Program Counter 4K times after
RESET (MCLR = VIL) does not allow access to the
configu r ati on EPROM .
2.3.1 CUSTOMER ID CODE LOCATIONS
Per definition, the first four words (address TTT to
TTT + 3) are reserved for customer use. It is recom-
mended that the customer us e only the four lower order
bits (bits 0 through 3) of each word and filling the eight
higher order bits with '0's.
A user may want to store an identification code (ID) in
the ID locations and still be able to read this code after
the code pr ot ect ion bit wa s programmed.
EXAMPLE 2-1: CUSTOMER CODE 0xD1E2
The Customer ID code 0xD1E2 should be stored in
the ID locations 0x200-0x203 like this (PIC12C508/
508A/CE518):
200: 0000 0000 1101
201: 0000 0000 0001
202: 0000 0000 1110
203: 0000 0000 0010
Reading these four memory locations, even with the
code protection bit programmed, would still output on
GP0 the bit sequence 1101, 0001, 1110, 0010
which is 0xD1E2.
2.4 Program/Verify Mode
The Program/Verify mode is entered by holding pins
GP1 and GP0 low, while raising MCLR pin from VIL to
VIHH (high voltage). Once in this mode, the user pro-
gram memory and the configuration memory can be
acces sed and programm ed in serial fashion. The m ode
of operati on is serial. G P0 and GP1 are Schm itt T rigger
inputs in this mode.
The seque nce that en ters the de vice in to the Program -
ming/Verify mode pla ces all o ther log ic into the RESET
state (the MCLR pin was initially at VIL). This means
that all I/O are in the RESET state (High impedance
inputs).
Note: All oth er lo ca t i ons in P ICm ic ro ® MCU con-
figuration memory are reserved and
should not be program me d.
Note: The MC LR pi n should be rais ed from V IL to
VIHH within 9 ms of VDD rise. This is to
ensure that the device does not have the
PC incremented while in valid operation
range.
PIC12C5XX
DS30557F-page 6 2001 Microchip Technology Inc.
2.4. 1 PROGRAM/VERIFY OPERATION
The GP1 pi n is used as a clock input pin, and the GP0
pin is used for entering command bits and data input/
output during serial operation. To input a command, the
clock p in (G P1) is cyc le d si x tim es . Each co mman d bi t
is latc hed on the falling ed ge of the c lock with t he Leas t
Significant bit (LSb) of the command being input first.
The data on pin GP0 is required to have a minimum
setup and hold t ime (see AC/ DC specs), w ith respect to
the fall ing edg e of the c lock. Com mands tha t have da ta
associated with them (read and load) are specified to
have a minimum delay of 1 µs betwee n the co mmand
and the dat a . After th is delay, the cl ock pi n is cycled 16
times w ith the first cycle be ing a START bit and the last
cycle being a STOP bit. Data is also input and output
LSb first. Therefore, during a read operation, the LSb
will be transmitted onto pin GP0 on the rising edge of
the sec on d c y cle , a nd du ring a load operati on , the LSb
will be latched on the falling edge of the second cycle.
A mini mum 1 µs delay is also spec ified between con-
secutive commands.
All command s are transmitted LSb first . Data words are
also transmitted LSb first. The data is transmitted on
the rising edge and latched on the falling edge of the
clock . To allow for de coding of com mands an d reversal
of data pin configuration, a time separation of at least
1 µs is required between a command and a data word
(or another command).
The commands that are available are lis ted in Table 2-1.
TABLE 2-1: COMMAND MAPPING
Command Mapping (MSb ... LSb) Data
Load Data 000010 0, dat a (14 ), 0
Read Data 000100 0, dat a (14 ), 0
Increment Address 000110
Begin programming 001000
End Programming 001110
Note: The clock must be disabled during in-circuit programming.
2001 Microchip Technology Inc. DS30557F-page 7
PIC12C5XX
2.4.1.1 Load Data
After receiving this command, the chip will load in a
14-bit data word when 16 cycles are applied, as
described previously. Because this is a 12-bit core, the
two MSbs of the data word are ignored. A timing dia-
gram for the load data command is shown in
Figure 5-1.
2.4.1.2 Read Data
After receiving this command, the chip will transmit
data bits out of the memory currentl y accessed, sta rting
with the se cond rising edge of the cl ock input. The GP0
pin will go into output mode on the second rising clock
edge, and it will revert back to input mode (hi-imped-
anc e) after the 16th rising edge. Becaus e this is a 12-
bit core, the two MSbs of the data are unu sed and read
as 0. A timing diagram of this command is shown in
Figure 5-2.
2.4.1.3 Increment Address
The PC is incremented when this command is
received. A timing diagram of this command is shown
in Figure 5-3.
2.4.1.4 Begin Programming
A load data command must be given before every
begin programming command. Programming of the
appropriate memory (test program memory or user pro-
gram memory) will begin after this command is
received and decoded. Programming should be per-
formed with a series of 100µs programming pulses. A
programming pulse is defined as the time between the
begin programming command and the end program-
ming comman d.
2.4.1.5 End Programming
After receiving this command, the chip stops program-
ming the memory (configuration program memory or
user program memory) that it was programming at the
time.
2.5 Programming Algorithm Requires
Variable VDD
The PIC12C5XX uses an intelligent algorithm. The
algorithm calls for program verification at VDDMIN, as
well as VDDMAX. Verification at VDDMIN guarantees
good erase margin. Verification at VDDMAX guaran-
tees good program margin.
The actual programming must be done with VDD in the
VDDP range (4.75 - 5.25V).
VDDP =VCC range required during programming.
VDDMIN = minimum operating VDD spec for the part.
VDDMAX = maximum ope rati ng VDD spec for the part.
Programmers must verify the PIC12C5XX at its speci-
fied VDDMAX and VDDMIN levels . Since Microchip may
introduce future versions of the PIC12C5XX with a
broader VDD range, it is best that these levels are user
selectable (defaults are ok).
Note: Any programmer not meeting these
requirements may only be classified as a
prototype or development programmer,
but not a production quality programmer.
PIC12C5XX
DS30557F-page 8 2001 Microchip Technology Inc.
3.0 CONFIGURATION WORD
The PIC12C5XX family members have several config-
urati on bit s. Thes e bit s can be prog ramme d (reads 0),
or left unprogrammed (reads 1), to select various
device conf igu rations . Figu re 3-1 provide s an overview
of configuration bits.
FIGURE 3-1: CONFIGURATION WORD BIT MAP
Bit
Number: 11 10 9 8 7 65 4 3 2 1 0
PIC12C5XX ————— MCLRE CP WDTE FOSC1 FOSC0
bit 11-5: Reserved: Write as 0 for PIC12C5XX
bit 4: MCLRE: Master Clear Enable bit
1 = MCLR pin enabled
0 = MCLR internally connected to VDD
bit 3: CP: Code Protect Enable bit
1 = Code memory unprotected
0 = Code memory protected
bit 2: WDTE, WDT Enable bit
1 = WDT enabled
0 = WDT disabled
bit 1-0: FOSC<1:0>, Oscillator Selection Bit
11 = External RC oscillator
10 = Internal RC oscillator
01 = XT oscillator
00 = LP oscillator
2001 Microchip Technology Inc. DS30557F-page 9
PIC12C5XX
4.0 CODE PROTECTION
The progra m code writte n into the EPROM ca n be pr o-
tected by writing to the CP bit of the configuration word.
In PIC12C5XX, it is still possible to program and read
locations 0x000 through 0x03F, after code protection.
Once code protection is enabled, all protected seg-
ments read '0's (or garbage values) and are pre-
vented from further programming. All unprotected
segments, including ID locations and configuration
word, read normally. These locations can be pro-
grammed.
Once code protection is enabled, all code protected
locations read 0s. Al l un prot ected segments , inc lu din g
the intern al oscill ator calib ration val ue, ID, and configu-
ration word read as normal.
4.1 Embedding Configurati on Word and ID Information in the HEX File
TABLE 4-1: CODE PROTECTION
PIC12C508
To code protect:
(CP enable pattern: XXXXXXXX0XXX)
PIC12C508A
To code protect:
(CP enable pattern: XXXXXXXX0XXX)
PIC12C509
To code protect:
(CP enable pattern: XXXXXXXX0XXX)
To allow po rtabili ty of code, the pro grammer is requi red to read the conf iguration w ord and ID locati ons from the HEX
file when loading the HEX file. If configura tion word information was not present in the HEX file, then a simpl e warning
message may be is sued . Similar ly, while savi ng a HEX file, configu rati on word and ID info rmatio n must be includ ed.
An option to not include this information may be provided.
Microchip Technology Inc. feels strongly that this feature is important for the benefit of the end customer.
Program Memory Segment R/W in Protected Mode R/W in Unprotected Mode
Configuration Word (0xFFF) Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x00:0x3F] Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x40:0x1FF] Read Disabled (all 0s), Write Disabled Read Enabled, Write Enabled
ID Locations (0x200 : 0x203) Read Enabled, Write Enabled Read Enabled, Write Enabled
Program Memory Segment R/W in Protected Mode R/W in Unprotected Mode
Configuration Word (0xFFF) Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x00:0x3F] Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x40:0x1FE] Read Disabled (all 0s), Write Disabled Read Enabled, Write Enabled
0x1FF Oscillator Calibration Value Read Enabled, Write Enabled Read Enabled, Write Enabled
ID Locations (0x200 : 0x203) Read Enabled, Write Enabled Read Enabled, Write Enabled
Program Memory Segment R/W in Protected Mode R/W in Unprotected Mode
Configuration Word (0xFFF) Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x00:0x3F] Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x40:0x3FF] Read Disabled (all 0s), Write Disabled Read Enabled, Write Enabled
ID Locations (0x400 : 0x403) Read Enabled, Write Enabled Read Enabled, Write Enabled
PIC12C5XX
DS30557F-page 10 2001 Microchip Technology Inc.
PIC12C509A
To code protect:
(CP enable pattern: XXXXXXXX0XXX)
PIC12CE518
To code protect:
(CP enable pattern: XXXXXXXX0XXX)
PIC12CE519
To code protect:
(CP enable pattern: XXXXXXXX0XXX)
Program Memory Segment R/W in Protected Mode R/W in Unprotected Mode
Configuration Word (0xFFF) Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x00:0x3F] Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x40:0x3FE] Read Disabled (all 0s), Write Disabled Read Enabled, Write Enabled
0x3FF Oscillator Calibration Value Read Enabled, Write Enabled Read Enabled, Write Enabled
ID Locations (0x400 : 0x403) Read Enabled, Write Enabled Read Enabled, Write Enabled
Program Memory Segment R/W in Protected Mode R/W in Unprotected Mode
Configuration Word (0xFFF) Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x00:0x3F] Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x40:0x1FE] Read Disabled (all 0s), Write Disabled Read Enabled, Write Enabled
0x1FF Oscillator Calibration Value Read Enabled, Write Enabled Read Enabled, Write Enabled
ID Locations (0x200 : 0x203) Read Enabled, Write Enabled Read Enabled, Write Enabled
Program Memory Segment R/W in Protected Mode R/W in Unprotected Mode
Configuration Word (0xFFF) Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x00:0x3F] Read Enabled, Write Enabled Read Enabled, Write Enabled
[0x40:0x3FF] Read Disabled (all 0s), Write Disabled Read Enabled, Write Enabled
ID Locations (0x400 : 0x403) Read Enabled, Write Enabled Read Enabled, Write Enabled
2001 Microchip Technology Inc. DS30557F-page 11
PIC12C5XX
4.2 Checksum
4.2.1 CHE CKSUM CAL CULATIONS
Checksum is calculated by reading the contents of the
PIC12C5XX memory locations and adding up the
opcode s u p to th e max imum use r addres sabl e loc ation
(not inc ludin g the l ast l ocatio n whic h is re serve d for th e
oscillator calibration value), e.g., 0x1FE for the
PIC12C508/CE518. Any carry bits exceeding 16-bits
are neglected. Finally, the con figuration word (appropri-
ately masked) is added to the checksum. Checksum
computation for each member of the PIC12C5XX
family is shown in Table 4-2.
The checksum is calc ulated by summing the following:
The contents of all program memory locations
The configuration word, appropriately masked
Masked ID locations (when applicable)
The Least Significant 16-bits of this sum are the
checksum.
The following table describes how to calculate the
checksum for each device. Note that the checksum cal-
culation differs depending on the code protect setting.
Since the program memory locations read out differ-
ently depending on the code protect setting, the table
describ es how t o m ani pu late the ac tua l program mem-
ory values to simulate the values that would be read
from a p rotecte d dev ice. W hen c alculati ng a check sum
by reading a device, the entire program memory can
simply be read and summed. The configuration word
and ID locations can always be read.
The oscillator calibration value location is not used in
the above checksums.
TABLE 4-2: CHECKSUM COMPUTATION
Device Code
Protect Checksum* Blank
Value
0x723 at
0 and Max
Address
PIC12C508 OFF
ON SUM[0x000:0 x1FE ] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS) EE20
EDF7 DC68
D363
PIC12C508A OFF
ON SUM[0x000:0 x1FE ] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS) EE20
EDF7 DC68
D363
PIC12C509 OFF
ON SUM[0x000:0 x3FE ] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS) EC20
EBF7 DA68
D163
PIC12C509A OFF
ON SUM[0x000:0 x3FE ] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS) EC20
EBF7 DA68
D163
PIC12CE518 OFF
ON SUM[0x000:0 x1FE ] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS) EE20
EDF7 DC68
D363
PIC12CE519 OFF
ON SUM[0x000:0 x3FE ] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS) EC20
EBF7 DA68
D163
Legend: CFGW = Configuration Word
SUM[a:b] = [Sum of locations a through b inclusive]
SUM_ID = ID locations masked by 0xF then made into a 16-bit value with ID0 as the most significant nibble.
For example,
ID0 = 0x12, ID1 = 0x37, ID2 = 0x4, ID3 = 0x26, then SUM_ID = 0x2746.
*Checksum = [Sum of all the individual expressions] MODULO [0xFFFF]
+ = Addition
& = Bitwise AND
PIC12C5XX
DS30557F-page 12 2001 Microchip Technology Inc.
5.0 PR OGRAM /VER IFY MODE ELECTRICAL CHARACTERISTICS
TABLE 5-1: AC/DC CHARACTERISTICS
TIMING REQUIREMENTS FOR PROGRAM/VERIFY MODE
Standard Operating Conditions
Operating Temperature: +10°C TA +40°C, unless otherwise stated, (20°C recommended)
Operating Voltage: 4.5V VDD 5.5V, un less otherwise stated.
Parameter
No. Sym. Characteristic Min. Typ. Max. Units Conditions
General
PD1 VDDP Supply voltage during progr amming 4.75 5.0 5.25 V
PD2 IDDP Supply current (from VDD)
during programming 20 mA
PD3 VDDV Supply voltage du ring verify VDDMIN VDDMAX V(Note 1)
PD4 VIHH1 Volta ge on MCLR /VPP during
programming 12.75 13.25 V (Note 2)
PD5 VIHH2 Volta ge on MCLR /VPP during verify VDD + 4.0 13.5
PD6 IPP Programming supply current
(from VPP)50 mA
PD9 VIH1 (GP1, GP0) input high level 0.8 VDD V Schmitt Trigger input
PD8 VIL1 (GP1, GP0) input low level 0.2 VDD V Schmitt Trigger input
Serial Program Verify
P1 TRMCLR/VPP rise time (VSS to VHH) 8.0 µs
P2 Tf MCLR fall time 8.0 µs
P3 Tset1 Data in setup time before clock 100 ns
P4 Thld1 Data in hold time after clock 100 ns
P5 Tdly1 Data input not driven to next clock
input (delay required between com-
mand/da ta or command/ com m and )
1.0 µs
P6 Tdly2 Delay between clock to clock of
next command or data 1.0 µs
P7 Tdly3 Clock to date out valid
(during read data) 200 ns
P8 Thld0 Hold time after MCLR 2µs
Note 1: Program must be verified at the minimum and maximum VDD limits for the pa rt.
2: VIHH must be greater than VDD + 4.5V to stay in Programming/Verify mode.
2001 Microchip Technology Inc. DS30557F-page 13
PIC12C5XX
FIGURE 5-1: LOAD DATA COMMAND (PROGRAM/VERIFY)
FIGURE 5-2: READ DATA COMMAND (PROGRAM/VERIFY)
FIGURE 5-3: INCREMENT ADDRESS COMMAND (PROGRAM/VERIFY)
}
}
}
}
100ns
min.
P4
P3
0
0
0
1µs min.
P5
1µs min.
P6
0
15
5432
1
6
5
Program/Verify Mode
0
43
0
100ns
P4
1
100ns
min.
P3
RESET
21
100ns
P8
VIHH
GP1
(Clock)
GP0
(Data) 0
MCLR/VPP
}
00
1µs min.
P5
1µs min.
P6 15
5432
1
6
5
Program/Verify Mode
0
43
0100ns
P4
1
100ns
min.
P3
RESET
21
100ns
P8
VIHH
GP1
(Clock)
GP0
(Data) 0
MCLR/VPP
GP0 = Output GP0
Input
P7
}
}
}
0
000
00
11
12345 61
2
100ns
min
P3 P4
P6
1µs min. Next Command
P5
1µs min.
VIHH
MCLR/VPP
GP1
(Clock)
(Data)
GP0
RESET Program/Verify Mode
PIC12C5XX
DS30557F-page 14 2001 Microchip Technology Inc.
NOTES:
DS30557F - page 15 2001 Microchip Technology Inc.
All rights reserved. Copyright © 2001, Microchip Tech nology
Incorporated, USA. Information contained in this publication
regarding device applications and the like is i ntended t hrough
suggestion only and may be superseded by updates. No rep-
resentation or warranty is given and no liability is assumed by
Microchip Technology Incor porated with respect to the accu-
racy or use of such information, or infringement of patents or
other intellectual property rights aris ing fr om such use or oth-
erwise. Use of Microc hips products as crit ical com ponents in
life support systems is not authorized except with express
written approval by Microchip. No licenses are conveyed,
implicitly or otherwise, under any intellectual property rights.
The Microchip logo and name are registered trademarks of
Microchip Technology Inc. in the U.S. A. and other countries.
All rights reserved. All other trademarks mentioned herein are
the property of their respective companies. No licenses are
conveyed, implicitly or otherwise, under any intellectual prop-
erty rights.
Trademarks
The Microchip name, logo, PIC, PICmicro, PICMASTER, PIC-
START, PRO MATE, KEELOQ, SEEVAL, MPLAB and The
Embedded Control Solutions Company are registered trade-
marks of Microchip Technology Incorporated in the U.S.A. and
other countries.
Total Endurance, IC SP, In-Circ uit Serial Programming, Filter-
Lab, MXDEV, microID, FlexROM, fuzzyLAB, MPASM,
MPLINK, MPLIB, PICDEM, ICEPIC, Migratable Memory,
FanSense, ECONOMONITOR and SelectMode are trade-
marks of Microchip Technology Incorporat ed in the U.S.A.
Serialized Quick Term Programming (SQTP) is a service mark
of Microchip Technology Incorporated in the U.S.A.
All other trademarks mentioned herein are property of their
respective companies.
© 2001, Microchip Technology Incorporated, Printed in the
U.S.A., All Rights Reserved.
Microchip received QS-9000 quality system
certification for its worldwide headquarters,
design and wafer fabrication facilities in
Chandler and Tempe, Arizona in July 1999. The
Company’s quality system processes and
procedures are QS-9000 compliant for its
PICmicro® 8-bit MCUs, KEELOQ® code ho pp in g
devices, Serial EEPROMs and microperipheral
products. In addition, Microchips quality
system for the design and manufacture of
development systems is ISO 9001 certified.
Information contained in this publication regarding device applications and the like is intended through suggestion only and may be superseded by
update s. It i s your respo nsibilit y to en sure t hat you r app licatio n mee ts with y our sp ecifica tions. N o re presen tation or warra nty is given and n o liability is
assumed by M icroc hip Techno logy In corpor ated with respe ct to the a ccuracy or u se of such in format ion, or infringem ent of paten ts or other intell ectual
property rights arising from such use or otherwise. Use of Microchips products as critical components in life support systems is not authorized except with
express written approval by Microchip. No licenses are conveyed, implicitly or otherwise, except as maybe explicitly expressed herein, under any intellec-
tual p roperty rights. The M icrochip logo an d name are reg istered tradema rks of Microchip Technology In c. in the U.S.A. and other countries. All ri ghts
reserved. All other trademarks mentioned herein are the property of their respective companies.
DS30557F-page 16 2001 Microchip Technology Inc.
All rights reserved. © 2001 Microchip Technology Incorporated. Printed in the USA. 2/01 Printed on recycled paper.
AMERICAS
Corporate Office
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200 Fax: 480-792-7277
Technical Support: 480-792-7627
Web Address: http://ww w.microchip .com
Rocky Mountain
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7966 Fax: 480-792-7456
Atlanta
500 Sugar Mill Road, Suite 200B
Atlanta, GA 30350
Tel: 770 -6 40- 0034 Fax: 770-640 -03 07
Austin
Analog Product Sales
8303 MoPac Expressway North
Suite A-201
Austin, TX 78759
Tel: 512 -3 45- 2030 Fax: 512-345 -60 85
Boston
2 Lan Drive, Suite 120
Westford, MA 01886
Tel: 978 -6 92- 3848 Fax: 978-692 -38 21
Boston
Analog Product Sales
Unit A-8-1 Millbrook Tarry Condominium
97 Lowell Road
Concord, MA 01742
Tel: 978 -3 71- 6400 Fax: 978-371 -00 50
Chicago
333 Pierce Road, Suite 180
Itasca, IL 60143
Tel: 630-285-0071 Fax: 630-285-0075
Dallas
4570 Westgrove Drive, Suite 160
Addison, TX 7500 1
Tel: 972 -8 18- 7423 Fax: 972-818 -29 24
Dayton
Tw o Presti ge Pla ce, Su ite 130
Miamisburg, OH 45342
Tel: 937 -2 91- 1654 Fax: 937-291 -91 75
Detroit
Tri-Atria Office Building
32255 Northwestern Highway, Suite 190
Farmington Hills, MI 48334
Tel: 248-538-2250 Fax: 248-538-2260
Los A n ge les
18201 Von Karman, Suite 1090
Irvine, CA 92612
Tel: 949 -2 63- 1888 Fax: 949-263 -13 38
Mountain View
Analog Product Sales
1300 Terra Bella Avenue
Mountain View, CA 94043-1836
Tel: 650 -9 68- 9241 Fax: 650-967 -15 90
New Yo rk
150 Motor Parkway, Suite 202
Hauppauge, NY 11788
Tel: 631-273-5305 Fax: 631-273-5335
San Jose
Microchip Technology Inc.
2107 North First Street, Suite 590
San Jose, CA 95131
Tel: 408-436-7950 Fax: 408-436-7955
Toronto
6285 Northam Drive, Suite 108
Mississ auga, Ontario L4V 1X5, Canada
Tel: 905-673-0699 Fax: 905-673-6509
ASIA/PACIFIC
Australia
Microchip Technology Australia Pty Ltd
Suite 22, 41 Rawson Street
Epping 212 1, NSW
Australia
Tel: 61-2-9868-6733 Fax: 61-2-9868-6755
China - Be ijing
Microchip Technology Beijing Office
Unit 915
New China Hong Kong Manhattan Bldg.
No. 6 Chaoyangmen Beidajie
Beijing, 100027, No. China
Tel: 86-10-85282100 Fax: 86-10-85282104
China - Shanghai
Microchip Technology Shanghai Office
Room 701, Bldg. B
Far East International Plaz a
No. 317 Xian Xia Road
Shanghai, 200051
Tel: 86-21-6275-5700 Fax: 86-21-6275-5060
Hong Kong
Microchip Asia Pacific
RM 2101, Tower 2, Metroplaza
223 Hing Fong Road
Kwai Fong, N.T., Hong Kong
Tel: 852-2401-1200 Fax: 852-2401-3431
India
Microchip Technology Inc.
India Liaiso n Office
Divyasree Chambers
1 Floor, Wing A (A3/A4)
No. 11, OShaugnessey Road
Bangalore, 560 025, India
Tel: 91-80-2290061 Fax: 91-80-2290062
Japan
Microchip Technology Intl. Inc.
Benex S-1 6F
3-18-20, Shinyokohama
Kohoku -Ku, Yok oha ma -shi
Kanaga wa, 222 -0 033 , Japan
Tel: 81-45-471- 6166 Fax: 81-45-471-6122
ASIA/PACIFIC (continued)
Korea
Microc hip Technolo gy Korea
168-1, You ng bo Bld g. 3 Floor
Samsung-Dong, Kangnam-Ku
Seoul, Ko re a
Tel: 82-2-554-7200 Fax: 82-2-558-5934
Singapore
Microchip Technology Singapore Pte Ltd.
200 Midd le Ro ad
#07-02 Prime Centre
Singapore, 188980
Tel: 65 -334-8870 Fax: 65-334-8850
Taiwan
Microc hip Technolo gy Taiwan
11F-3, No. 207
Tung Hua North Road
Taipei, 105, Taiwan
Tel: 886-2-2717-7175 Fax: 886-2-2545-0139
EUROPE
Denmark
Microchip Technology Denmark ApS
Regus Business Centre
Lautrup hoj 1-3
Ballerup DK-2750 Denmark
Tel: 45 4420 9895 Fax: 45 4420 9910
France
Arizona Microchip Technology SARL
Parc dActivite du Moulin de Massy
43 Rue du Saule Trapu
Batiment A - ler Et age
91300 Massy, France
Tel: 33-1- 69-53-63-20 Fax: 33-1-69-30-90-79
Germany
Arizona Microchip Technology GmbH
Gustav-Heinemann Ring 125
D-81739 Munich, Germany
Tel: 49-89-627-144 0 Fax: 49-89-627-144-44
Germany
Analog Product Sales
Lochhamer Strasse 13
D-82152 Martinsried, Germany
Tel: 49-89-895650-0 Fax: 49-89-895650-22
Italy
Arizona Microchip Technology SRL
Centro Direzionale Colleoni
Palazzo Taurus 1 V. Le Colleoni 1
20041 Agrate Brianza
Milan, Italy
Tel: 39-039-65791-1 Fax: 39-039-6899883
United Kingdom
Arizona Microchip Technology Ltd.
505 Eskdale Road
Winnersh Triangle
Wokingham
Berksh ire, E ngla nd RG 41 5TU
Tel: 44 118 921 5869 Fax: 44-118 921-5820
01/30/01
WORLDWIDE SALES AND SERVICE