AN2398 Freescale Semiconductor / Motorola, AN2398 Datasheet - Page 3

no-image

AN2398

Manufacturer Part Number
AN2398
Description
In-Circuit Programming of FLASH Memory via the Universal Serial Bus for the MC68HC908JB8
Manufacturer
Freescale Semiconductor / Motorola
Datasheet
Vector Redirecting
MOTOROLA
In-Circuit Programming of FLASH Memory via the USB for the MC68HC908JB8
Since the ICP scheme erases and reprograms the user code only, mass erase
operation cannot be used. This means the user code is erased using multiple
block erase operations. And because mass erase is not used, the user FLASH
vectors cannot be erased during ICP (a fail-save mechanism allows only mass
erase operation to erase the user FLASH vectors).
Since the user FLASH vectors are now fixed, these must be re-directed to the
proper addresses for the interrupt service subroutines in the user code. This is
achieved using “pseudo” vectors, which are 3-byte vectors containing a JMP
instruction and the absolute address to the actual interrupt service subroutines
in the user program.
vector that is not re-directed is the reset vector. The reset vector always points
to $F800 — the start of the ICP code.
Table 1
redirecting.
KBI vector
Freescale Semiconductor, Inc.
(Reset vector high byte) $FFFE
(Reset vector low byte) $FFFF
(KBI vector high byte) $FFF0
(KBI vector low byte) $FFF1
For More Information On This Product,
lists interrupt vector addresses and the pseudo vector addresses for
Go to: www.freescale.com
$DC00
$F7FE
$FBFF
$F7FF
$F800
$aabb
$xxyy
:
Figure 2
Figure 2. Vector Redirecting
Vectors redirection
shows how the vectors are re-directed. The only
Service Routine
User Code
ICP_FLAG
ICP Code
$F8
KBI
$aa
$bb
$00
:
OVERVIEW AND MEMORY USAGE
Reset vector
$CC (JMP instruction)
Redirected
KBI vector
$xx
$yy
AN2398/D
3

Related parts for AN2398