Specifications

2004 Microchip Technology Inc. Preliminary DS40044B-page 109
PIC16F627A/628A/648A
14.11 In-Circuit Serial Programming
The PIC16F627A/628A/648A 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 manu-
facture 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
(VPP) pin from VIL to VIHH (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 (DS41196).
A typical In-Circuit Serial Programming connection is
shown in Figure 14-18.
FIGURE 14-18: TYPICAL IN-CIRCUIT
SERIAL PROGRAMMING
CONNECTION
14.12 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 should be programmed to a '0' so that 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 VIHH 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, only high voltage Programming mode can be used
to program the device.
External
Connector
Signals
To Norm al
Connections
To Norm al
Connections
PIC16F627A/628A/648A
V
DD
VSS
RA5/MCLR/VPP
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
operations.