ZILOG Z86D8608PSC

Z86D86
28-Pin Low-Voltage OTP
Microcontroller
Preliminary Product Specification
PS008905-0105
ZiLOG Worldwide Headquarters • 532 Race Street • San Jose, CA 95126-3432
Telephone: 408.558.8500 • Fax: 408.558.8300 • www.ZiLOG.com
This publication is subject to replacement by a later edition. To determine whether a later edition
exists, or to request copies of publications, contact:
ZiLOG Worldwide Headquarters
532 Race Street
San Jose, CA 95126-3432
Telephone: 408.558.8500
Fax: 408.558.8300
www.ZiLOG.com
ZiLOG is a registered trademark of ZiLOG Inc. in the United States and in other countries. All other products and/or
service names mentioned herein may be trademarks of the companies with which they are associated.
Document Disclaimer
© 2005 by ZiLOG, Inc. All rights reserved. Information in this publication concerning the devices, applications, or
technology described is intended to suggest possible uses and may be superseded. ZiLOG, INC. DOES NOT
ASSUME LIABILITY FOR OR PROVIDE A REPRESENTATION OF ACCURACY OF THE INFORMATION, DEVICES,
OR TECHNOLOGY DESCRIBED IN THIS DOCUMENT. ZiLOG ALSO DOES NOT ASSUME LIABILITY FOR
INTELLECTUAL PROPERTY INFRINGEMENT RELATED IN ANY MANNER TO USE OF INFORMATION, DEVICES,
OR TECHNOLOGY DESCRIBED HEREIN OR OTHERWISE. Except with the express written approval ZiLOG, use of
information, devices, or technology as critical components of life support systems is not authorized. No licenses or
other rights are conveyed, implicitly or otherwise, by this document under any intellectual property rights.
P
R
E
L
I
M
I
N
A
R
Y
PS008905-0105
Z86D86
28-Pin Low-Voltage OTP Microcontroller
iii
Revision History
Each instance in Table 1 reflects a change to this document from its previous revision. To see more detail, click the appropriate link in the table.
Table 1. Revision History of this Document
Date
January
2005
Revision
Level
Section
05
Made minor corrections to Figure 23 Port 0 and 1 Mode Register.
PS008905-0105
Page
#
Description
P
R
E
L
I
M
I
N
A
R
Y
29
Z86D86
28-Pin Low-Voltage OTP Microcontroller
iv
Table of Contents
Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
General Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Pin Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Standard Test Conditions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Capacitance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
DC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
AC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
PS008905-0105
Pin Functions (Standard Mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
XTAL1 Crystal 1 (Time-Based Input) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
XTAL2 Crystal 2 (Time-Based Output) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 0 (P07–P00) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 2 (P27–P20) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port 3 (P37–P31) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparator Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comparator Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
12
12
12
13
14
16
16
Functional Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Program Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Expanded Register File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Register File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Counter/Timer Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Counter/Timer Functional Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Power-On Reset (POR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HALT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
STOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port Configuration Register (PCON) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stop-Mode Recovery Register (SMR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stop-Mode Recovery Register 2 (SMR2) . . . . . . . . . . . . . . . . . . . . . . . . . . .
Watch-Dog Timer Mode Register (WDTMR) . . . . . . . . . . . . . . . . . . . . . . . .
Mask Selectable Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
18
18
18
32
33
34
43
54
56
57
58
58
59
59
64
65
68
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
v
Low Voltage/Standby . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Low Battery Detection and Flag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
PS008905-0105
Ordering Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Z86D86 8.0 MHz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Precharacterization Product . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
69
70
71
71
Customer Feedback Form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Z86D86 28-Pin Low-Voltage OTP Microcontroller . . . . . . . . . . . . . . . . . . .
Customer Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Product Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Return Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Problem Description or Suggestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
72
72
72
72
72
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
vi
List of Figures
Figure 1.
Figure 2.
Figure 3.
Figure 4.
Figure 5.
Figure 6.
Figure 7.
Figure 8.
Figure 9.
Figure 10.
Figure 11.
Figure 12.
Figure 13.
Figure 14.
Figure 15.
Figure 16.
Figure 17.
Figure 18.
Figure 19.
Figure 20.
Figure 21.
Figure 22.
Figure 23.
Figure 24.
Figure 25.
Figure 26.
Figure 27.
Figure 28.
Figure 29.
Figure 30.
Figure 31.
Figure 32.
PS008905-0105
Counter/Timers Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Functional Block Diagram. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
28-Pin DIP/SOIC Pin Assignment . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Test Load Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Timing Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Port 0 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Port 2 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Port 3 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Port 3 Counter/Timer Output Configuration . . . . . . . . . . . . . . . . . . . 17
Program Memory Map (32K ROM) . . . . . . . . . . . . . . . . . . . . . . . . . 18
Expanded Register File Architecture . . . . . . . . . . . . . . . . . . . . . . . . 20
Register Pointer Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
TC8 Control Register—(0D) OH: Read/Write Except
Where Noted . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
21
T8 and T16 Common Control Functions—(0D) 1H: Read/Write . . . 22
T16 Control Register—(0D) 2H: Read/Write Except Where Noted . 23
Low Battery Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Stop-Mode Recovery Register—(0F) 0BH: D6–D0 = Write Only,
D7 = Read Only . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Stop-Mode Recovery Register 2—(0F) 0DH: D2–D4, D6 Write Only 26
Watch-Dog Timer Register—(0F) 0FH: Write Only . . . . . . . . . . . . . 27
Port Configuration Register (PCON)—(0F) 0H: Write Only . . . . . . . 27
Port 2 Mode Register—F6H: Write Only . . . . . . . . . . . . . . . . . . . . . 28
Port 3 Mode Register—F7H: Write Only . . . . . . . . . . . . . . . . . . . . . 28
Port 0 and 1 Mode Register—F8H: Write Only. . . . . . . . . . . . . . . . . 29
Interrupt Priority Register—F9H: Write Only. . . . . . . . . . . . . . . . . . . 30
Interrupt Request Register—FAH: Read/Write . . . . . . . . . . . . . . . . 30
Interrupt Mask Register—FBH: Read/Write . . . . . . . . . . . . . . . . .
31
Flag Register—FCH: Read/Write . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Register Pointer—FDH: Read/Write . . . . . . . . . . . . . . . . . . . . . . . . . 32
Stack Pointer High—FEH: Read/Write . . . . . . . . . . . . . . . . . . . . . . 32
Stack Pointer Low—FFH: Read/Write . . . . . . . . . . . . . . . . . . . . . . . 32
Register Pointer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Glitch Filter Circuitry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
vii
Figure 33.
Figure 34.
Figure 35.
Figure 36.
Figure 37.
Figure 38.
Figure 39.
Figure 40.
Figure 41.
Figure 42.
Figure 43.
Figure 44.
Figure 45.
Figure 46.
Figure 47.
Figure 48.
Figure 49.
Figure 50.
Figure 51.
Figure 52.
Figure 53.
Figure 54.
Figure 55.
PS008905-0105
8-Bit Counter/Timer Circuits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Transmit Mode Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
T8_OUT in Single-Pass Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
T8_OUT in Modulo-N Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Demodulation Mode Count Capture Flowchart . . . . . . . . . . . . . . . .
Demodulation Mode Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16-Bit Counter/Timer Circuits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
T16_OUT in Single-Pass Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . .
T16_OUT in Modulo-N Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ping-Pong Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Output Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interrupt Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Oscillator Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Port Configuration Register (PCON)—Write Only . . . . . . . . . . . . . .
Stop-Mode Recovery Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SCLK Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stop-Mode Recovery Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Stop-Mode Recovery Register 2—(0F) DH:D2–D4, D6 Write Only .
Watch-Dog Timer Mode Register—Write Only. . . . . . . . . . . . . . . . .
Resets and WDT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28-Pin SOIC Package Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28-Pin DIP Package Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ordering Codes Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
P
R
E
L
I
M
I
N
A
R
Y
44
46
47
47
48
49
50
51
51
53
54
55
57
59
60
60
62
64
66
67
69
70
71
Z86D86
28-Pin Low-Voltage OTP Microcontroller
viii
List of Tables
Table 1.
Table 2.
Table 3.
Table 4.
Table 5.
Table 6.
Table 7.
Table 8.
Table 9.
Table 10.
Table 11.
Table 12.
Table 13.
Table 14.
Table 15.
Table 16.
Table 17.
Table 18.
Table 19.
Table 20.
Table 21.
Table 22.
Table 23.
Table 24.
Table 25.
Table 26.
Table 27.
PS008905-0105
Revision History of this Document . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
Z86D86 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
28-Pin DIP and SOIC Pin Identification . . . . . . . . . . . . . . . . . . . . . . . 5
Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Capacitance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
DC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
AC Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Pin Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Expanded Register Group D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
LBD(D)0C—Low Battery Detection Register . . . . . . . . . . . . . . . . . . 35
HI8(D)0Bh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
L08(D)0Ah . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
HI16(D)09h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
L016(D)08h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
TC16H(D)07h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
TC16L(D)06h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
TC8H(D)05h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
TC8L(D)04h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
CTR0 (D)00 Counter/Timer8 Control Register . . . . . . . . . . . . . . . . 37
CTR1(D)01h Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
CTR2 (D)02h: Counter/Timer16 Control Register . . . . . . . . . . . . . . 42
Interrupt Types, Sources, and Vectors . . . . . . . . . . . . . . . . . . . . . . 55
IRQ Register* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Stop-Mode Recovery Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
SMR2(F)0Dh: Stop-Mode Recovery Register 2 . . . . . . . . . . . . . . . 65
WDT Time Select* . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Mask Selectable Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
1
Features
Table 1 shows some of the features of the Z86D86 microcontroller.
Table 1. Z86D86 Features
Device
ROM (KB)
RAM* (Bytes)
I/O Lines
Voltage Range
Z86D86
32
237
23
2.3 V to 5.5 V
Note: *General purpose
PS008905-0105
•
•
Low Power Consumption–40 mW (Typical)
•
Special Architecture to Automate Both Generation and Reception of Complex
Pulses or Signals:
– One Programmable 8-Bit Counter/Timer with Two Capture Registers and
Two Load Registers
– One Programmable 16-Bit Counter/Timer with One 16-Bit Capture
Register Pair and One 16-Bit Load Register Pair
– Programmable Input Glitch Filter for Pulse Reception
•
Six Priority Interrupts
– Three External
– Two Assigned to Counter/Timers
– One Low Battery Detection Interrupt
•
•
•
•
•
Low Battery Detection with Flag
Three Standby Modes
– STOP—2 µA
– HALT—0.8 mA
– Low Voltage
Programmable Watch-Dog/Power-On Reset Circuits
Two Independent Comparators with Programmable Interrupt Polarity
Mask Selectable 200±50% KΩ Transistor Pull-Ups on Ports 0, 2.
Programmable OTP Options:
– Oscillator Selection: RC Oscillator vs. Crystal or Other Clock Source
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
2
–
–
–
–
–
•
Oscillator Operational Mode: Normal High Frequency Operation Enabled
or 32 KHz Operation Enabled
Port 0: 0–3 Pull-Ups
Port 0: 4–7 Pull-Ups
Port 2: 0–7 Pull-Ups
Port 0: 0–3 Mouse Mode: Normal Mode (.5VDD Input Threshold) vs.
Mouse Mode (.4VDD Input Threshold)
Port 3 does not feature the pull-up option.
General Description
The Z86D86 is a 28-pin one-time programmable (OTP) infrared (IR) microcontroller. Based on a single-chip Z8 microcontroller (MCU) design, the Z86D86 features
237 bytes of general-purpose RAM and 32 KB of OTP ROM. ZiLOG’s CMOS
microcontrollers offer fast executing, efficient use of memory, sophisticated interrupts, input/output bit-manipulation capabilities, automated pulse generation/
reception, and internal key-scan pull-up transistors.
The Z86L825 architecture is based on ZiLOG's 8-bit microcontroller core, featuring an Expanded Register File to allow access to register-mapped peripherals, I/O
circuits, and powerful counter/timer circuitry. The Z8 offers a flexible I/O scheme,
an efficient register and address space structure, and a number of ancillary features that are useful in many consumer, automotive, computer peripheral, and batter-operated hand-held applications.
There are three basic address spaces available to support a wide range of configurations: program memory, register file, and Expanded Register File. The register
file consists of 256 bytes of RAM. It includes 4 I/O port registers, 16 control and
status registers, and 236 general-purpose registers. (Register FEh (SPH) can be
used as a general-purpose register.) The Expanded Register File consists of two
additional register groups (F and D).
The Z86D86 offers a new intelligent counter/timer architecture with 8-bit and 16bit counter/timers (Figure 1). Also included are a large number of user-selectable
modes and two on-board comparators to process analog signals with separate
reference voltages (Figure 9 on page 17).
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
3
HI 16
Lo 16
8
8
16-Bit
T 16
1 2 4 8
Timer 16
16
8
SCLK
Clock
Divider
8
TC16L
TC16H
And/Or
Logic
HI8
LO8
8
Input
Glitch
Filter
8
Edge
Detect
Circuit
8-Bit
T8
Timer 8
8
8
TC8H
TC8L
Figure 1. Counter/Timers Diagram
Note: All signals with an overline, “ ”, are active Low. For example,
B/W, in which WORD is active Low, and B/W, in which BYTE is
active Low.
Figure 2 shows the functional block diagram.
PS008905-0105
P
R
E
L
I
Timer 8/16
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
4
I/O Nibble
Programmable
P00
P01
P02
P03
P04
P05
P06
P07
Register File
256 x 8-Bit
4
Port 3
Port 0
Register Bus
4
Internal
Address Bus
OTP or EPROM
Pref1
P31
P32
P33
P34
P35
P36
P37
Z8 Core
32K x 8
Internal
Data Bus
Expanded
Register
File
I/O Bit
Programmable
P20
P21
P22
P23
P24
P25
P26
P27
Machine
Timing
and
Instruction
Control
Expanded
Register Bus
Power
Port 2
Counter/Timer 16
16-Bit
Counter/Timer 8
8-Bit
Figure 2. Functional Block Diagram
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
XTAL
VDD
VSS
Z86D86
28-Pin Low-Voltage OTP Microcontroller
5
Pin Description
Figure 3 shows the pin assignment for the 28-pin dual in-line package (DIP)/small
outline integrated circuit (SOIC). Table 2 identifies the pins.
P25
P26
P27
P04
P05
P06
P07
VDD
XTAL2
XTAL1
P31
P32
P33
P34
1
28
P24
P23
P22
P21
P20
P03
VSS
P02
P01
P00
Pref1
P36
P37
P35
Z86D86
DIP/SOIC
14
15
Figure 3. 28-Pin DIP/SOIC Pin Assignment
Table 2. 28-Pin DIP and SOIC Pin Identification
28-Pin DIP and SOIC
19
20
21
23
4
5
6
7
24
25
26
27
28
1
2
3
PS008905-0105
Standard Mode
P00
P01
P02
P03
P04
P05
P06
P07
P20
P21
P22
P23
P24
P25
P26
P27
P
Direction
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
Input/Output
R
E
L
I
M
Description
Port 0 is nibble programmable.
Port 0–3 can be configured as a
mouse/trackball input.
Port 2 pins are individually
configurable as input or output.
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
6
Table 2. 28-Pin DIP and SOIC Pin Identification (Continued)
28-Pin DIP and SOIC Standard Mode
18
Pref1
Direction
Input
11
12
13
14
15
17
16
10
9
8
P31
P32
P33
P34
P35
P36
P37
XTAL1
XTAL2
VDD
Input
Input
Input
Output
Output
Output
Output
Input
Output
22
VSS
Description
Analog ref input (must be pulled high
externally, if not used)
IRQ2/modulator input
IRQ0
IRQ1
T8 output
T16 output
T8/T16 output
Crystal, oscillator clock
Crystal, oscillator clock
Power supply
Ground
Absolute Maximum Ratings
Table 3 lists the absolute maximum ratings for the Z86D86 microcontroller.
Table 3. Absolute Maximum Ratings
Symbol
Description
Min
Max
Units
VMAX
Supply Voltage (*)
–0.3
+7.0
V
TSTG
Storage Temperature
–65°
+150°
C
TA
Oper. Ambient Temperature
0°
70°
C
Notes:
* Voltage on all pins with respect to GND
Stresses greater than those listed under Absolute Maximum Ratings may cause
permanent damage to the device. This rating is a stress rating only. Functional
operation of the device at any condition above those indicated in the operational
sections of these specifications is not implied. Exposure to absolute maximum rating conditions for an extended period may affect device reliability.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
7
Standard Test Conditions
The characteristics listed below apply for standard test conditions as noted. All
voltages are referenced to GND. Positive current flows into the referenced pin
(see Figure 4).
From Output
Under Test
I
Figure 4. Test Load Diagram
Capacitance
Table 4 lists the capacitance for the Z86D86 microcontroller.
.
Table 4. Capacitance
Parameter
Max
Input capacitance
12 pF
Output capacitance
12 pF
I/O capacitance
12 pF
Note: TA = 25 °C, VCC = GND = 0 V, f = 1.0 MHz, unmeasured
pins returned to GND.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
8
DC Characteristics
Table 5 lists the direct current (DC) characteristics.
Table 5. DC Characteristics
TA = 0 °C to +70 °C
VCC Min
Max
Units Conditions
Notes
2.3 V 0.8 VCC VCC + 0.3 V
Driven by External
Clock Generator
5.5 V 0.8 VCC VCC + 0.3 V
Driven by External
Clock Generator
VCL
Clock Input Low Voltage
2.3 V VSS–0.3 0.2 VCC V
Driven by External
Clock Generator
5.5 V VSS–0.3 0.2 VCC V
Driven by External
Clock Generator
VIH
Input High Voltage
2.3 V 0.7 VCC VCC + 0.3 V
5.5 V 0.7 VCC VCC + 0.3 V
VIL
Input Low Voltage
2.3 V VSS–0.3 0.2 VCC V
5.5 V VSS–0.3 0.2 VCC V
VOH1
Output High Voltage
2.3 V VCC–0.4
V
IOH = –0.5 mA
5.5 V VCC–0.4
V
IOH = –0.5 mA
VOH2
Output High Voltage
2.3 V VCC–0.8
V
IOH = –7 mA
(P36, P37, P00, and P01)
5.5 V VCC–0.8
V
IOH = –7 mA
VOL1
Output Low Voltage
2.3 V
0.4
V
IOL = 1.0 mA
5.5 V
0.4
V
IOL = 4.0 mA
VOL2
Output Low Voltage
2.3 V
0.8
V
IOL = 5.0 mA
1
5.5 V
0.8
V
IOL = 7.0 mA
1
VOL2
Output Low Voltage
2.3 V
0.8
V
IOL = 10 mA
(P00, P01, P36, and P37)
5.5 V
0.8
V
IOL = 10 mA
VOFFSET Comparator Input Offset Voltage 2.3 V
25
mV
5.5 V
25
mV
VREF
Comparator Reference Voltage 2.3 V 0
VCC–
V
1.75
5.5 V 0
VCC–
V
1.75
Input Leakage
2.3 V –1
1
µA
VIN = 0V, VCC
IIL
5.5 V –1
1
µA
VIN = 0V, VCC
IOL
Output Leakage
2.3 V –1
1
µA
VIN = 0V, VCC
5.5 V –1
1
µA
VIN = 0V, VCC
Symbol Parameter
VCH
Clock Input High Voltage
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
9
Table 5. DC Characteristics (Continued)
Symbol Parameter
ICC
Supply Current
ICC1
ICC2
Standby Current (HALT Mode)
Standby Current (STOP Mode)
ILV
TPOR
Standby Current (Low Voltage)
Power-On Reset
VLV
Low Voltage Protection
VLB
Low Battery Detection Flag
TA = 0 °C to +70 °C
VCC Min
Max
2.3 V
10
5.5 V
15
2.3 V
250
5.5 V
850
2.3 V
3
Units
mA
mA
µA
µA
mA
5.5 V
2.3 V
5
2
mA
mA
5.5 V
2.3 V
4
8
mA
µA
5.5 V
2.3 V
10
500
µA
µA
5.5 V
2.3 V 12
5.5 V 5
2
800
100
75
20
2.3
µA
µA
ms
ms
V
2.4
2.7
V
Conditions
@ 8.0 MHz
@ 8.0 MHz
@ 32 kHz
@ 32 kHz
VIN = 0V, VCC @
8.0 MHz
Same as above
Clock Divide-by-16
@ 8.0 MHz
Same as above
VIN = 0V, VCC
WDT is not running
Same as above
VIN = 0V, VCC
WDT is running
Same as above
Vcc < VLV
8 MHz max
Ext. CLK Freq.
VLB = VLV + 0.4 V
Notes
2, 3
2, 3
2, 3, 4
2, 3, 4
2, 3
2, 3
2, 3
2, 3
5, 6, 9
5, 6, 9
5, 6, 9
5, 6, 9
7
8
Notes:
1. All outputs excluding P00, P01, P36, and P37
2. All outputs unloaded, inputs at rail
3. CL1 = CL2 = 100 pF
4. 32 kHz clock driver input
5. VLV increases as the temperature decreases; inputs at VCC
6. Oscillator stopped
7. Oscillator stops when VCC falls below VLV limit.
8. VLV increases as the temperature decreases.
9. WDT, Comparators, Low Voltage Detection, and ADC (if applicable) are disabled. The IC might draw more
current if any of the above peripherals is enabled.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
10
AC Characteristics
Figure 5 shows the timing diagram. Table 6 describes the alternating current (AC)
characteristics.
3
1
Clock
2
2
7
3
7
TIN
4
5
6
IRQN
9
8
Clock
Setup
11
Stop
Mode
Recovery
Source
10
Figure 5. Timing Diagram
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
11
Table 6. AC Characteristics
TA = 0°C to +70°C
8.0 MHz
Number Symbol
1
TpC
Parameter
Input Clock Period
2
TrC,TfC
Clock Input Rise and
Fall Times
3
TwC
Input Clock Width
4
TwTinL
Timer Input
Low Width
5
TwTinH
Timer Input High
Width
6
TpTin
Timer Input Period
7
TrTin,TfTin Timer Input Rise and
Fall Times
8A
TwIL
Interrupt Request
Low Time
9
TwIH
Interrupt Request
Input High Time
10
Twsm
Stop-Mode Recovery
Width Spec
12
Twdt
Watch-Dog Timer
Delay Time
VCC
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
2.3 V
5.5 V
Min
121
121
Stop-Mode
Recovery
(D1, D0)
Units Notes
ns
1
ns
1
ns
1
ns
1
ns
1
ns
1
ns
1
ns
1
1
1
1
1
ns
1
ns
1
ns
1, 2
ns
1, 2
1, 2
1, 2
ns
ns
ms 5
0, 0
ms 5
ms 5
0, 1
ms 5
ms 5
1, 0
ms 5
ms 5
1, 1
ms 5
Max
DC
DC
25
25
37
37
100
70
3TpC
3TpC
8TpC
8TpC
100
100
100
70
5TpC
5TpC
12
12
12
5
24
10
48
20
192
80
Notes:
1. Timing Reference uses 0.9 VCC for a logic 1 and 0.1 VCC for a logic 0.
2. Interrupt request through Port 3 (P33–P31)
3. N/A
4. SMR – D5 = 0.
5. For internal RC oscillator
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
12
Pin Functions (Standard Mode)
XTAL1 Crystal 1 (Time-Based Input)
This pin connects a parallel-resonant crystal, ceramic resonator, LC, or RC network to the on-chip oscillator input. An external single-phase clock to the on-chip
oscillator input is also an option.
XTAL2 Crystal 2 (Time-Based Output)
This pin connects a parallel-resonant crystal, ceramic resonant, LC, or RC network to the on-chip oscillator output.
Port 0 (P07–P00)
Port 0 is an 8-bit, bidirectional, CMOS-compatible port. These eight I/O lines are
configured under software control as a nibble I/O port. The output drivers are
push-pull or open drain controlled by bit D2 in the PCON register.
If one or both nibbles are required for I/O operation, they must be configured by
writing to the Port 0 mode register. After a hardware reset, Port 0 is configured as
an input port.
An EPROM option is available to program 0.4 VCC CMOS trip inputs on P00–P03.
This allows direct interface to mouse/trackball IR sensors.
An optional 200 ±50%KΩs pull-up transistor is available as a mask option on all
Port 0 bits with nibble select. See Figure 6.
Note: Internal pull-ups are disabled on any given pin or group of port
pins when programmed into output mode.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
13
4
Port 0 (I/O)
Z86D86
MCU
4
EPROM VCC
Option
Open-Drain
200 KOhms +50%
resistive transistor
pull-ups
I/O
Pad
Out
In
In
*EPROM Selectable
0.4 VCC
Trip Point Buffer
Figure 6. Port 0 Configuration
Port 2 (P27–P20)
Port 2 is an 8-bit, bidirectional, CMOS-compatible I/O port. These eight I/O lines
can be independently configured under software control as inputs or outputs. Port
2 is always available for I/O operation. A mask option is available to connect eight
200 KΩ (±50%) pull-up transistors on this port. Bits programmed as outputs are
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
14
globally programmed as either push-pull or open-drain. The POR resets with the
eight bits of Port 2 configured as inputs.
Port 2 also has an 8-bit input OR and an AND gate, which can be used to wake up
the part. P20 can be programmed to access the edge-detection circuitry in
demodulation mode. See Figure 7.
Port 2 I/O
Z86D86
MCU
EPROM
Option
Open-Drain
VCC
200 KOhms +50%
resistive transistor
pull-ups
I/O
Pad
Out
In
Figure 7. Port 2 Configuration
Port 3 (P37–P31)
Port 3 is a 7-bit, CMOS-compatible fixed I/O port (see Figure 8). Port 3 consists of
three fixed input (P33–P31) and four fixed output (P37–P34) ports, and each can
be configured under software control for interrupt, and output from the counter/
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
15
timers. P31, P32, and P33 are standard CMOS inputs; P34, P35, P36, and P37
are push-pull outputs.
Pref1
P31
P32
Z86D86
MCU
P33
Port 3 (I/O)
P34
P35
P36
P37
R247 = P3M
1 = Analog
0 = Digital
D1
DIG.
P31 (AN1)
IRQ2, P31 Data Latch
Comp1
+
Pref
AN.
–
P32 (AN2)
P33 (Ref2)
IRQ0, P32 Data Latch
Comp1
+
–
IRQ1, P33 Data Latch
From Stop Mode
Recovery Source of SMR
Figure 8. Port 3 Configuration
Two on-board comparators process analog signals on P31 and P32 with reference to the voltage on Pref1 and P33. The analog function is enabled by programming the Port 3 Mode Register (bit 1). P31 and P32 are programmable as rising,
falling, or both edge-triggered interrupts (IRQ register bits 6 and 7). Pref1 and P33
are the comparator reference voltage inputs. Access to the counter/timer
edge-detection circuit is through P31 or P20 (see “CTR1 Counter/Timer T8 and
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
16
T16 Common Control Register” on page 39). Other edge-detect and IRQ modes
are described in Table 7.
Table 7. Pin Assignments
Pin
I/O
C/T
Comp.
Pref1
Int.
RF1
P31
IN
P32
IN
AN1
IRQ2
IN
AN2
IRQ0
P33
IN
RF2
IRQ1
P34
OUT
T8
P35
OUT
T16
P36
OUT
T8/16
P37
OUT
P20
I/O
AO1
AO2
IN
Port 3 also provides output for the counter/timers and the AND/OR logic. Control
is performed by programming bits D5–D4 of CTR1 and bit 0 of CTR2.
Comparator Inputs
In analog mode, P31 and P32 have a comparator front end. The comparator reference is supplied to P33 and Pref1. In this mode, the P33 internal data latch and its
corresponding IRQ1 are diverted to the SMR sources (excluding P31, P32, and
P33) as indicated in Figure 8 on page 15. In digital mode, P33 is used as D3 of
the Port 3 input register, which then generates IRQ1.
Note: Comparators are powered down by entering STOP Mode. For
P31–P33 to be used in a Stop-Mode Recovery source, these
inputs must be placed into digital mode.
Comparator Outputs
These outputs can be programmed to output on P34 and P37 through the PCON
register (Figure 9).
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
17
CTR0, D0
PCON, D0
P34 data
T8_Out
VDD
MUX
MUX
P31
+
Pref1
–
Pad
P34
Comp1
CTR2, D0
VDD
Out 35
MUX
T16_Out
Pad
P35
CTR1, D6
VDD
Out 36
MUX
Pad
T8/16_Out
P36
PCON, D0
VDD
P37 data
MUX
P32
+
Pref2
–
Pad
P37
Comp2
Figure 9. Port 3 Counter/Timer Output Configuration
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
18
Functional Description
The Z86D86 incorporates special functions to enhance the Z8's functionality in
consumer and battery-operated applications.
Program Memory
The Z86D86 family addresses 32 KB of internal program memory. The first twelve
bytes are reserved for interrupt vectors. These locations contain the five 16-bit
vectors that correspond to the five available interrupts.
RAM
The Z86D86 device has 237 bytes of RAM that make up the register file.
Not Accessible
16383
Location of
First byte of
Instruction
Executed
After RESET
Interrupt
Vector
(Lower Byte)
Interrupt
Vector
(Upper Byte)
On-Chip ROM
Reset Start Address
12
11
IRQ5
10
IRQ5
9
IRQ4
8
IRQ4
7
IRQ3
6
IRQ3
5
IRQ2
4
IRQ2
3
IRQ1
2
IRQ1
1
IRQ0
0
IRQ0
Figure 10. Program Memory Map (32K ROM)
Expanded Register File
The register file has been expanded to allow for additional system control registers and for mapping of additional peripheral devices into the register address
area. The Z8 register address space R0 through R15 has been implemented as
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
19
16 banks, with 16 registers per bank. These register groups are known as the
ERF (Expanded Register File). Bits 7–4 of register RP select the working register
group. Bits 3–0 of register RP select the expanded register file bank.
Note: An expanded register bank is also referred to as an expanded
register group (see Figure 11).
The upper nibble of the register pointer (Figure 12 on page 21) selects which
working register group, of 16 bytes in the register file, is accessed out of the possible 256. The lower nibble selects the expanded register file bank and, in the case
of the Z86D86 family, banks 0, F, and D are implemented. A 0h in the lower nibble
allows the normal register file (bank 0) to be addressed, but any other value from
1h to Fh exchanges the lower 16 registers to an expanded register bank. For
example, for the Z86D86 (see Figure 11):
R253 RP
R0
R1
R2
R3
=
=
=
=
=
00h
Port
Port
Port
Port
=
=
=
=
=
0Dh
CTRL0
CTRL1
CTRL2
Reserved
0
1
2
3
But if:
R253 RP
R0
R1
R2
R3
The counter/timers are mapped into ERF group D. Access is easily performed
using the following:
PS008905-0105
LD
RP, #0Dh
LD
LD
LD
R0,#xx
1, #xx
R1, 2
LD
RP, #0Dh
LD
RP, #7Dh
LD
LD
71h, 2
R1, 2
P
R
E
L
I
;
;
;
;
;
Select ERF D for access to bank D
(working register group 0)
load CTRL0
load CTRL1
CTRL2→CTRL1
;
;
;
;
;
;
;
Select ERF D for access to bank D
(working register group 0)
Select expanded register bank D
working register group 7 of bank 0
for access.
CTRL2→register 71h
CTRL2→register 71h
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
20
Z8 Standard Control Registers
REGISTER POINTER
7
6
5
4
3
2
1
0
Expanded Register
Bank Group Pointer
Working Register
Group Pointer
*
*
Z8 Register File (Bank 0)**
FF
F0
RESET CONDITION
7
REGISTER**
Reserved
7F
†
Reserved
0F
00
*
*
*
RESET CONDITION
(0) 03
P3
(0) 02
P2
U U U U U U U U
(0) 00
P0
U U U U U U U U
0
0 U 0 U U U U
U = Unknown
* Not reset with a Stop-Mode Recovery
** All addresses are in hexadecimal
† Not reset with a Stop-Mode Recovery, except Bit 0.
Figure 11.
PS008905-0105
R
E
L
I
M
I
N
3
2
1
0
SPL
U U U U U U U U
SPH
U U U U U U U U
FD
RP
0
FC
FLAGS
U U U U U U U U
FB
IMR
0
0
0
0
0
0
0
0
FA
IRQ
0
0
0
0
0
0
0
0
F9
IPR
U U U U U U U U
F8
P01M
0
1
0
0
1
1
0
1
F7
P3M
0
0
0
0
0
0
0
0
F6
P2M
1
1
1
1
1
1
1
1
F5
Reserved
U U U U U U U U
F4
Reserved
U U U U U U U U
F3
Reserved
U U U U U U U U
F2
Reserved
U U U U U U U U
F1
Reserved
0
0
0
0
0
0
0
F0
Reserved
0
U U 0
0
0
0
0
(F) 0F
WDTMR
(F) 0E
Reserved
(F) 0D
SMR2
(F) 0C
Reserved
(F) 0B
SMR
(F) 0A
Reserved
(F) 09
Reserved
(F) 08
Reserved
(F) 07
Reserved
(F) 06
Reserved
(F) 05
Reserved
(F) 04
Reserved
(F) 03
Reserved
(F) 02
Reserved
(F) 01
Reserved
(F) 00
PCON
0
0
0
0
0
0
0
0
RESET CONDITION
U U U 0
0
0
0
0
U 0 U 0
0
0
0
0
0
0
0
0
0
0
1
0
U U U U U U U U
RESET CONDITION
(D) 0C
LVD
U U U U U U U U
(D) 0B
(D) 0A
(D) 09
HI8
LO8
HI16
U U U U U U U U
U U U U U U U U
(D) 08
(D) 07
LO16
TC16H
(D) 06
(D) 05
TC16L
TC8H
(D) 04
(D) 03
TC8L
Reserved
(D) 02
(D) 01
CTR2
CTR1
(D) 00
CTR0
Expanded Register File Architecture
P
4
FF
EXPANDED REG. BANK (D)
REGISTER**
EXPANDED REG. GROUP (0)
REGISTER**
5
FE
EXPANDED REG. BANK (F)
REGISTER**
*
6
A
R
Y
U U U U U U U U
U U U U U U U U
U U U U U U U U
U U U U U U U U
U U U U U U U U
U U U U U U U U
0
U U U U U U 0
0
0
0 U U U U U U
0 U U U U U 0
Z86D86
28-Pin Low-Voltage OTP Microcontroller
21
R253 RP
D7 D6 D5
D4 D3
D1
D2
D0
Expanded Register
File Pointer
Working Register
Pointer
Default setting after reset = 0000 0000
Figure 12. Register Pointer Register
Expanded Register File Control Registers (0D)
Figure 13, Figure 14, Figure 15, and Figure 16 show the expanded register file
control registers (0D).
CTR1 (0D) 0H
D7 D6 D5 D4 D3 D2 D1 D0
0 = P34 as Port Output *
1 = Timer8 Output
0 = Disable T8 Time-out Interrupt
1 = Enable T8 time-out Interrupt
0 = Disable T8 Data Capture Interrupt
1 = Enable T8 Data Capture Interrupt
00 = SCLK on T8
01 = SCLK/2 on T8
10 = SCLK/4 on T8
11 = SCLK/8 on T8
R = 0 No T8 Counter Time-out
R = 1 T8 Counter Time-out Occurred
W = 0 No Effect
W = 1 Reset Flag to 0
0 = Modulo-N
1 = Single Pass
R = 0 T8 Disabled *
R = 1 T8 Enabled
W = 0 Stop T8
W = 1 Enable T8
* Default setting after reset
Figure 13. TC8 Control Register—(0D) OH: Read/Write Except Where Noted
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
22
CTR1 (0D) 1H
D7 D6 D5 D4 D3 D2 D1 D0
Transmit Mode
R/W 0 Reserved
1 Reserved
Demodulation Mode
R 0 = No Falling Edge Detection
R 1 = Falling Edge Detection
W 0 = No Effect
W 1 = Reset Flag to 0
Transmit Mode
R/W 0 = T8_OUT is 0 initially
R/W 1 = T8_OUT is 1 initially
Demodulation Mode
R 0 = No Rising Edge Detection
R 1 = Rising Edge Detection
W 0 = No Effect
W 1 = Reset flag to 0
Transmit Mode
0 0 = Normal Operation
0 1 = Ping-Pong Mode
1 0 T16_OUT = 0
1 1 T16_OUT = 1
Demodulation Mode
0 0 = No Filter
0 1 = 4 SCLK Cycle Filter
1 0 = 8 SCLK Cycle Filter
1 1 = Reserved
Transmit Mode/T8/T16 Logic
0 0 = AND
0 1 = OR
1 0 = NOR
1 1 = NAND
Demodulation Mode
0 0 = Falling Edge Detection
0 1 = Rising Edge Detection
1 0 = Both Edge Detection
1 1 = Reserved
Note: Care must be taken in differentiating
transmit mode from demodulation mode.
Depending on which of these two modes is
operating, the CTR1 bit has different
functions.
Transmit Mode
0 = P36 as Port Output *
1 = P36 as T8/T16_OUT
Demodulation Mode
0 = P31 as Demodulator Input
1 = P20 as Demodulator Input
Note: Changing from one mode to
another cannot be done without
disabling the counter/timers.
Transmit/Demodulation Modes
0 = Transmit Mode *
1 = Demodulation Mode
* Default setting after reset
Figure 14. T8 and T16 Common Control Functions—(0D) 1H: Read/Write
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
23
CTR2 (0D) 02H
D7 D6 D5 D4 D3 D2 D1 D0
0 = P35 is Port Output *
1 = P35 is TC16 Output
0 = Disable T16 Time-out Interrupt
1 = Enable T16 time-out Interrupt
0 = Disable T16 Data Capture Interrupt
1 = Enable T16 Data Capture Interrupt
00 = SCLK on T16
01 = SCLK/2 on T16
10 = SCLK/4 on T16
11 = SCLK/8 on T16
R = 0 No T16 Time-out
R = 1 T16 Time-out Occurs
W = 0 No Effect
W = 1 Reset Flag to 0
Transmit Mode
0 = Modulo-N for T16
1 = Single Pass for T16
Demodulator Mode
0 = T16 Recognizes Edge
1 = T16 doe Not Recognize Edge
R = 0 T16 Disabled *
R = 1 T16 Enabled
W = 0 Stop T16
W = 1 Enable T16
* Default setting after reset
Figure 15. T16 Control Register—(0D) 2H: Read/Write Except Where Noted
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
24
LBD (0D) 0CH
D7 D6 D5 D4 D3 D2 D1 D0
Low Battery Detection at VLV + 0.4 V
0: disable*
1: enable
LBD Flag (read only)
0: LBD flag reset*
1: LBD flag set
Reserved (must be 0)
*Default
Figure 16. Low Battery Detection
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
25
Expanded Register File Control Registers (0F)
Figure 17 through Figure 30 show the expanded register file control registers (0F).
SMR (0F) 0B
D7 D6 D5 D4 D3 D2 D1 D0
SCLK/TCLK Divide-by-16
0 = OFF **
1 = ON
Reserved (must be 0)
Stop-Mode Recovery Source
000 = POR Only *
001 = Reserved
010 = P31
011 = P32
100 = P33
101 = P27
110 = P2 NOR 0–3
111 = P2 NOR 0–7
Stop Delay
Reserved (must be 1)
1 = ON*
Stop Recovery Level ***
0 = Low *
1 = High
Stop Flag
0 = POR *
1 = Stop Recovery **
* Default setting after reset
** Default setting after reset and Stop-Mode Recovery
*** At the XOR gate input
Figure 17. Stop-Mode Recovery Register—(0F) 0BH: D6–D0 = Write Only, D7 = Read
Only
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
26
SMR2 (0F) DH
D7 D6 D5 D4 D3 D2 D1 D0
Reserved (must be 0)
Reserved (must be 0)
Stop-Mode Recovery Source
000 = POR Only *
001 = NAND P20, P21, P22, P23
010 = NAND P20, P21, P22, P23, P24, P25, P26, P27
011 = NOR P31, P32, P33
100 = NAND P31, P32, P33
101 = NOR P31, P32, P33, P00, P07
110 = NAND P31, P32, P33, P00, P07
111 = NAND P31, P32, P33, P20, P21, P22
Reserved (must be 0)
Recovery Level **
0 = Low *
1 = High
Reserved (must be 0)
* Default setting after reset
** At the XOR gate input
Note: If used in conjunction with SMR,
either of the two specified events
causes a Stop-Mode Recovery.
Figure 18. Stop-Mode Recovery Register 2—(0F) 0DH: D2–D4, D6 Write Only
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
27
WDTMR (0F) 0F
D7 D6 D5 D4 D3 D2 D1 D0
WDT TAP INT RC OSC
00
5 ms min
01*
10 ms min
10
20 ms min
11
80 ms min
External Clock
256 TpC
512 TpC
1024 TpC
4096 TpC
WDT during HALT
0 = OFF
1 = ON*
WDT during STOP
0 = OFF
1 = ON*
XTAL/INT RC Select for WDT
0 = RC OSC
1 = XTAL
Reserved (must be 0)
* Default setting after reset
Figure 19. Watch-Dog Timer Register—(0F) 0FH: Write Only
PCON (FH) 00H
D7 D6 D5 D4 D3 D2 D1 D0
Comparator Output Port 3
0 P34, P37, Standard Output*
1 P34, P37, Comparator Output
Reserved (must be 1)
Port 0
0 = Open-drain
1 = Push-pull*
Reserved (must be 1)
*Default setting after reset
Figure 20. Port Configuration Register (PCON)—(0F) 0H: Write Only
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
28
R246 P2M
D7 D6 D5 D4 D3 D2 D1 D0
P27–P20 I/O Definition
0 = Defines bit as OUTPUT
1 = Defines bit as IINPUT *
*Default setting after reset
Figure 21. Port 2 Mode Register—F6H: Write Only
R247 P3M
D7 D6 D5 D4 D3 D2 D1 D0
0 = Port 2 Open-drain *
1 = Port 2 Push-Pull
0 = P31, P32 Digital Mode
1 = P31, P32 analog Mode
Reserved (must be 0)
*Default setting after reset
Figure 22. Port 3 Mode Register—F7H: Write Only
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
29
R248 P01M
D7
D6
D5
D4
D3
D2
D1
D0
P00–P03 Mode
0: Output
1: Input *
Reserved (Must be 0)
Reserved (Must be 1)
Reserved (Must be 0)
P07–P04 Mode
0: Output
1: Input *
Reserved; must be 0
* Default setting after reset; only P00, P01 and P07 are available on 20-pin
configurations.
Figure 23. Port 0 and 1 Mode Register—F8H: Write Only
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
30
R249 IPR
D7 D6 D5 D4 D3 D2 D1 D0
Interrupt Group Priority
000 = Reserved
001 = C>A>B
101 = A>B>C
011 = A>C>B
100 = B>C>A
101 = C>B>A
110 = B>A>C
111 = Reserved
IRQ1, IRQ, Priority (Group C)
0 = IRQ1>IRQ4
1 = IRQ4>IRQ1
IRQ0, IRQ2, Priority (Group B)
0 = IRQ2>IRQ0
1 = IRQ0>IRQ2
IRQ3, IRQ5, Priority (Group A)
0 = IRQ5>IRQ3
1 = IRQ3>IRQ5
Reserved (must be 0)
Figure 24. Interrupt Priority Register—F9H: Write Only
R250 IRQ
D7 D6 D5 D4 D3 D2 D1 D0
IRQ0 = P32 Input
IRQ1 = P23 Input
IRQ2 = P31 Input
IRQ3 = T16
IRQ4 = T8
IRQ5 = LBD
Inner Edge
P31 ↓ P32 ↓ = 00
P31 ↓ P32 ↑ = 01
P31 ↑ P32 ↓ = 10
P31 ↑↓ P32 ↑↓ = 11
Figure 25. Interrupt Request Register—FAH: Read/Write
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
31
R251 IMR
D7 D6 D5 D4 D3 D2 D1 D0
1 = Enables IRQ5–IRQ0
(D0 = IRQ0)
Reserved (must be 0)
0 = Master Interrupt Disable *
1 = Master Interrupt Enable **
* Default setting after reset
** Only by using E1, D1 instruction. D1 is required before changing the IMR register.
Figure 26. Interrupt Mask Register—FBH: Read/Write
R252 Flags
D7 D6 D5 D4 D3 D2 D1 D0
User Flag F1
User Flag F2
Half Carry Flag
Decimal Adjust Flag
Overflow Flag
Sign Flag
Zero Flag
Carry Flag
Figure 27. Flag Register—FCH: Read/Write
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
32
R253 RP
D7 D6 D5 D4 D3 D2 D1 D0
Expanded Register Bank
Pointer
Working Register
Pointer
Default setting after
reset = 0000 0000
Figure 28. Register Pointer—FDH: Read/Write
R254 SPH
D7 D6 D5 D4 D3 D2 D1 D0
General Purpose Register
Byte (SP15–SP8)
Figure 29. Stack Pointer High—FEH: Read/Write
R255 SPL
D7 D6 D5 D4 D3 D2 D1 D0
Stack Pointer Lower
Byte (SP7–SP0)
Figure 30. Stack Pointer Low—FFH: Read/Write
Register File
The register file (bank 0) consists of four I/O port registers, 237 general-purpose
registers, and 16 control and status registers (R0–R3, R4–R239, and R240–255,
respectively). Additional, there are two expanded registers groups in Banks D and
F. Instructions can access registers directly or indirectly through an 8-bit address
field, thereby allowing a short, 4-bit register address to use the Register Pointer
(Figure 31). In the 4-bit mode, the register file is divided into 16 working register
groups, each occupying 16 continuous locations. The Register Pointer addresses
the starting location of the active working register group.
Note: Working register group E0–EF can only be accessed through
working registers and indirect addressing modes.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
33
r7 r6
r5
r
4
r3 r
2 r1 r0
R253
The upper nibble of the register file address
provided by the register pointer specifies
the active working-register group
7F
70
6F
60
5F
50
4F
40
3F
30
2F
The lower nibble
of the register
file address
provided by the
Instruction points
to the specified
register
Specified Working
Register Group
20
1F
Register Group 1
10
0F
R15 to R0
Register Group 2
R15 to R4*
00
I/O Ports
R3 to R0*
* RP =00: Selects Register Group 0, Working Register 0
Figure 31. Register Pointer
Stack
The Z86D86 internal register file is used for the stack. An 8-bit Stack Pointer
(R255) is used for the internal stack that resides in the general-purpose registers
(R4–R239). SPH is used as a general-purpose register only when using internal
stacks.
Note: When SPH is used as a general-purpose register and Port 0 is
in address mode, the contents of SPH are loaded into Port 0
whenever the internal stack is accessed.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
34
Counter/Timer Registers
Table 8 describes the expanded register group D.
Table 8. Expanded Register Group D
(D)0Ch
LVD
(D)0Bh
HI8
(D)0Ah
LO8
(D)09h
HI16
(D)08h
LO16
(D)07h
TC16H
(D)06h
TC16L
(D)05h
TC8H
(D)04h
TC8L
(D)03h
Reserved
(D)02h
CTR2
(D)01h
CTR1
(D)00h
CTR0
Register Description
LBD(D)0Ch—Low Battery Detection Register
Bit 0 enables/disables the Low Battery Detection Circuit. Bit 1 flags if low battery is
detected. Interrupt 5 is triggered when the flag bit is set, given that IRQ5 is not
masked. See Table 9.
Note: The LVD flag will be valid after enabling the detection for 20 µS
(design estimation, not tested in production). LVD does not
work at STOP mode. It must be disabled during STOP mode in
order to reduce current.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
35
Table 9. LBD(D)0C—Low Battery Detection Register
Field
Bit Position
Description
LBD
765432--
Reserved
No effect
------1-
R
1
0*
LB flag set
LB flag reset
-------0
R/W
1
0*
Enable LBD
Disable LBD
Note:
*Default after POR
HI8(D)0Bh
This register (Table 10) holds the captured data from the output of the 8-bit
Counter/Timer0. This register is typically used to hold the number of counts when
the input signal is 1.
Table 10. HI8(D)0Bh
Field
Bit Position
T8_Capture_HI
76543210
Description
R
W
Captured Data
No Effect
L08(D)0Ah
This register (Table 11) holds the captured data from the output of the 8-bit
Counter/Timer0. This register is typically used to hold the number of counts when
the input signal is 0.
.
Table 11. L08(D)0Ah
Field
Bit Position
T8_Capture_L0
76543210
Description
R
W
Captured Data
No Effect
HI16(D)09h
This register (Table 12) holds the captured data from the output of the 16-bit
Counter/Timer16. This register holds the MS-Byte of the data.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
36
Table 12. HI16(D)09h
Field
Bit Position
T16_Capture_HI
76543210
Description
R
W
Captured Data
No Effect
L016(D)08h
This register (Table 13) holds the captured data from the output of the 16-bit
Counter/Timer16. This register holds the LS-Byte of the data.
Table 13. L016(D)08h
Field
Bit Position
T16_Capture_LO
76543210
Description
R
W
Captured Data
No Effect
TC16H(D)07h
Table 14 describes the Counter/Timer2 MS-Byte Hold Register.
Table 14. TC16H(D)07h
Field
Bit Position
Description
T16_Data_HI 76543210
R/W
Data
TC16L(D)06h
Table 15 describes the Counter/Timer2 LS-Byte Hold Register.
Table 15. TC16L(D)06h
Field
Bit Position
T16_Data_LO 76543210
Description
R/W
Data
TC8H(D)05h
Table 16 describes the Counter/Timer8 High Hold Register.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
37
Table 16. TC8H(D)05h
Field
Bit Position
T8_Level_HI
76543210
Description
R/W
Data
TC8L(D)04h
Table 17 describes the Counter/Timer8 Low Hold Register.
Table 17. TC8L(D)04h
Field
Bit Position
T8_Level_LO
76543210
Description
R/W
Data
CTR0 Counter/Timer8 Control Register
Table 18 describes the CTR0 (D)00 Counter/Timer8 Control Register.
Table 18. CTR0 (D)00 Counter/Timer8 Control Register
Field
Bit Position
T8_Enable
7-------
R
W
Value
Description
0*
1
0
1
Counter Disabled
Counter Enabled
Stop Counter
Enable Counter
Single/Modulo-N
-6-------
R/W
0
1
Modulo-N
Single Pass
Time_Out
--5------
R
0
1
0
1
No Counter Time-Out
Counter Time-Out Occurred
No Effect
Reset Flag to 0
W
---43---
R/W
00
01
10
11
SCLK
SCLK/2
SCLK/4
SCLK/8
Capture_INT_MASK -----2--
R/W
0
1
Disable Data Capture Int.
Enable Data Capture Int.
T8 _Clock
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
38
Table 18. CTR0 (D)00 Counter/Timer8 Control Register (Continued)
Field
Bit Position
Value
Description
Counter_INT_Mask ------1-
R/W
0
1
Disable Time-Out Int.
Enable Time-Out Int.
P34_Out
R/W
0*
1
P34 as Port Output
T8 Output on P34
-------0
Note:
* Indicates the value upon Power-On Reset.
T8 Enable
This field enables T8 when set (written) to 1.
Single/Modulo-N
When set to 0 (modulo-n), the counter reloads the initial value when the terminal
count is reached. When set to 1 (single pass), the counter stops when the terminal
count is reached.
Time-Out
This bit is set when T8 times out (terminal count reached). To reset this bit, a 1
must be written to this location.
Caution:
Writing a 1 is the only way to reset the Terminal Count
status condition. Therefore, you must reset this bit before
using/enabling the counter/timers.
The first clock of T8 might not exhibit complete clock width
and can occur anytime when enabled.
Note: Care must be taken when utilizing the OR or AND commands
to manipulate CTR0, bit 5 and CTR1, bits 0 and 1
(demodulation mode). These instructions use a Read-ModifyWrite sequence in which the current status from the CTR0 and
CTR1 registers is ORed or ANDed with the designated value
and then written back into the registers.
For example, when the status of bit 5 is 1, a timer reset condition occurs.
T8 Clock
This bit defines the frequency of the input signal to T8.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
39
Capture_INT_Mask
Set this bit to allow an interrupt when data is captured into either LO8 or HI8 upon
a positive or negative edge detection in demodulation mode.
Counter_INT_Mask
Set this bit to allow an interrupt when T8 has a time-out.
P34_Out
This bit defines whether P34 is used as a normal output pin or the T8 output.
CTR1 Counter/Timer T8 and T16 Common Control Register
This register controls the functions in common with the T8 and T16. See Table 19.
Table 19. CTR1(D)01h Register
Field
Bit Position
Mode
7-------
R/W
P36_Out/Demodulator_Input
-6------
R/W
Value
Description
0*
Transmit Mode
Demodulation Mode
Transmit Mode
Port Output
T8/T16 Output
Demodulation Mode
P31
P20
0*
1
0
1
T8/T16_Logic/Edge _Detect
Transmit Mode
AND
OR
NOR
NAND
Demodulation Mode
Falling Edge
Rising Edge
Both Edges
Reserved
R/W
--54----
00
01
10
11
00
01
10
11
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
40
Table 19. CTR1(D)01h Register (Continued)
Field
Bit Position
Transmit_Submode/Glitch_Filter
----32--
Value
Description
Transmit Mode
Normal Operation
Ping-Pong Mode
T16_Out = 0
T16_Out = 1
Demodulation Mode
No Filter
4 SCLK Cycle
8 SCLK Cycle
Reserved
R/W
00
01
10
11
00
01
10
11
Initial_T8_Out/Rising Edge
Transmit Mode
T8_OUT is 0 Initially
T8_OUT is 1 Initially
Demodulation Mode
No Rising Edge
Rising Edge Detected
No Effect
Reset Flag to 0
------1R/W
0
1
R
0
1
0
1
W
Initial_T16_Out/Falling_Edge
Transmit Mode
T16_OUT is 0 initially.
T16_OUT is 1 initially.
Demodulation Mode
No Falling Edge
Falling Edge Detected
No Effect
Reset Flag to 0
-------0
R/W
0
1
R
0
1
0
1
W
Note:
*Default upon Power-On Reset
Mode
If it is 0, the counter/timers are in the transmit mode; otherwise, they are in the
demodulation mode.
P36_Out/Demodulator_Input
In transmit mode, this bit defines whether P36 is used as a normal output pin or
the combined output of T8 and T16.
In demodulation mode, this bit defines whether the input signal to the counter/timers is from P20 or P31.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
41
T8/T16_Logic/Edge _Detect
In transmit mode, this field defines how the outputs of T8 and T16 are combined
(AND, OR, NOR, NAND).
In demodulation mode, this field defines which edge needs to be detected by the
edge detector.
Transmit_Submode/Glitch Filter
In transmit mode, this field defines whether T8 and T16 are in the “Ping-Pong”
mode or in independent normal operation mode. Setting this field to “Normal
Operation Mode” terminates the “Ping-Pong Mode” operation. When set to 10,
T16 is immediately forced to a 0; a setting of 11 forces T16 to output a 1.
In demodulation mode, this field defines the width of the glitch that needs to be filtered out.
Initial_T8_Out/Rising_Edge
In transmit mode, if 0, the output of T8 is set to 0 when it starts to count. If 1, the
output of T8 is set to 1 when it starts to count. When the counter is not enabled
and this bit is set to 1 or 0, T8_OUT is set to the opposite state of this bit. This
measure ensures that when the clock is enabled, a transition occurs to the initial
state set by CTR1, D1.
In demodulation mode, this bit is set to 1 when a rising edge is detected in the
input signal. In order to reset it, a 1 must be written to this location.
Initial_T16 Out/Falling _Edge
In transmit mode, if it is 0, the output of T16 is set to 0 when it starts to count. If it
is 1, the output of T16 is set to 1 when it starts to count. This bit is effective only in
Normal or Ping-Pong Mode (CTR1, D3, D2). When the counter is not enabled and
this bit is set, T16_OUT is set to the opposite state of this bit. This measure
ensures that when the clock is enabled, a transition occurs to the initial state set
by CTR1, D0.
In demodulation mode, this bit is set to 1 when a falling edge is detected in the
input signal. In order to reset it, a 1 must be written to this location.
Note: Modifying CTR1 (D1 or D0) while the counters are enabled
causes unpredictable output from T8/16_OUT.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
42
CTR2 Counter/Timer16 Control Register
Table 20 describes the contents of the CTR2 register.
Table 20. CTR2 (D)02h: Counter/Timer16 Control Register
Field
Bit Position
T16_Enable
7-------
R
W
Single/Modulo-N
Value
Description
0*
1
0
1
Counter Disabled
Counter Enabled
Stop Counter
Enable Counter
0
1
Transmit Mode
Modulo-N
Single Pass
Demodulation Mode
T16 Recognizes Edge
T16 Does Not Recognize Edge
0
1
0
1
No Counter Time-Out
Counter Time-Out Occurred
No Effect
Reset Flag to 0
R/W
-6------
0
1
Time_Out
R
--5-----
W
T16 _Clock
---43---
R/W
00
01
10
11
SCLK
SCLK/2
SCLK/4
SCLK/8
Capture_INT_Mask
-----2--
R/W
0
1
Disable Data Capture Int.
Enable Data Capture Int.
Counter_INT_Mask
------1-
R/W
0
Disable Time-Out Int.
Enable Time-Out Int.
P35_Out
-------0
R/W
0*
1
P35 as Port Output
T16 Output on P35
Note:
* Indicates the value upon Power-On Reset.
T16_Enable
This field enables T16 when set to 1.
Single/Modulo-N
In transmit mode, when this bit is set to 0, the counter reloads the initial value
when terminal count is reached. When this bit is set to 1, the counter stops when
the terminal count is reached.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
43
In demodulation mode, when this bit is set to 0, T16 captures and reloads on
detection of all the edges. When this bit is set to 1, T16 captures and detects on
the first edge, but ignores the subsequent edges. For details, see “T16 Demodulation Mode” on page 51.
Time_Out
This bit is set when T16 times out (terminal count reached). In order to reset this
bit, a 1 must be written to this location.
T16_Clock
This bit defines the frequency of the input signal to Counter/Timer16.
Capture_INT_Mask
This bit is set to allow an interrupt when data is captured into LO16 and HI16.
Counter_INT_Mask
This bit is set to allow an interrupt when T16 times out.
P35_Out
This bit defines whether P35 is used as a normal output pin or T16 output.
Counter/Timer Functional Blocks
The following are the counter/timer functional blocks:
•
•
•
•
Input circuit
Eight-bit counter/timer circuits (page 44)
Sixteen-bit counter/timer circuits (page 50)
Output circuit (page 54)
Input Circuit
The edge detector monitors the input signal on P31 or P20. Based on CTR1 D5–
D4, a pulse is generated at the Pos Edge or Neg Edge line when an edge is
detected. Glitches in the input signal that have a width less than specified (CTR1
D3, D2) are filtered out (see Figure 32).
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
44
CTR1 D5, D4
P31
Pos Edge
MUX
Glitch Filter
Edge Detector
P20
Neg Edge
CTR1 D6
CTR1 D3, D2
Figure 32. Glitch Filter Circuitry
Eight-Bit Counter/Timer Circuits
Figure 33 shows the 8-bit counter/timer circuits.
Z8 Data Bus
CTR0 D2
Pos Edge
IRQ4
Neg Edge
HI8
LO8
CTR0 D4, D3
SCLK
CTR0 D1
Clock
Clock
Select
8-Bit
Counter T8
T8_OUT
TC8L
TC8H
Z8 Data Bus
Figure 33. 8-Bit Counter/Timer Circuits
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
45
T8 Transmit Mode
Before T8 is enabled, the output of T8 depends on CTR1, D1. If it is 0, T8_OUT is
1. If it is 1, T8_OUT is 0.
When T8 is enabled, the output T8_OUT switches to the initial value (CTR1, D1).
If the initial value (CTR1, D1) is 0, TC8L is loaded; otherwise, TC8H is loaded into
the counter (see Figure 34). In Single-Pass Mode (CTR0, D6), T8 counts down to
0 and stops, T8_OUT toggles, and the time-out status bit (CTR0, D5) is set. A
time-out interrupt can be generated if it is enabled (CTR0, D1). See Figure 35. In
Modulo-N Mode, upon reaching terminal count, T8_OUT is toggled, but no interrupt is generated. Then T8 loads a new count (if the T8_OUT level now is 0),
TC8L is loaded; if it is 1, TC8H is loaded. T8 counts down to 0, toggles T8_OUT,
sets the time-out status bit (CTR0, D5) and generates an interrupt if enabled
(CTR0, D1). One cycle is thus completed. T8 then loads from TC8H or TC8L
according to the T8_OUT level, and repeats the cycle. See Figure 36.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
46
T8 (8-Bit)
Transmit Mode
No
T8_Enable Bit
Set CTR0, D7
Reset T8_Enable Bit
Yes
CTR1, D1
Value
Load TC8L
Reset T8_OUT
Load TC8H
Set T8_OUT
Set Time-out Status Bit
(CTR0, D5) and generate
Temeout_Int if enabled
Enable T8
No
T8_Timeout
Yes
Single Pass
Single Pass?
Modulo-N
1
0
T8_OUT Value
Load TC8L
Reset T8_OUT
Load TC8H
Set T8_OUT
Enable T8
No
Set Time-out Status Bit
(CTR0, D5) and generate
Timeout_Int if enabled
T8_Timeout
Yes
Figure 34. Transmit Mode Flowchart
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
47
TC8H Counts
Counter Enable Command,
T8_OUT switches to its
initial value (CTR1 D1)
T8_OUT toggles
Time-out Interrupt
Figure 35. T8_OUT in Single-Pass Mode
T8_OUT Toggles
T8_OUT
TC8L
TC8H
Counter Enable Command,
T8_OUT switches to its
initial value (CTR1 D1)
TC8L
TC8H
TC8L
Time-out
Interrupt
Time-out
Interrupt
Figure 36. T8_OUT in Modulo-N Mode
You can modify the values in TC8H or TC8L at any time. The new values take
effect when they are loaded. T ensure known operation, do not to write these registers at the time the values are to be loaded into the counter/timer. An initial count
of 1 is not allowed (a nonfunction occurs). An initial count of 0 causes TC8 to count
from 0 to FFh to FEh.
Note: “h” is used for hexadecimal values.
Transition from 0 to FFh is not a time-out condition.
Caution:
Do not use the same instructions for stopping the counter/
timers and setting the status bits.
Two successive commands are necessary. First, the counter/timers must be
stopped, and second, the status bits must be reset. These commands are
required because it takes one counter/timer clock interval for the initiated event to
actually occur.
T8 Demodulation Mode
You need to program TC8L and TC8H to FFh. After T8 is enabled, when the first
edge (rising, falling, or both, depending on CTR1, D5, D4) is detected, it starts to
count down. When a subsequent edge (rising, falling, or both, depending on
CTR1, D5, D4) is detected during counting, the current value of T8 is one's complemented and put into one of the capture registers. If it is a positive edge, data is
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
48
put into LO8; if it is a negative edge, HI8. From that point, one of the edge-detect
status bits (CTR1, D1, D0) is set, and an interrupt can be generated if enabled
(CTR0, D2). Meanwhile, T8 is loaded with FFh and starts counting again. If T8
reaches 0, the time-out status bit (CTR0, D5) is set, an interrupt can be generated
if enabled (CTR0, D1), and T8 continues counting from FFh (see Figure 37 and
Figure 38).
T8 (8-Bit)
Count Capture
T8_Enable
(Set by User)
No
Yes
Edge
Present
No
Yes
What Kind
of Edge
Pos
Neg
T8 HI8
T8 LO8
FFh T8
Figure 37. Demodulation Mode Count Capture Flowchart
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
49
T8 (8-Bit)
Demodulation
Mode
No
T8 Enable
CTR0, D7
Yes
FFh TC8
No
First Edge
Present
Yes
Disable T8
Enable TC8
No
T8_Enable Bit Set
Yes
No
Edge Present
Yes
No
T8 Time-out
Set Edge Present Status
Bit and Trigger Data
Capture Int. if enabled
Yes
Set Edge Present Status
Bit and Trigger Time
Out Int. if enabled
Continue Counting
Figure 38. Demodulation Mode Flowchart
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
50
Sixteen-Bit Counter/Timer Circuits
Figure 39 shows the 16-bit counter/timer circuits.
Z8 Data Bus
CTR2 D2
Pos Edge
IRQ3
Neg Edge
HI16
LO16
CTR2 D4, D3
SCLK
CTR2 D1
16-Bit
Counter
T16
Clock
Clock
Select
T16_OUT
TC16L
TC16H
Z8 Data Bus
Figure 39. 16-Bit Counter/Timer Circuits
T16 Transmit Mode
In Normal or Ping-Pong Mode, the output of T16, when not enabled, is dependent
on CTR1, D0. If the result is a 0, T16_OUT is a 1; if it is a 1, T16_OUT is 0. You
can force the output of T16 to either a 0 or 1 whether it is enabled or not by programming CTR1 D3, D2 to a 10 or 11.
When T16 is enabled, TC16H * 256 + TC16L is loaded, and T16_OUT is switched
to its initial value (CTR1, D0). When T16 counts down to 0, T16_OUT is toggled
(in Normal or Ping-Pong Mode), an interrupt is generated if enabled (CTR2, D1),
and a status bit (CTR2, D5) is set.
Note: Global interrupts override this function as described in
“Interrupts” on page 54.
If T16 is in Single-Pass Mode, T16 is stopped at this point (see Figure 40). If T16
is in Modulo-N Mode, T16 is loaded with TC16H * 256 + TC16L and the counting
continues (see Figure 41).
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
51
TC16H*256+TC16L Counts
Counter Enable Command,
T16_OUT switches to its
initial value (CTR1 D0)
T16_OUT toggles
Time-out Interrupt
Figure 40. T16_OUT in Single-Pass Mode
TC16H*256+TCl16
T16_OUT
Counter Enable Command,
T16_OUT switches to its
initial value (CTR1 D0)
TC16H*256+TCl16
TC16H*256+TCl16
T16_OUT Toggles,
Time-out Interrupt
T16_OUT Toggles,
Time-out Interrupt
Figure 41. T16_OUT in Modulo-N Mode
You can modify the values in TC16H and TC16L at any time. The new values take
effect when they are loaded. To ensure known operation, do not load these registers at the time the values are to be loaded into the counter/timer. An initial count
of 1 is not allowed. An initial count of 0 causes T16 to count from 0 to FFFFh to
FFFEh. Transition from 0 to FFFFh is not a time-out condition.
T16 Demodulation Mode
You need to program TC16L and TC16H to FFh. After T16 is enabled, when the
first edge (rising, falling, or both, depending on CTR1 D5, D4) is detected, T16
captures HI16 and LO16, reloads, and begins counting.
If D6 of CTR2 Is 0
When a subsequent edge (rising, falling, or both, depending on CTR1, D5, D4) is
detected during counting, the current count in T16 is one's complemented and put
into HI16 and LO16. When data is captured, one of the edge-detect status bits
(CTR1, D1, D0) is set, and an interrupt is generated if enabled (CTR2, D2). From
that point, T16 is loaded with FFFFh and starts again.
This T16 mode is generally used to measure mark time, defined as the length of
time between carrier signal bursts (marks).
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
52
If D6 of CTR2 Is 1
T16 ignores the subsequent edges in the input signal and continues counting
down. A time-out of T8 causes T16 to capture its current value and generate an
interrupt if enabled (CTR2, D2). In this case, T16 does not reload and continues
counting. If the D6 bit of CTR2 is toggled (by writing a 0 and then a 1 to it), T16
captures and reloads on the next edge (rising, falling, or both, depending on
CTR1, D5, D4), thereby continuing to ignore subsequent edges.
This T16 mode is generally used to measure mark time, defined by the length of
time between active carrier signal bursts (marks).
When T16 reaches 0, it continues counting from FFFFh. Meanwhile, a status bit
(CTR2, D5) is set, and an interrupt time-out can be generated if enabled (CTR2,
D1).
Ping-Pong Mode
This operation mode (see Figure 42) is only valid in transmit mode. T8 and T16
must be programmed in Single-Pass Mode (CTR0, D6; CTR2, D6), and PingPong Mode must be programmed in CTR1, D3, D2. You can begin the operation
by enabling either T8 or T16 (CTR0, D7 or CTR2, D7). For example, if T8 is
enabled, T8_OUT is set to this initial value (CTR1, D1). According to T8_OUT's
level, TC8H or TC8L is loaded into T8. After the terminal count is reached, T8 is
disabled, and T16 is enabled. T16_OUT switches to its initial value (CTR1, D0),
data from TC16H and TC16L is loaded, and T16 starts to count. After T16 reaches
the terminal count, it stops, T8 is enabled again, and the entire cycle repeats.
Interrupts can be allowed when T8 or T16 reaches terminal control (CTR0, D1;
CTR2, D1). To stop the Ping-Pong operation, write 00 to bits D3 and D2 of CTR1.
Note: Enabling Ping-Pong operation while the counter/timers are
running might cause intermittent counter/timer function. Disable
the counter/timers and then reset the status flags before
instituting this operation.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
53
Enable
TC8
Time-out
Enable
Ping-Pong
CTR1, D3, D2
TC16
Time-out
Figure 42. Ping-Pong Mode
Starting Ping-Pong Mode
First, make sure both counter/timers are not running. Then set T8 into SinglePass Mode (CTR0, D6), set T16 into Single-Pass Mode (CTR2, D6), and set the
Ping-Pong Mode (CTR1, D2, D3). These instructions do not have to be in any particular order. Finally, start Ping-Pong Mode by enabling either T8 (CTR0, D7) or
T16 (CTR2, D7).
During Ping-Pong Mode
The enable bits of T8 and T16 (CTR0, D7; CTR2, D7) are set and cleared alternately by hardware. The time-out bits (CTR0, D5; CTR2, D5) are set every time
the counter/timers reach the terminal count.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
54
Output Circuit
Figure 43 shows the output circuit.
P34_INTERNAL
MUX
P34
CTR0 D0
P36_INTERNAL
T8_OUT
T16_OUT
CTR1 D2
AND/OR/NOR/NAND
Logic
MUX
MUX
P36
CTR1 D6
CTR1 D5, D4
P35_INTERNAL
CTR1 D3
MUX
P35
CTR2 D0
Figure 43. Output Circuit
Interrupts
The Z86D86 features six different interrupts. The interrupts are maskable and prioritized, as shown in Figure 44. The six sources are divided as follows: three
sources are claimed by Port 3 lines P33–P31, two by the counter/timers, and one
by LBD (seeTable 21). The Interrupt Mask Register, globally or individually,
enables or disables the six interrupt requests.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
55
P31 P32
IRQ Register
D6, D7
P33
Interrupt
Edge Select
IRQ0 IRQ1
IRQ2
Timer
8
Timer
16
IRQ3
Low Battery
Detection
IRQ4
IRQ5
IRQ
IMR
5
IPR
Global
Interrupt
Enable
Interrupt
Request
Priority
Logic
Vector Select
Figure 44. Interrupt Block Diagram
Table 21. Interrupt Types, Sources, and Vectors
PS008905-0105
Name
Source
Vector Location Comments
IRQ0
P32
0,1
External (P32), Rising Falling Edge Triggered
IRQ1
P33
2,3
External (P33), Falling Edge Triggered
IRQ2
P31, TIN
4,5
External (P31), Rising Falling Edge Triggered
IRQ3
T16
6,7
Internal
IRQ4
T8
8,9
Internal
IRQ5
LBD
10,11
Internal
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
56
When more than one interrupt is pending, priorities are resolved by a programmable priority encoder controlled by the Interrupt Priority Register. An interrupt
machine cycle is activated when an interrupt request is granted. As a result, all
subsequent interrupt are disabled, and the Program Counter and Status Flags are
saved. The cycle then branches to the program memory vector location reserved
for that interrupt. All Z86D86 interrupts are vectored through locations in the program memory. This memory location and the next byte contain the 16-bit address
of the interrupt service routine for that particular interrupt request. To accommodate polled interrupt systems, interrupt inputs are masked, and the Interrupt
Request register is polled to determine which of the interrupt requests require service.
An interrupt resulting from AN1 is mapped into IRQ2, and an interrupt from AN2 is
mapped into IRQ0. Interrupts IRQ2 and IRQ0 can be rising, falling, or both edge
triggered; all are programmable by the user. The software can poll to identify the
state of the pin.
Programming bits for the Interrupt Edge Select are located in the IRQ Register
(R250), bits D7 and D6. The configuration is indicated in Table 22.
Table 22. IRQ Register*
IRQ
Interrupt Edge
D7
D6
IRQ2 (P31)
IRQ0 (P32)
0
0
F
F
0
1
F
R
1
0
R
F
1
1
R/F
R/F
Notes:
F = Falling Edge
R = Rising Edge
*In stop mode, the comparators are turned off.
Clock
The Z86D86 on-chip oscillator has a high-gain, parallel-resonant amplifier for connection to a crystal, LC, ceramic resonator, or any suitable external clock source
(XTAL1 = Input, XTAL2 = Output). The crystal must be AT cut, 1 MHz to 8 MHz
maximum, with a series resistance (RS) less than or equal to 100 Ohms. The
Z86D86 on-chip oscillator can be driven with a low-cost RC network or other suitable external clock source.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
57
For 32-kHz crystal operation, an external feedback resistor (Rf) and a serial resistor (Rd) are required. See Figure 45.
XTAL1
XTAL1
XTAL1
C1
C1
C1
L
R
XTAL2
XTAL2
XTAL2
C2
C2
Ceramic Resonator or Crystal
C1, C2 = 47pF TYP*
f = 8 MHz
C1
Rf
C2
LC
C1, C2 = 22 pF
RC
@ 3V VCC (TYP)
L = 130 µH*
f = 3 MHz*
C1 = 33 pF*
R = 1K*
XTAL1
XTAL1
XTAL2
XTAL2
Rd
External Clock
32 kHz XTAL
C1 = 20 pF, C = 33 pF
* Preliminary value including pin parasitics
Rd = 56–470K
Rf = 10M
Figure 45. Oscillator Configuration
The crystal needs to be connected across XTAL1 and XTAL2 using the recommended capacitors (capacitance greater than or equal to 22 pF) from each pin to
ground. The RC oscillator configuration is an external resistor connected from
XTAL1 to XTAL2, with a frequency-setting capacitor from XTAL1 to ground (see
Figure 45).
Power-On Reset (POR)
A timer circuit clocked by a dedicated on-board RC oscillator is used for the
Power-On Reset (POR) timer function. The POR time allows VCC and the oscillator circuit to stabilize before instruction execution begins.
The POR timer circuit is a one-shot timer triggered by one of three conditions:
•
•
•
PS008905-0105
Power Fail to Power OK status including waking up from VLV Standby
Stop-Mode Recovery (if D5 of SMR = 1)
WDT Time-Out
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
58
The POR time is a nominal 5 ms. Bit 5 of the Stop-Mode Register determines
whether the POR timer is bypassed after Stop-Mode Recovery (typical for external
clock, RC, and LC oscillators).
HALT
HALT turns off the internal CPU clock, but not the XTAL oscillation. The counter/
timers and external interrupts IRQ0, IRQ1, IRQ2, IRQ3, and IRQ4 remain active.
The devices are recovered by interrupts, either externally or internally generated.
An interrupt request must be executed (enabled) to exit HALT Mode. After the
interrupt service routine, the program continues from the instruction after the
HALT.
STOP
This instruction turns off the internal clock and external crystal oscillation and
reduces the standby current to 10 µA or less. STOP Mode is terminated only by a
reset (such as WDT time-out), POR, SMR, or external reset. This termination
causes the processor to restart the application program at address 000CH. To
enter STOP (or HALT) mode, you need to first flush the instruction pipeline to
avoid suspending execution in mid-instruction. To execute this action, you must
execute a NOP (op code = FFH) immediately before the appropriate sleep instruction. For example:
FF
6F
NOP
STOP
; clear the pipeline
; enter STOP Mode
FF
7F
NOP
HALT
; clear the pipeline
; enter HALT Mode
or
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
59
Port Configuration Register (PCON)
The PCON register configures the comparator output on Port 3. It is located in the
expanded register 2 at Bank F, location 00, as shown in Figure 46.
PCON (FH) 00H
D7 D6 D5 D4 D3 D2 D1 D0
Comparator Output Port 3
0 P34, P37, Standard Output*
1 P34, P37, Comparator Output
Reserved (must be 1)
Port 0
0 = Open-drain
1 = Push-pull*
Reserved (must be 1)
*Default setting after reset
Figure 46. Port Configuration Register (PCON)—Write Only
Comparator Output Port 3 (D0)
Bit 0 controls the comparator used in Port 3. A 1 in this location brings the comparator outputs to P34 and P37, and a 0 releases the port to its standard (/O configuration.
Port 0 Output Mode (D2)
Bit 2 controls the output mode of Port 0. A 1 in this location sets the output to
push-pull, and a 0 sets the output to open-drain.
Stop-Mode Recovery Register (SMR)
This register selects the clock divide value and determines the mode of StopMode Recovery (Figure 47). All bits are write only except bit 7, which is read only.
Bit 7 is a flag bit that is hardware set on the condition of STOP recovery and reset
by a power-on cycle. Bit 6 controls whether a low level or a high level at the XORgate input is required from the recovery source. Bit 5 controls the reset delay after
recovery. Bits D2, D3, and D4, or the SMR register, specify the source of the StopMode Recovery signal. Bit D0 determines if SCLK/TCLK (shown in Figure 48) are
divided by 16 or not. The SMR is located in Bank F of the Expanded Register
Group at address 0BH.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
60
SMR (0F) 0B
D7 D6 D5 D4 D3 D2 D1 D0
SCLK/TCLK Divide-by-16
0 = OFF **
1 = ON
Reserved (must be 0)
Stop-Mode Recovery Source
000 = POR Only *
001 = Reserved
010 = P31
011 = P32
100 = P33
101 = P27
110 = P2 NOR 0–3
111 = P2 NOR 0–7
Stop Delay
Reserved (must be 1)
1 = ON *
Stop Recovery Level ***
0 = Low *
1 = High
Stop Flag
0 = POR *
1 = Stop Recovery **
* Default setting after reset
** Default setting after reset and Stop-Mode Recovery
*** At the XOR gate input
Figure 47. Stop-Mode Recovery Register
OSC
Divide
by 2
Divide
by 16
SCLK
SMR, D0 TCLK
Figure 48. SCLK Circuit
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
61
SCLK/TCLK Divide-by-16 Select (D0)
D0 of the SMR controls a Divide-by-16 prescaler of SCLK/TCLK. The purpose of
this control is to selectively reduce device power consumption during normal processor execution (SCLK control) and/or HALT Mode (where TCLK sources interrupt logic). After Stop-Mode Recovery, this bit is set to a 0.
Stop-Mode Recovery Source (D2, D3, and D4)
These three bits of the SMR specify the wake-up source of the STOP recovery
(Figure 49 and Table 23 on page 63).
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
62
SMR D4 D3 D2
0 0 0
SMR D4 D3 D2
0 0 0
VCC
VCC
SMR D4 D3 D2
0 1 0
SMR D4 D3 D2
0 0 1
P20
P23
P31
S1
SMR D4 D3 D2
0 1 0
SMR D4 D3 D2
0 1 1
P20
P27
P32
S2
SMR D4 D3 D2
0 1 1
SMR D4 D3 D2
1 0 0
P31
P32
P33
P33
S3
To IRQ1
SMR D4 D3 D2
1 0 0
S4
SMR D4 D3 D2
1 0 1
P31
P32
P33
P27
P20
SMR D4 D3 D2
1 0 1
SMR D4 D3 D2
1 1 0
P31
P32
P33
P00
P07
P23
SMR D4 D3 D2
1 1 0
SMR D4 D3 D2
1 1 1
P31
P32
P33
P00
P07
P20
P27
SMR D6
SMR D4 D3 D2
1 1 1
P31
P32
P33
P20
P21
P22
To RESET and WDT
Circuitry (Active Low)
SMR2 D6
Figure 49. Stop-Mode Recovery Source
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
63
Table 23. Stop-Mode Recovery Source
SMR:432
Operation
D4
D3
D2
Description of Action
0
0
0
POR and/or external reset recovery
0
0
1
Reserved
0
1
0
P31 transition
0
1
1
P32 transition
1
0
0
P33 transition
1
0
1
P27 transition
1
1
0
Logical NOR of P20 through P23
1
1
1
Logical NOR of P20 through P27
Note: Any Port 2 bit defined as an output drives the corresponding
input to the default state to allow the remaining inputs to control
the AND/OR function. Refer to “Stop-Mode Recovery Register
2 (SMR2)” on page 64 for other recover sources.
Stop-Mode Recovery Delay Select (D5)
This bit, if low, disables the 5-ms RESET delay after Stop-Mode Recovery. The
default configuration of this bit is one. If the “fast” wake up is selected, the StopMode Recovery source must be kept active for at least 5TpC.
Stop-Mode Recovery Edge Select (D6)
A 1 in this bit position indicates that a High level on any one of the recovery
sources wakes the Z86D86 from STOP Mode. A 0 indicates Low level recovery.
The default is 0 on POR.
Cold or Warm Start (D7)
This bit is read only. It is set to 1 when the device is recovered from stop mode.
The bit is set to 0 when the device reset is other than Stop-Mode Recovery
(SMR).
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
64
Stop-Mode Recovery Register 2 (SMR2)
This register determines the mode of Stop-Mode Recovery for SMR2 (see
Figure 50).
SMR2 (0F) DH
D7 D6 D5 D4 D3 D2 D1 D0
Reserved (must be 0)
Reserved (must be 0)
Stop-Mode Recovery Source 2
000 = POR Only *
001 = NAND P20, P21, P22, P23
010 = NAND P20, P21, P22, P33, P24, P25, P26, P27
011 = NOR P31, P32, P33
100 = NAND P31, P32, P33
101 = NOR P31, P32, P33, P00, P07
110 = NAND P31, P32, P33, P00, P07
111 = NAND P31, P32, P33, P20, P21, P22
Reserved (must be 0)
Recovery Level **
0 = Low *
1 = High
Reserved (must be 0)
* Default setting after reset
** At the XOR gate input
Note: If used in conjunction with SMR,
either of the two specified events
causes a Stop-Mode Recovery.
Figure 50. Stop-Mode Recovery Register 2—(0F) DH:D2–D4, D6 Write Only
If SMR2 is used in conjunction with SMR, either of the specified events causes a
Stop-Mode Recovery.
Note: Port pins configured as outputs are ignored as a SMR or SMR2
recovery source. For example, if the NAND or P23–P20 is
selected as the recovery source and P20 is configured as an
output, the remaining SMR pins (P23–P21) form the NAND
equation.
Table 24 describes the contents of the Stop-Mode Recovery register 2.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
65
Table 24. SMR2(F)0Dh: Stop-Mode Recovery Register 2
Field
Bit Position
Value
Description
Reserved
7-------
0
Reserved (Must be 0)
Recovery Level
-6------
0*
1
Low
High
Reserved
--5-----
0
Reserved (Must be 0)
Source
---432--
000*
001
010
011
100
101
110
111
A. POR Only
B. NAND of P23–P20
C. NAND or P27–P20
D. NOR of P33–P31
E. NAND of P33–P31
F. NOR of P33–P31, P00, P07
G. NAND of P33–P31, P00, P07
H. NAND of P33–P31, P22–P20
Reserved
------10
00
Reserved (Must be 0)
W
W
Notes:
*Indicates the value upon Power-On Reset
Port pins configured as outputs are ignored as a SMR recovery source.
Watch-Dog Timer Mode Register (WDTMR)
The WDT is a retriggerable, one-shot timer that resets the Z8 if it reaches its terminal count. The WDT must initially be enabled by executing the WDT instruction.
On subsequent executions of the WDT instruction, the WDT circuit is refreshed.
The WDT circuit is driven by an on-board RC oscillator or external oscillator from
the XTAL1 pin. The WDT instruction affects the Zero (Z), Sign (S), and Overflow
(V) flags.
The POR clock source is selected with bit 4 of the WDT register. Bits 0 and 1 control a tap circuit that determines the minimum time-out period. Bit 2 determines
whether the WDT is active during HALT, and Bit 3 determines WDT activity during
STOP. Bits 5 through 7 are reserved (Figure 51). This register is accessible only
during the first 60 processor cycles (122 XTAL clocks) from the execution of the
first instruction after Power-On-Reset, Watch-Dog Reset, or a Stop-Mode Recovery (Figure 51). After this point, the register cannot be modified by any means,
intentional or otherwise. The WDTMR cannot be read. The register is located in
Bank F of the Expanded Register Group at address location 0FH. The WDTMR is
organized as shown in Figure 51.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
66
WDTMR (0F) 0F
D7 D6 D5 D4 D3 D2 D1 D0
WDT TAP INT RC OSC
00
5 ms min
01*
10 ms min
10
20 ms min
11
80 ms min
External Clock
256 TpC
512 TpC
1024 TpC
4096 TpC
WDT during HALT
0 = OFF
1 = ON*
WDT during STOP
0 = OFF
1 = ON*
XTAL/INT RC Select for WDT
0 = RC OSC
1 = XTAL
Reserved (must be 0)
* Default setting after reset
Figure 51. Watch-Dog Timer Mode Register—Write Only
WDT Time Select (D0, D1)
This bit selects the WDT time period. It is configured as indicated in Table 25.
Table 25. WDT Time Select*
D1
D0
Time-Out of Internal RC OSC
Time-Out of XTAL Clock
0
0
5 ms min
256 TpC
0
1
10 ms min
512 TpC
1
0
20 ms min
1024 TpC
1
1
80 ms min
4096 TpC
Notes:
*TpC = XTAL clock cycle. The default on reset is 10 ms.
WDTMR During HALT (D2)
This bit determines whether or not the WDT is active during HALT Mode. A 1 indicates active during HALT. The default is 1.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
67
WDTMR During STOP (D3)
This bit determines whether or not the WDT is active during STOP Mode. Since
the XTAL clock is stopped during STOP Mode, the on-board RC has to be
selected as the clock source to the WDT/POR counter. A 1 indicates active during
STOP. The default is 1.
Clock Source for WDT (D4)
This bit determines which oscillator source is used to clock the internal POR and
WDT counter chain. If the bit is a 1, the internal RC oscillator is bypassed, and the
POR and WDT clock source is driven from the external pin, XTAL1. The default
configuration of this bit is 0, which selects the RC oscillator. See Figure 51.
5 Clock
Filter
*CLR2
CLK
18 Clock Reset
Generator
Reset
Internal
Reset
Active
High
WDT
TAP SELECT
Ck source
Select
(WDTMR)
XTAL
Internal
RD OSC.
VDD
VBO/VLV
2V Ref.
+
–
POR 5 ms
10 ms
20 ms 80 ms
CLK 256 TpC 512 TpC 1024 TpC 4096 TpC
M
U
X
WDT/POR Counter Chain
*CLR1
Low Operating
Voltage Det.
VCC
WDT
12 ns Glitch Filter
From Stop Mode
Recovery Source
Stop Delay
Select (SMR)
*CLR1 and CLR2 enable the WDT/POR and
18 Clock Reset timers upon a Low-to-High input translation.
Figure 51. Resets and WDT
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
68
Mask Selectable Options
There are six Mask Selectable Options to choose from based on ROM code
requirements. These are listed in Table 26.
Table 26. Mask Selectable Options
RC/Other
RC/XTAL
32 kHz XTAL
On/Off
Port 04–07 Pull-Ups
On/Off
Port 00–03 Pull-Ups
On/Off
Port 20–27 Pull-Ups
On/Off
Port 0:0–3 Mouse Mode 0.4 VCC Trip
On/Off
Low Voltage/Standby
An on-chip Voltage Comparator checks that the VCC is at the required level for
correct operation of the device. Reset is globally driven when VCC falls below VLV.
A further small drop in VCC causes the XTAL1 and XTAL2 circuitry to stop the
crystal or resonator clock. Typical low-voltage power consumpion in this Low Voltage Standby mode (ILV) is about 100 µA. If the VCC is allowed to stay above Vram,
the RAM content is preserved. When the power level is returned to above VLV, the
device performs a POR and functions normally.
Low Battery Detection and Flag
A Low Battery Detection circuit can be used to signal dropping voltage levels.
Expanded Register Bank 0Dh register 0Ch bit 0 and 1 are used for this option.
Bit D0 is used to enable/disable this function.
Bit D1 is the status flag bit of this LBD.
The minimum operating voltage varies with the temperature and operating frequency, while VLV varies with temperature only.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
69
Ordering Information
Figure 52 shows the 28-pin SOIC package diagram. Figure 53 shows the 28-pin
DIP package diagram.
Figure 52. 28-Pin SOIC Package Diagram
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
70
Figure 53. 28-Pin DIP Package Diagram
Z86D86 8.0 MHz
28-Pin DIP
Z86D8608PSC
28-Pin SOIC
Z86D8608SSC
For fast results, contact your local ZiLOG sales office for assistance in ordering
the part desired.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
71
Codes
Figure 54 shows an example of what the ordering codes represent.
Example:
Z 86D86
08 P
S
C
is a Z86D86, 8 MHz, DIP, 0 °C to 70 °C, Plastic Standard Flow
Environmental Flow
Temperature
Package
Speed
Product Number
ZiLOG Prefix
Figure 54. Ordering Codes Example
Package
P = Plastic DIP
S = SOIC
Temperature
S = 0 °C to +70 °C
Speed
8 = 8.0 MHz
Environmental
C = Plastic Standard
Precharacterization Product
The product represented by this document is newly introduced and ZiLOG has not
completed the full characterization of the product. The document states what
ZiLOG knows about this product at this time, but additional features or nonconformance with some aspects of the document may be found, either by ZiLOG or its
customers in the course of further application and characterization work. In addition, ZiLOG cautions that delivery may be uncertain at times, due to startup yield
issues.
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y
Z86D86
28-Pin Low-Voltage OTP Microcontroller
72
Customer Feedback Form
Z86D86 28-Pin Low-Voltage OTP Microcontroller
If you experience any problems while operating this product, or if you note any inaccuracies while reading this product specification, please copy and complete this form, then
mail or fax it to ZiLOG (see Return Information, below). We also welcome your suggestions!
Customer Information
Name
Country
Company
Phone
Address
Fax
City/State/Zip
email
Product Information
Serial # or Board Fab #/Rev #
Software Version
Document Number
Host Computer Description/Type
Return Information
ZiLOG
System Test/Customer Support
532 Race Street
San Jose, CA 95126-3432
Fax: (408) 558-8300
Problem Description or Suggestion
Provide a complete description of the problem or your suggestion. If you are reporting a
specific problem, include all steps leading up to the occurrence of the problem. Attach
additional pages as necessary.
_______________________________________________________________________________
_______________________________________________________________________________
_______________________________________________________________________________
PS008905-0105
P
R
E
L
I
M
I
N
A
R
Y