[ Pobierz całość w formacie PDF ]
string of bytes can be received. Xon and Xoff handshake
set to logic 1 by hardware and program execution starts at
codes are used to control the serial transfer.
0000H of the Boot ROM. P3.0 (RXD) and P3.1 (TXD) form
At the end of the programming a message that indicates a
the serial RS232 interface.
successful or not successful programming will be returned
The receive and transmit channel have the same baud
over the RS232 interface channel. If the programming was
rate. The boot routine is totally in software without the use
successful then the user program can be started up at
of timers or UART. It inputs the Intel Hex Object Format.
0000H in the FEEPROM by a reset for user mode (EA =
The baud rate will be selected automatically after
HIGH, PSEN not affected). If the programming was not
reception of the first character (:) of the object file. No other
successful the boot program halts and a retry can be
characters are allowed to precede the first (:) character.
started by a reset for the Boot Mode.
Programming is only started if the first received record has
the right type indication (TT). I
5 V
VDD
all other
P89CE528
pins are
don't care
P3.0/RXD
RS232
interface
RST P3.1/TXD
XTAL2
output of ALE pulses
ALE
2 k&!
PSEN
XTAL1
VSS
EA
MLB087
Fig.25 Serial programming (Boot Mode) configuration.
September 1993 59
Philips Semiconductors Preliminary specification
8-bit microcontroller with EMC and
P8xCE528
FEEPROM
No messages are transmitted if the baud rate of the first
Boot Routine
character (:) can not be detected.
The boot routine transmits the next one ASCII character
messages via the RS232 interface:
The boot routine can also be started by the internal or
external user program (LJMP FC07H). FMCON must be
. after each record type TT = 00H indication in the
loaded previously with 40H. Interrupt registers, stack
HEX file
pointer, Timer 0, UART, P3.0 and P3.1 must be in the reset
X checksum error of a record in the HEX file
state. EA and PSEN must not be affected. A reset is
detected
needed to restart the user program after programming.
Y wrong record type received
Note that the boot routines can (re)program any number of
Z buffer overflow error (Check Xon/Xoff of terminal)
bytes from 1 byte to 32 kbytes, independent in which order
R verification error (of last written byte)
or at which location. The next baud rates will be detected
V end record received and programming of
automatically within the specified µC clock range in MHz.
FEEPROM was successful.
Table 29 Boot routine
BAUD RATE fCLK MIN. fCLK MAX.
1200 1 (note 1) 3.6
2400 2 (note 1) 7.3
4800 4 19.7 (note 1)
9600 7.9 29.5 (note 1)
19200 15.7 59 (note 1)
Note
1. value outside the specified clock range.
September 1993 60
Philips Semiconductors Preliminary specification
8-bit microcontroller with EMC and
P8xCE528
FEEPROM
Successive HEX (H) records need not appear in
Boot Routine Definitions
sequential address order. For instance, a record for
In the following description, each letter corresponds to one
address 0000H might appear after a record for address
hexadecimal digit in ASCII representation (the digits 0
7FE0H. All of the bytes in a single record, however, must
through 9, and the letters A through F).
be in sequence. Any characters that appear outside of a
record (i.e. after a checksum, but before the next : ) should
Construction of data records (using the notation defined in
be ignored, if present.
Table 30) is as follows:
An example of a valid HEX file follows:
:BCAAAATTHHHHHHHHHHHHHHHHHHHHHHHHHHH
HHHHHCC
:10010000C2F0E53030E704F404D2F08531F030F786
The last record in a file is the end record and contains no
:100110000763F0FF05F0B2F0A430F00A63F0FFF4DB
data. Usually the end record will appear as shown in the
:0C0120002401500205F085F032F5332276
first example below. However, in some cases a 16 bit
checksum of all the data bytes in the entire file may be
:00000001FF
inserted in the address field of the end record. This
checksum would correspond to one generated by an
EPROM programmer during file load, and its inclusion
does not violate the rules for this format. This is shown in
the second example.
:00000001FF
:00B12C0122
Table 30 Boot routine definitions.
MNEMONIC FUNCTION
: Record start character.
BC Byte count. The hexadecimal number of data bytes in the record. This may theoretically be any
[ Pobierz całość w formacie PDF ]