© Koninklijke Philips Electronics N.V. 2005. All rights reserved.
User manual
Rev. 03 — 7 June 2005
121 of 139
Philips Semiconductors
UM10119
P89LPC938 User manual
The factory pre-programmed boot loader can be erased by the user. Users who wish to
use this loader should take cautions to avoid erasing the last 1 kB sector on the device.
Instead, the page erase function can be used to erase the eight 64-byte pages located in
this sector. A custom boot loader can be written with the Boot Vector set to the custom
boot loader, if desired.
19.9 Hardware activation of Boot Loader
The boot loader can also be executed by forcing the device into ISP mode during a
power-on sequence (see
). This is accomplished by powering up the device with
the reset pin initially held low and holding the pin low for a fixed time after V
DD
rises to its
normal operating value. This is followed by three, and only three, properly timed low-going
pulses. Fewer or more than three pulses will result in the device not entering ISP mode.
Timing specifications may be found in the data sheet for this device.
This has the same effect as having a non-zero status bit. This allows an application to be
built that will normally execute the user code but can be manually forced into ISP
operation. If the factory default setting for the Boot Vector is changed, it will no longer point
to the factory pre-programmed ISP boot loader code. If this happens, the only way it is
possible to change the contents of the Boot Vector is through the parallel or ICP
programming method, provided that the end user application does not contain a
customized loader that provides for erasing and reprogramming of the Boot Vector and
Boot Status Bit. After programming the Flash, the status byte should be programmed to
zero in order to allow execution of the user’s application code beginning at address
0000H.
19.10 In-system programming (ISP)
In-System Programming is performed without removing the microcontroller from the
system. The In-System Programming facility consists of a series of internal hardware
resources coupled with internal firmware to facilitate remote programming of the
P89LPC938 through the serial port. This firmware is provided by Philips and embedded
within each P89LPC938 device. The Philips In-System Programming facility has made
in-circuit programming in an embedded application possible with a minimum of additional
expense in components and circuit board area. The ISP function uses five pins (V
DD
, V
SS
,
TXD, RXD, and RST). Only a small connector needs to be available to interface your
application to an external circuit in order to use this feature.
Table 111: Boot loader address and default Boot vector
Product
Flash size End
address
Signature bytes
Sector
size
Page
size
Pre-programmed
serial loader
Default Boot
vector
Mfg id Id 1
Id 2
P89LPC938
8 kB
×
8
1FFFh
15h
DDh
25h
1 kB
×
8
64
×
8
1E00h to 1FFFh
1Fh
Fig 51. Forcing ISP mode.
002aaa912
V
DD
RST
t
RL
t
VR
t
RH