In-System Programming (Isp); Using The In-System Programming - Philips P89LPC920 User Manual

80c51 8-bit microcontroller with two-clock core
Table of Contents

Advertisement

Philips Semiconductors
User's Manual - Preliminary -
P89LPC920/921/922
FLASH MEMORY
VDD
t
t
RH
VR
RST
t
RL
Figure 15-4: Forcing ISP Mode

In-System Programming (ISP)

In-System Programming is performed without removing the microcontroller from the system. The In-System Programming facil-
ity consists of a series of internal hardware resources coupled with internal firmware to facilitate remote programming of the
P89LPC920/921/922 through the serial port. This firmware is provided by Philips and embedded within each P89LPC920/921/
922 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 (Vdd, Vss, 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.

Using the In-System Programming

The ISP feature allows for a wide range of baud rates to be used in your application, independent of the oscillator frequency. It
is also adaptable to a wide range of oscillator frequencies. This is accomplished by measuring the bit-time of a single bit in a
received character. This information is then used to program the baud rate in terms of timer counts based on the oscillator fre-
quency. The ISP feature requires that an initial character (an uppercase U) be sent to the P89LPC920/921/922 to establish the
baud rate. The ISP firmware provides auto-echo of received characters. Once baud rate initialization has been performed, the
ISP firmware will only accept Intel Hex-type records. Intel Hex records consist of ASCII characters used to represent hexadeci-
mal values and are summarized below:
:NNAAAARRDD..DDCC<crlf>
In the Intel Hex record, the "NN" represents the number of data bytes in the record. The P89LPC920/921/922 will accept up to
64 (40H) data bytes. The "AAAA" string represents the address of the first byte in the record. If there are zero bytes in the
record, this field is often set to 0000. The "RR" string indicates the record type. A record type of "00" is a data record. A record
type of "01" indicates the end-of-file mark. In this application, additional record types will be added to indicate either commands
or data for the ISP facility. The maximum number of data bytes in a record is limited to 64 (decimal). ISP commands are sum-
marized in Table 15-2 . As a record is received by the P89LPC920/921/922, the information in the record is stored internally and
a checksum calculation is performed. The operation indicated by the record type is not performed until the entire record has
been received. Should an error occur in the checksum, the P89LPC920/921/922 will send an "X" out the serial port indicating a
checksum error. If the checksum calculation is found to match the checksum in the record, then the command will be executed.
In most cases, successful reception of the record will be indicated by transmitting a "." character out the serial port
99
2003 Dec 8

Advertisement

Table of Contents
loading

This manual is also suitable for:

P89lpc921P89lpc922

Table of Contents