AN2156 Freescale Semiconductor / Motorola, AN2156 Datasheet - Page 16

no-image

AN2156

Manufacturer Part Number
AN2156
Description
Programming and Erasing FLASH and EEPROM Memories on the MC68HC908AS60A/AZ60A
Manufacturer
Freescale Semiconductor / Motorola
Datasheet
Application Note
FLASH Program Operation
16
NOTE:
On the MC68HC908AS60A/AZ60A, programming of the FLASH
memory is done on a row-by-row basis. A row consists of 64 bytes, with
address ranges as follows:
During a programming cycle, make sure that all addresses are being
written to fit within one of the ranges specified. Attempts to program
addresses in different row ranges in one programming cycle will fail. For
example, programming from addresses $xx30 to $xx6F will not be
successful because addresses $xx30–$xx3F and $xx40–$xx6F are in
different rows.
Also take care that the initial address written makes logical sense. The
programming algorithm includes a step (step 3 that follows) where the
row to be programmed is identified by writing to any address in that row
with any data. For most rows, this address can be chosen haphazardly
since the row consists of 64 bytes. However, there are a few areas
where the entire row does not consist of FLASH space. In these rows,
when programming the array, ensure that a non-FLASH location is not
used as the row specifier or written to during the sequence.
To avoid program disturbs, the row must be erased before any byte on
that row is programmed.
The programming flowchart is shown in
Freescale Semiconductor, Inc.
For More Information On This Product,
$xx00 to $xx3F
$xx40 to $xx7F
$xx80 to $xxBF
$xxC0 to $xxFF
First row of FLASH-2 ($0450–$047F) = 48 bytes
Vector area on the MC68HC908AS60A ($FFD2–$FFD3 and
$FFDA–$FFFF) = 40 bytes
Vector area on the MC68HC908AZ60A ($FFCC–$FFFF)
= 52 bytes
Go to: www.freescale.com
Figure
4.
MOTOROLA
AN2156

Related parts for AN2156