2000 Microchip Technology Inc. DS30557E-page 1
PIC12C5XX
This document includes the programming
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 increasing design flexibility. This programming
specification applies to PIC12C5XX devices in all pack-
ages.
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 supplies 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-Circuit Serial Programming for PIC12C5XX OTP MCUs
PIC12C5XX
DS30557E-page 2 2000 Microchip Technology Inc.
2.0 PROGRAM MODE ENTRY
The program/verify test mode is entered by holding
pins DB0 and DB1 low while raising MCLR pin from VIL
to VIHH. Once in this test mode the user program mem-
ory and the test program memory can be accessed and
programmed in a serial fashion. The first selected
memory location is the fuses. GP0 and GP1 are
Schmitt trigger inputs in this mode.
Incrementing the PC once (using the increment
address command) selects location 0x000 of the regu-
lar program memory. Afterwards all other memory loca-
tions from 0x001-01FF (PIC12C508/CE518), 0x001-
03FF (PIC12C509/CE519) can be addressed by incre-
menting the PC.
If the program counter has reached the last user pro-
gram location and is incremented again, the on-chip
special EPROM area will be addressed. (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
Essentially, this technique includes the following steps:
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 pro-
gramming (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 location fails to program 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
programming, i.e., apply 11 times the number of
pulses that were required to program the loca-
tion. This will guarantee a solid programming
margin. The over programming should be made
software programmable for easy updates.
4. Program all locations.
5. Verify all locations (using speed verify mode) 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 volt-
age 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 approximately 100mA.
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
Microchip may release devices in the future with differ-
ent VDD ranges which make it necessary to have a pro-
grammable VDD.
It is important to verify an EPROM at the voltages
specified in this method to remain consistent with
Microchip's test screening. For example, a
PIC12C5XX specified for 4.5V to 5.5V should be
tested for proper programming 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) Number of over-programming pulses: should be
= (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 recommended.
The maximum number of programming attempts
should be limited to 8 per word.
After the first successful verify, the same location
should be over-programmed with 11X over-program-
ming.
Configuration Word: 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 programma-
ble VDD requirement and the verify at VDDmax
and VDDmin requirement may only be classi-
fied as prototype or development program-
mer but not a production programmer.
2000 Microchip Technology Inc. DS30557E-page 3
PIC12C5XX
FIGURE 2-1: PROGRAMMING METHOD FLOWCHART
N > 8?
Start
Blank Check
@ VDD = VDDmin
Pass?
Report Possible Erase Failure
Continue Programming
at users option
Program 1 Location
@ VPP = 13.0V to 13.25V
VDD = VDDP
N = N + 1
(N = # of program pulses)
Report Programming Failure
Increment PC to point 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.
Verify all locations
@ VDD = VDDmax
Pass? Report verify failure
@ VDDmax
Done
Ye s
No
Ye s
No
No
Ye s
No
Ye s
Ye s
Ye s
No
No
Now program
Configuration Word
Verify Configuration Word
@ VDDmax & VDDmin
PIC12C5XX
DS30557E-page 4 2000 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 Memory
(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
2000 Microchip Technology Inc. DS30557E-page 5
PIC12C5XX
2.3 Special Memory Locations
The highest address of program memory space is
reserved for the internal RC oscillator calibration value.
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 Locations area is only enabled if the device is in
programming/verify mode. Thus, in normal operation
mode only the memory location 0x000 to 0xNNN will be
accessed and the Program Counter will just roll over
from address 0xNNN to 0x000 when incremented.
The configuration word can only be accessed immedi-
ately after MCLR going from VIL to VHH. The Program
Counter will be set to all 1s upon MCLR =VIL. Thus,
it has the value 0xFFF when accessing the configura-
tion EPROM. Incrementing the Program Counter once
causes the Program Counter to roll over to all '0's.
Incrementing the Program Counter 4K times after reset
(MCLR = VIL) does not allow access to the configura-
tion 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 recommended
that the customer use 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 protection bit was 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
accessed and programmed in serial fashion. The mode
of operation is serial. GP0 and GP1 are Schmitt Trigger
inputs in this mode.
The sequence that enters the device into the program-
ming/verify mode places all other logic 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 other locations in PICmicro® MCU con-
figuration memory are reserved and
should not be programmed.
Note: The MCLR pin should be raised from VIL 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
DS30557E-page 6 2000 Microchip Technology Inc.
2.4.1 PROGRAM/VERIFY OPERATION
The GP1 pin 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 pin (GP1) is cycled six times. Each command bit
is latched on the falling edge of the clock with the least
significant bit (LSB) of the command being input first.
The data on pin GP0 is required to have a minimum
setup and hold time (see AC/DC specs) with respect to
the falling edge of the clock. Commands that have data
associated with them (read and load) are specified to
have a minimum delay of 1 µs between the command
and the data. After this delay the clock pin is cycled 16
times with the first cycle being 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-
ond cycle, and during a load operation the LSB will be
latched on the falling edge of the second cycle. A min-
imum 1 µs delay is also specified between consecutive
commands.
All commands 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 decoding of commands and 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 listed in Table .
TABLE 2-1: COMMAND MAPPING
Command Mapping (MSB ... LSB) Data
Load Data 000010 0, data(14), 0
Read Data 000100 0, data(14), 0
Increment Address 000110
Begin programming 001000
End Programming 001110
Note: The clock must be disabled during in-circuit programming.
2000 Microchip Technology Inc. DS30557E-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 currently accessed starting
with the second rising edge of the clock 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-
ance) after the 16th rising edge. Because this is a 12-
bit core, the two MSBs of the data are unused 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
program 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 command.
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.
VDD min. = minimum operating VDD spec for the part.
VDDmax = maximum operating 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
prototype or development programmer
but not a production quality programmer.
PIC12C5XX
DS30557E-page 8 2000 Microchip Technology Inc.
3.0 CONFIGURATION WORD
The PIC12C5XX family members have several config-
uration bits. These bits can be programmed (reads 0)
or left unprogrammed (reads 1) to select various
device configurations. Figure 3-1 provides an overview
of configuration bits.
FIGURE 3-1: CONFIGURATION WORD BIT MAP
Bit
Number: 11 10 9 8 7 654 321 0
PIC12C5XX ————— MCLRE CP WDTE FOSC1 FOSC0
bit 11-5:Reserved, '' write as '0' for PIC12C5XX
bit 4: MCLRE, Master Clear pin Enable Bit
0 = MCLR internally connected to Vdd
1 = MCLR pin enabled
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: ExtRC oscillator
10: IntRC oscillator
01: XT oscillator
00: LP oscillator
2000 Microchip Technology Inc. DS30557E-page 9
PIC12C5XX
4.0 CODE PROTECTION
The program code written into the EPROM can be pro-
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. All unprotected segments, including
the internal oscillator calibration value, ID, and configu-
ration word read as normal.
4.1 Embedding Configuration 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 portability of code, the programmer is required to read the configuration word and ID locations from the hex
file when loading the hex file. If configuration word information was not present in the hex file then a simple warning
message may be issued. Similarly, while saving a hex file, configuration word and ID information must be included.
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
DS30557E-page 10 2000 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
2000 Microchip Technology Inc. DS30557E-page 11
PIC12C5XX
4.2 Checksum
4.2.1 CHECKSUM CALCULATIONS
Checksum is calculated by reading the contents of the
PIC12C5XX memory locations and adding up the
opcodes up to the maximum user addressable location,
(not including the last location which is reserved for the
oscillator calibration value) e.g., 0x1FE for the
PIC12C508/CE518. Any carry bits exceeding 16-bits
are neglected. Finally, the configuration word (appropri-
ately masked) is added to the checksum. Checksum
computation for each member of the PIC12C5XX fam-
ily is shown in Table 4-2.
The checksum is calculated 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 is the check-
sum.
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
describes how to manipulate the actual program mem-
ory values to simulate the values that would be read
from a protected device. When calculating a checksum
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:0x1FE] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS)
EE20
EDF7
DC68
D363
PIC12C508A OFF
ON
SUM[0x000:0x1FE] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS)
EE20
EDF7
DC68
D363
PIC12C509 OFF
ON
SUM[0x000:0x3FE] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS)
EC20
EBF7
DA68
D163
PIC12C509A OFF
ON
SUM[0x000:0x3FE] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS)
EC20
EBF7
DA68
D163
PIC12CE518 OFF
ON
SUM[0x000:0x1FE] + CFGW & 0x01F
SUM[0x000:0x03F] + CFGW & 0x01F + SUM(IDS)
EE20
EDF7
DC68
D363
PIC12CE519 OFF
ON
SUM[0x000:0x3FE] + 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
DS30557E-page 12 2000 Microchip Technology Inc.
5.0 PROGRAM/VERIFY MODE ELECTRICAL CHARACTERISTICS
TABLE 5-1: AC/DC CHARACTERISTICS
TIMING REQUIREMENTS FOR PROGRAM/VERIFY MODE
Standard Operating Conditions
Operating Temperature: +10°C T
A +40°C, unless otherwise stated, (20°C recommended)
Operating Voltage: 4.5V VDD 5.5V, unless otherwise stated.
Parameter
No. Sym. Characteristic Min. Typ. Max. Units Conditions
General
PD1 VDDP Supply voltage during programming 4.75 5.0 5.25 V
PD2 IDDP Supply current (from VDD)
during programming
20 mA
PD3 VDDV Supply voltage during verify VDDmin VDDmax V Note 1
PD4 VIHH1 Voltage on MCLR/VPP during
programming
12.75 13.25 V Note 2
PD5 VIHH2 Voltage 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/data or command/command)
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 part.
2: VIHH must be greater than VDD + 4.5V to stay in programming/verify mode.
2000 Microchip Technology Inc. DS30557E-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
1ms min.
P5
1ms 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
1ms min.
P5
1ms min.
P6
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
GP0 = output GP0
input
P7
}
}
}
0
000
00
11
12345 61
2
100ns
min
P3 P4
P6
1ms min. Next Command
P5
1ms min.
VIHH
MCLR/VPP
GP1
(CLOCK)
(DATA)
GP0
Reset
Program/Verify Mode
PIC12C5XX
DS30557E-page 14 2000 Microchip Technology Inc.
NOTES:
2000 Microchip Technology Inc. DS30557E-page 15
PIC12C5XX
NOTES:
Information contained in this publication regarding device applications and the like is intended through suggestion only and may be superseded by updates.
It is your responsibility to ensure that your application meets with your specifications. No representation or warranty is given and no liability is assumed by
Microchip Technology Incorporated with respect to the accuracy or use of such information, or infringement of patents or other intellectual property rights
arising from such use or otherwise. Use of Microchip’s 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 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.
DS30557E-pa
g
e 16
2000 Microchip Technology Inc.
All rights reserved. © 2000 Microchip Technology Incorporated. Printed in the USA. 5/00 Printed on recycled paper.
AMERICAS
Corporate Office
Microchip Technology Inc.
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-786-7200 Fax: 480-786-7277
Technical Support: 480-786-7627
Web Address: http://www.microchip.com
Atlanta
Microchip Technology Inc.
500 Sugar Mill Road, Suite 200B
Atlanta, GA 30350
Tel: 770-640-0034 Fax: 770-640-0307
Boston
Microchip Technology Inc.
2 LAN Drive, Suite 120
Westford, MA 01886
Tel: 508-480-9990 Fax: 508-480-8575
Chicago
Microchip Technology Inc.
333 Pierce Road, Suite 180
Itasca, IL 60143
Tel: 630-285-0071 Fax: 630-285-0075
Dallas
Microchip Technology Inc.
4570 Westgrove Drive, Suite 160
Addison, TX 75001
Tel: 972-818-7423 Fax: 972-818-2924
Dayton
Microchip Technology Inc.
Two Prestige Place, Suite 150
Miamisburg, OH 45342
Tel: 937-291-1654 Fax: 937-291-9175
Detroit
Microchip Technology Inc.
Tri-Atria Office Building
32255 Northwestern Highway, Suite 190
Farmington Hills, MI 48334
Tel: 248-538-2250 Fax: 248-538-2260
Los Angeles
Microchip Technology Inc.
18201 Von Karman, Suite 1090
Irvine, CA 92612
Tel: 949-263-1888 Fax: 949-263-1338
New York
Microchip Technology Inc.
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
AMERICAS (continued)
Toronto
Microchip Technology Inc.
5925 Airport Road, Suite 200
Mississauga, Ontario L4V 1W1, Canada
Tel: 905-405-6279 Fax: 905-405-6253
ASIA/PACIFIC
China - Beijing
Microchip Technology, Beijing
Unit 915, 6 Chaoyangmen Bei Dajie
Dong Erhuan Road, Dongcheng District
New China Hong Kong Manhattan Building
Beijing, 100027, P.R.C.
Tel: 86-10-85282100 Fax: 86-10-85282104
China - Shanghai
Microchip Technology
Unit B701, Far East International Plaza,
No. 317, Xianxia Road
Shanghai, 200051, P.R.C.
Tel: 86-21-6275-5700 Fax: 86-21-6275-5060
Hong Kong
Microchip Asia Pacific
Unit 2101, Tower 2
Metroplaza
223 Hing Fong Road
Kwai Fong, N.T., Hong Kong
Tel: 852-2-401-1200 Fax: 852-2-401-3431
India
Microchip Technology Inc.
India Liaison Office
No. 6, Legacy, Convent Road
Bangalore, 560 025, India
Tel: 91-80-229-0061 Fax: 91-80-229-0062
Japan
Microchip Technology Intl. Inc.
Benex S-1 6F
3-18-20, Shinyokohama
Kohoku-Ku, Yokohama-shi
Kanagawa, 222-0033, Japan
Tel: 81-45-471- 6166 Fax: 81-45-471-6122
Korea
Microchip Technology Korea
168-1, Youngbo Bldg. 3 Floor
Samsung-Dong, Kangnam-Ku
Seoul, Korea
Tel: 82-2-554-7200 Fax: 82-2-558-5934
ASIA/PACIFIC (continued)
Singapore
Microchip Technology Singapore Pte Ltd.
200 Middle Road
#07-02 Prime Centre
Singapore, 188980
Tel: 65-334-8870 Fax: 65-334-8850
Taiwan
Microchip Technology Taiwan
10F-1C 207
Tung Hua North Road
Tai pei , Ta iwa n
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 Etage
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 München, Germany
Tel: 49-89-627-144 0 Fax: 49-89-627-144-44
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
Berkshire, England RG41 5TU
Tel: 44 118 921 5858 Fax: 44-118 921-5835
05/16/00
WORLDWIDE SALES AND SERVICE
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 hopping
devices, Serial EEPROMs and microperipheral
products. In addition, Microchips quality
system for the design and manufacture of
development systems is ISO 9001 certified.