PIC16F62X
DS40300C-page 106
Preliminary
2003 Microchip Technology Inc.
14.12 In-Circuit Serial Programming
The PIC16F62X microcontrollers can be serially
programmed while in the end application circuit. This is
simply done with two lines for clock and data, and three
other lines for power, ground, and the programming
voltage. This allows customers to manufacture boards
with unprogrammed devices, and then program the
microcontroller just before shipping the product. This
also allows the most recent firmware, or a custom
firmware to be programmed.
The device is placed into a Program/Verify mode by
holding the RB6 and RB7 pins low while raising the
MCLR (V
PP
) pin from V
IL
to V
IHH
(see programming
specification). RB6 becomes the programming clock
and RB7 becomes the programming data. Both RB6
and RB7 are Schmitt Trigger inputs in this mode.
After RESET, to place the device into Programming/
Verify mode, the program counter (PC) is at location
00h. A 6-bit command is then supplied to the device.
Depending on the command, 14 bits of program data
are then supplied to or from the device, depending if
the command was a load or a read. For complete
details of serial programming, please refer to the
Programming Specifications.
A typical in-circuit serial programming connection is
shown in Figure 14-18.
FIGURE 14-18:
TYPICAL IN-CIRCUIT
SERIAL PROGRAMMING
CONNECTION
14.13 Low Voltage Programming
The LVP bit of the configuration word, enables the low
voltage programming. This mode allows the microcon-
troller to be programmed via ICSP using only a 5V
source. This mode removes the requirement of V
IHH
to
be placed on the MCLR pin. The LVP bit is normally
erased to '1', which enables the low voltage program-
ming. In this mode, the RB4/PGM pin is dedicated to
the programming function and ceases to be a general
purpose I/O pin. The device will enter Programming
mode when a '1' is placed on the RB4/PGM pin. The
HV Programming mode is still available by placing V
IHH
on the MCLR pin.
If Low voltage Programming mode is not used, the LVP
bit can be programmed to a '0', and RB4/PGM
becomes a digital I/O pin. To program the device, V
IHH
must be placed onto MCLR during programming. The
LVP bit may only be programmed when programming
is entered with V
IHH
on MCLR. The LVP bit cannot be
programmed when programming is entered with RB4/
PGM.
It should be noted, that once the LVP bit is programmed
to 0, High voltage Programming mode can be used to
program the device.
External
Connector
Signals
To Normal
Connections
To Normal
Connections
PIC16F62X
V
DD
V
SS
RA5/MCLR/V
PP
RB6/PGC
RB7/PGD
+5V
0V
V
PP
CLK
Data I/O
V
DD
Note 1:
While in this mode, the RB4 pin can no
longer be used as a general purpose I/O
pin.
2:
V
DD
must be 5.0V +10% during erase/
program operations while in low voltage
Programming mode.