19-4572; Rev 0; 4/09
Crimzon
®
Infrared Microcontrollers
ZLF645 Series Flash MCUs
with Learning Amplification
Product Specification
Maxim Integrated Products Inc.
120 San Gabriel Drive, Sunnyvale CA 94086
Maxim Integrated Products
120 San Gabriel Drive
Sunnyvale, CA 94086
United States
408-737-7600
www.maxim-ic.com
Copyright © 2009 Maxim Integrated Products
Maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim product. Maxim retains
the right to make change s to its products or specifications to improve performance, reliability or manufacturability. All information in
this document, includin g descriptions of f eatures, functio ns, per formance, technical specifications and avai lability, is subject to
change without notice at any time. While the information furnished herein is held to be accurate and reliable, no responsibility will be
assumed by Maxim for its use. F urthermore, the information contained her ein does not c onvey to the pur chaser of micr oelectronic
devices any license under the patent right of any manufacturer.
Maxim is a registered trademark of Maxim Integrated Products, Inc.
All other products or service names used in this publication are for identification purposes only, and may be trademarks or registered
trademarks of their respective companies. All other trademarks or registered tr ademarks mentioned he rein are th e property of th eir
respective holders.
Z8 is a registered trademark of Zilog, Inc.
Crimzon is a registered trademark of Universal Electronics Inc.
19-4572; Rev 0; 4/09
ZLF645 Series Flash MCUs
Product Specification
iii
Revision History
Each instance in the revision history table reflects a change to this document from its pre-
vious revision. For more details, refer to the corresponding pages or appropriate links
given in the table below.
Date
Version Description
Updated formula in
Flash Controller
section.
Updated V
LVD
in
Table 80
and V
FLPE
in
Table 82
in
Electrical Characteristics
section.
Updated
Table 56
through
Table 59
in
Timers
section.
Added
Flash Programming through the ICP Interface
in
ICP Interface
section.
Added
Using the Watchdog Timer As a Stop Mode
Recovery Source
in
Reset and Power Management
section.
Updated
Flash Frequency High and Low Byte Registers
section and
Table 83.
Updated Port 1 pins in
Figure 1.
Updated
Enabling The Flash Byte Programming Interface
section.
Page
Number
67
165, 170
119
61
142
79, 172
4
82
December 08
2008
April 2008 07
April 2008 06
Deleted “Design Info” subsection and all of its associated
All
text.
Updated
Flash Memory Overview
section; updated
67, 68
Figure 19.
Updated
Flash Frequency High and Low Byte Registers
79
section.
Updated Icc and Icc1 in
Table 80.
165
Updated notes in
Table 5
and
Table 6.
9, 10
Removed “Preliminary” and “Precharacterization Product”
All
notice.
Added 20-pin QFN package to
Pin Description, Table 3,
5, 6, 7,
Table 4, Packaging, Table 87,
and
Part Number
176,
184, 186
Description.
85
Change P31 to P32 at the beginning of
Universal
Asynchronous Receiver/Transmitter.
Updated
Flash Code Protection Against External Access
and
Flash Frequency High and Low Byte Registers.
Chapter
Reset and Power Management:
Updated
Table
68.
73, 79
142
January
2008
January
2008
05
04
19-4572; Rev 0; 4/09
Revision History
ZLF645 Series Flash MCUs
Product Specification
iv
Table of Contents
Architectural Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interrupt Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Additional Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Functional Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Port Pin Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RESET (Input, Active Low) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparator Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparator Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port Configuration Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 0/1 Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 0 Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 1 Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 2 Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 2 Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 3 Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 3 Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 4 Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 4 Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory and Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Program/Constant Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Register File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Register Pointer Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Linear Memory Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Register Pointer Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stack Pointer Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1
2
2
4
Pin Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
18
18
20
21
22
23
28
28
28
30
31
32
33
34
35
36
37
39
40
41
41
42
42
45
45
48
48
19-4572; Rev 0; 4/09able
of ContentsTable able of
Table
Table of Contents
ZLF645 Series Flash MCUs
Product Specification
v
Register File Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
ICP Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enabling ICP Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
State of ZLF645 in ICP Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Enabling Flash Accesses Through the ICP . . . . . . . . . . . . . . . . . . . . . . . . .
ICP Interface Logic Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ICP Interface Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ICP Data Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ICP Auto-Baud Detector/Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ICP Serial Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ICP In-Circuit Programming Commands . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Programming through the ICP Interface . . . . . . . . . . . . . . . . . . . . . .
Differences Between CPU Based and ICP Based Flash Programming/
Erase Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using ICP Commands for Flash Programming/Read Operations . . . . .
In-Circuit Programming Control Register Definitions . . . . . . . . . . . . . . . . . .
ICP Control Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ICP Status Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TEST Mode Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exiting ICP Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Memory Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Information Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Controller Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Executing Flash Memory Accesses Through the Flash Controller . . . .
Flash Code Protection Against External Access . . . . . . . . . . . . . . . . . .
Flash Code Protection Against Accidental Program and Erasure . . . . .
Byte Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Page Erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mass Erase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Control Register Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Control Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Status Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Page Select Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Sector Protect Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Flash Frequency High and Low Byte Registers . . . . . . . . . . . . . . . . . .
Flash Controller Functions Summary . . . . . . . . . . . . . . . . . . . . . . . . . .
53
53
53
54
54
54
55
55
56
57
61
61
61
64
64
65
66
66
67
67
68
69
69
73
73
74
74
75
75
75
77
77
78
79
80
Flash Byte Programming Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
19-4572; Rev 0; 4/09able
of ContentsTable able of
Table
Table of Contents