PIC16F818/819
12.18 Low-Voltage ICSP Programming
Note 1: The High-Voltage Programming mode is
always available, regardless of the state
of the LVP bit, by applying VIHH to the
MCLR pin.
The LVP bit of the Configuration Word register enables
Low-Voltage ICSP Programming. This mode allows the
microcontroller to be programmed via ICSP using a
VDD source in the operating voltage range. This only
means that VPP does not have to be brought to VIHH but
can instead be left at the normal operating voltage. In
this mode, the RB3/PGM pin is dedicated to the
programming function and ceases to be a general
purpose I/O pin.
2: While in Low-Voltage ICSP mode
(LVP = 1), the RB3 pin can no longer be
used as a general purpose I/O pin.
3: When using Low-Voltage ICSP Program-
ming (LVP) and the pull-ups on PORTB
are enabled, bit 3 in the TRISB register
must be cleared to disable the pull-up on
RB3 and ensure the proper operation of
the device.
If Low-Voltage Programming mode is not used, the LVP
bit can be programmed to a ‘0’ and RB3/PGM becomes
a digital I/O pin. However, the LVP bit may only be
programmed when Programming mode is entered with
VIHH on MCLR. The LVP bit can only be changed when
using high voltage on MCLR.
4: RB3 should not be allowed to float if LVP
is enabled. An external pull-down device
should be used to default the device to
normal operating mode. If RB3 floats
high, the PIC16F818/819 device will
enter Programming mode.
It should be noted that once the LVP bit is programmed
to ‘0’, only the High-Voltage Programming mode is
available and only this mode can be used to program
the device.
5: LVP mode is enabled by default on all
devices shipped from Microchip. It can be
disabled by clearing the LVP bit in the
Configuration Word register.
When using Low-Voltage ICSP, the part must be
supplied at 4.5V to 5.5V if a bulk erase will be executed.
This includes reprogramming of the code-protect bits
from an ON state to an OFF state. For all other cases of
Low-Voltage ICSP, the part may be programmed at the
normal operating voltage. This means calibration values,
unique user IDs or user code can be reprogrammed or
added.
6: Disabling LVP will provide maximum
compatibility to other PIC16CXXX
devices.
The following LVP steps assume the LVP bit is set in the
Configuration Word register.
1. Apply VDD to the VDD pin.
2. Drive MCLR low.
3. Apply VDD to the RB3/PGM pin.
4. Apply VDD to the MCLR pin.
5. Follow with the associated programming steps.
DS39598E-page 102
2004 Microchip Technology Inc.