MAXIM MAXQ2000-RBX

Rev 2; 12/04
Low-Power LCD Microcontroller
Features
The MAXQ2000 microcontroller is a low-power, 16-bit
device that incorporates a liquid-crystal display (LCD)
interface that can drive up to 100 (-RBX) or 132 (-RAX)
segments. The MAXQ2000 is uniquely suited for the
blood-glucose monitoring market, but can be used in
any application that requires high performance and lowpower operation. The device can operate at a maximum
of either 14MHz (VDD > 1.8V) or 20MHz (VDD > 2.25V).
The MAXQ2000 has 32kWords of flash memory, 1kWord
of RAM, three 16-bit timers, and one or two universal
synchronous/asynchronous receiver/transmitters
(UARTs). Flash memory aids prototyping and low-volume production. The microcontroller core is powered by
a 1.8V supply, with a separate I/O supply for optimum
flexibility. An ultra-low-power sleep mode makes these
parts ideal for battery-powered, portable equipment.
♦ High-Performance, Low-Power, 16-Bit RISC Core
DC to 20MHz Operation, Approaching 1MIPS per MHz
Dual 1.8V Core/3V I/O Enables Low Power/Flexible
Interfacing
33 Instructions, Most Single Cycle
Three Independent Data Pointers Accelerate Data
Movement with Automatic Increment/Decrement
16-Level Hardware Stack
16-Bit Instruction Word, 16-Bit Data Bus
16 x 16-Bit, General-Purpose Working Registers
Optimized for C-Complier (High-Speed/Density Code)
♦ Program and Data Memory
32kWords Flash Memory, Mask ROM for HighVolume Applications
10,000 Flash Write/Erase Cycles
1kWord of Internal Data RAM
JTAG/Serial Boot Loader for Programming
♦ Peripheral Features
Up to 50 General-Purpose I/O Pins
100/132 Segment LCD Driver
Up to 4 COM and 36 Segments
Static, 1/2, and 1/3 LCD Bias Supported
No External Resistors Required
SPITM and 1-Wire® (-RAX Only) Hardware I/O Ports
One or Two Serial UARTs
One-Cycle, 16 x 16 Hardware Multiply/Accumulate
with 48-Bit Accumulator
Three 16-Bit Programmable Timers/Counters
8-Bit, Subsecond, System Timer/Alarm
32-Bit, Binary Real-Time Clock with Time-of-Day Alarm
Programmable Watchdog Timer
♦ Flexible Programming Interface
Bootloader Simplifies Programming
In-System Programming Through JTAG
Supports In-Application Programming of Flash Memory
♦ Ultra-Low Power Consumption
190µA typ at 8MHz Flash Operation, PMM1 at 2.2V
700nA typ in Lowest Power Stop Mode
Low-Power 32kHz Mode and Divide-by-256 Mode
Applications
Medical Instrumentation
Battery-Powered and Portable Devices
Electrochemical and Optical Sensors
Industrial Control
Data-Acquisition Systems and Data Loggers
Home Appliances
Consumer Electronics
Thermostats/Humidity Sensors
Security Sensors
Gas and Chemical Sensors
HVAC
Smart Transmitters
Typical Operating Circuit and Pin Configurations appear at
end of data sheet.
Ordering Information
TEMP RANGE
PROGRAM
MEMORY
DATA
MEMORY
LCD
SEGMENTS
EXTERNAL
INTERRUPTS
UARTS
MAXQ2000-RAX
-40°C to +85°C
32kWord Flash
1kWord SRAM
132
16
2
68 QFN
MAXQ2000-RBX
-40°C to +85°C
32kWord Flash
1kWord SRAM
100
14
1
56 TQFN
PART
PINPACKAGE
MAXQ is a trademark of Maxim Integrated Products, Inc.
SPI is a trademark of Motorola, Inc.
1-Wire is a registered trademark of Dallas Semiconductor Corp.
Note: Some revisions of this device may incorporate deviations from published specifications known as errata. Multiple revisions of
any device may be simultaneously available through various sales channels. For information about device errata, go to:
www.maxim-ic.com/errata.
______________________________________________ Maxim Integrated Products
For pricing, delivery, and ordering information, please contact Maxim/Dallas Direct! at
1-888-629-4642, or visit Maxim’s website at www.maxim-ic.com.
1
MAXQ2000
General Description
MAXQ2000
Low-Power LCD Microcontroller
ABSOLUTE MAXIMUM RATINGS
Voltage Range on Any Pin Relative to
Ground Except VDD .................................-0.5V to (VDDIO + 0.5)V
Voltage Range on VDD Relative to Ground .........-0.5V to +2.75V
Voltage Range on VDDIO Relative to Ground........-0.5V to +3.6V
Operating Temperature Range ...........................-40°C to +85°C
Storage Temperature Range .............................-65°C to +150°C
Soldering Temperature ....................See IPC/JEDEC J-STD-020
.................................................................................Specification
Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device. These are stress ratings only, and functional
operation of the device at these or any other conditions beyond those indicated in the operational sections of the specifications is not implied. Exposure to
absolute maximum rating conditions for extended periods may affect device reliability.
ELECTRICAL CHARACTERISTICS
(VDD = VDD(MIN) to VDD(MAX), VDDIO = 2.7V to 3.6V, TA = -40°C to +85°C.) (Note 1)
PARAMETER
Core Supply Voltage
I/O Supply Voltage
Active Current,
fHFIN = 14MHz
(Note 2)
Active Current,
fHFIN = 20MHz
(Note 2)
SYMBOL
VDD
TYP
MAX
1.8
2.5
2.75
Flash programming
2.25
2.5
2.75
VDD
3.6
IDD1
/1 mode
6.0
9.2
IDD2
/2 mode
5.6
8.6
IDD3
/4 mode
3.4
5.1
IDD4
/8 mode
1.9
2.9
0.7
UNITS
V
V
mA
IDD5
PMM1 mode
0.5
IDD6
PMM2 mode; 32KIN = 32.768kHz
4.8
7.6
IDD1
/1 mode
6.5
10.4
IDD2
/2 mode
5.9
9.6
IDD3
/4 mode
3.8
6.2
IDD4
/8 mode
2.2
3.8
IDD5
PMM1 mode
0.6
1.4
IDD6
PMM2 mode; 32KIN = 32.768kHz
4.8
8.1
Execution from flash memory, 20MHz,
VDD = 2.2V, TA = +25°C
5.1
Execution from flash memory, 8MHz,
/8 mode, VDD = 2.2V, TA = +25°C
0.85
Execution from flash memory, 8MHz,
PMM1 mode, VDD = 2.2V, TA = +25°C
0.19
Execution from RAM, 8MHz,
/8 mode, VDD = 2.2V, TA = +25°C
0.30
Execution from RAM, 1MHz,
/1 mode, VDD = 2.2V, TA = +25°C
0.14
-40°C < TA < +25°C
0.7
55
TA = +85°C
20
550
RTC enabled; HFIN ≥ 14MHz;
all I/O disconnected
1
50
µA
VDDIO
V
ISTOP(VDD)
Digital I/O Supply Current
IDDIO
Input High Voltage:
HFIN and 32KIN
VIH1
2
CONDITIONS
VDDIO
Active Current
Stop-Mode Current
MIN
32k x 16 flash
_____________________________________________________________________
0.75 x
VDDIO
mA
mA
µA
Low-Power LCD Microcontroller
(VDD = VDD(MIN) to VDD(MAX), VDDIO = 2.7V to 3.6V, TA = -40°C to +85°C.) (Note 1)
PARAMETER
SYMBOL
Input High Voltage:
P6.4–P6.5 and P7.0–P7.1
VIH2
Input High Voltage:
All Other Pins
CONDITIONS
MAX
UNITS
0.75 x
VDDIO
VLCD
V
VIH3
0.75 x
VDDIO
VDDIO
V
Input Low Voltage:
HFIN and 32KIN
VIL1
0
0.2 x
VDDIO
V
Input Low Voltage:
All Other Pins
VIL2
0
0.25 x
VDDIO
V
Output High Voltage:
P6.4–P6.5 and P7.0–P7.1
VOH1
SVS on; IOH(MAX) = 0.75mA; VLCD = 2.7V
VLCD 0.2
V
Output High Voltage:
All Other Pins
VOH2
IOH(MAX) = 0.75mA; VDDIO =1.8V
VDDIO 0.2
V
Output Low Voltage for
All Other Pins
VOL1
IOL = 1.0mA; VDDIO = 1.8V
GND
0.2
V
Output Low Voltage for
P6.4–P6.5 and P7.0–P7.1
VOL2
IOL = 1.4mA; VDDIO = 2.7V
GND
0.2
V
SVS on, VLCD = 3.3V
MIN
TYP
Input Leakage Current
IL
Internal pullup disabled
-100
+100
nA
Input Pullup Current
IIP
Internal pullup enabled
-20
-5
µA
3.6
V
LCD INTERFACE
LCD Reference Voltage
VLCD
LCD Bias Voltage 1
VLCD1
1/3 bias
VADJ + 2/3 (VLCD - VADJ)
V
LCD Bias Voltage 2
VLCD2
1/3 bias
V
LCD Adjustment Voltage
VADJ
Guaranteed by design
VADJ + 1/3 (VLCD - VADJ)
0.4 x
0
LCD Bias Resistor
RLCD
LCD Adjustment Resistor
RLADJ
LCD Segment Voltage
2.7
LRA4:LRA0 = 0
3.3
V
100
kΩ
200
kΩ
When segment is driven at VLCD level;
VLCD = 3V; ISEGxx = -3µA;
guaranteed by design
VLCD 0.02
VLCD
When segment is driven at VLCD1 level;
VLCD1 = 2V; ISEGxx = -3µA;
guaranteed by design
VLCD1 0.02
VLCD1
VSEGxx
V
When segment is driven at VLCD2 level;
VLCD2 = 1V; ISEGxx = -3µA;
guaranteed by design
VLCD2 0.02
VLCD2
When segment is driven at VADJ level;
VADJ = 0V; ISEGxx = -3µA;
guaranteed by design
-0.1
VADJ
_____________________________________________________________________
3
MAXQ2000
ELECTRICAL CHARACTERISTICS (continued)
MAXQ2000
Low-Power LCD Microcontroller
ELECTRICAL CHARACTERISTICS (continued)
(VDD = VDD(MIN) to VDD(MAX), VDDIO = 2.7V to 3.6V, TA = -40°C to +85°C.) (Note 1)
PARAMETER
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
EXTERNAL CLOCK SOURCE
External oscillator, VDD ≥ 2.25V
External-Clock Frequency
fHFIN
External-Clock Period
tCLCL
System-Clock Frequency
fCK
System-Clock Period
tCK
0
20
External oscillator, VDD < 2.25V
0
14
External crystal, VDD ≥ 2.25V
3
20
External crystal, VDD < 2.25V
3
14
Flash programming, VDD ≥ 2.25V
2
20
Flash programming, VDD < 2.25V
2
14
48% minimum duty cycle
50
MHz
ns
2.25V ≤ VDD ≤ 2.75V
0
20
1.8V ≤ VDD ≤ 2.75V
0
14
50
MHz
ns
REAL-TIME CLOCK
RTC Input Frequency
f32KIN
32kHz watch crystal
32.768
kHz
JTAG/FLASH PROGRAMMING
Flash Erase Time
Mass erase
200
Page erase
20
Flash Programming Time
ms
2.5
Write/Erase Cycles
Data Retention
5.0
ms
10,000
cycles
100
years
SPI TIMING
SPI Master Operating
Frequency
1/tMCK
fCK / 2
MHz
SPI Slave Operating
Frequency
1/tSCK
fCK / 8
MHz
SCLK Output Pulse-Width
High/Low
tMCH, tMCL
SCLK Input Pulse-Width
High/Low
tSCH, tSCL
MOSI Output Hold Time
after SCLK Sample Edge
tMOH
MOSI Output Valid to
Sample Edge
tMCK / 2
- 25
ns
tSCK / 2
ns
tMCK / 2
- 25
ns
tMOV
tMCK / 2
- 25
ns
MISO Input Valid to SCLK
Sample Edge Rise/Fall
Setup
tMIS
30
ns
MISO Input to SCLK
Sample Edge Rise/Fall
Hold
tMIH
0
ns
4
CL = 50pF
_____________________________________________________________________
Low-Power LCD Microcontroller
(VDD = VDD(MIN) to VDD(MAX), VDDIO = 2.7V to 3.6V, TA = -40°C to +85°C.) (Note 1)
PARAMETER
SCLK Inactive to MOSI
Inactive
SYMBOL
CONDITIONS
MIN
TYP
MAX
UNITS
tMLH
tMCK / 2
- 25
ns
MOSI Input to SCLK
Sample Edge Rise/Fall
Setup
tSIS
30
ns
MOSI Input from SCLK
Sample Edge Transition
Hold
tSIH
tCK + 25
ns
MISO Output Valid after
SCLK Shift Edge
Transition
tSOV
SSEL Inactive
tSSH
tCK + 25
ns
SCLK Inactive to SSEL
Rising
tSD
tCK + 25
ns
MISO Output Disabled
after CS Edge Rise
tSLH
3tCK + 25
2tCK + 50
ns
ns
Note 1: Specifications to -40°C are guaranteed by design and not production tested.
Note 2: Measured on the VDD pin with VDD = 2.75V and not in reset.
_____________________________________________________________________
5
MAXQ2000
ELECTRICAL CHARACTERISTICS (continued)
Low-Power LCD Microcontroller
MAXQ2000
SPI Master Timing
SHIFT
SAMPLE
SHIFT
SAMPLE
SSEL
tMCK
SCLK
CKPOL/CKPHA
0/1 or 1/0
tMCH
SCLK
CKPOL/CKPHA
0/0 or 1/1
tMCL
tMOH
tMOV
MSB
MOSI
MSB-1
LSB
tMIH
tMIS
MSB
MISO
tMLH
MSB-1
LSB
SPI Slave Timing
SHIFT
SAMPLE
SHIFT
SAMPLE
tSSE
tSSH
SSEL
tSD
tSCK
SCLK
CKPOL/CKPHA
0/1 or 1/0
tSCH
SCLK
CKPOL/CKPHA
0/0 or 1/1
tSCL
tSIH
tSIS
MOSI
MSB
MSB-1
LSB
tSLH
tSOV
MISO
6
MSB
MSB-1
LSB
_____________________________________________________________________
Low-Power LCD Microcontroller
DIGITAL SUPPLY CURRENT
vs. CLOCK FREQUENCY
TA = 0°C
TA = -40°C
7
MAXQ2000 toc01
8
IDD1 (mA)
6
5
TA = +25°C
4
TA = +85°C
3
2
1
VDD = 2.75V
0
0
5
10
15
20
fHFIN (MHz)
Pin Description
PIN
NAME
FUNCTION
TQFN
QFN
40
49
VDD
22
27
VDDIO
I/O Supply Voltage
23, 35
28, 42
GND
Ground
45
54
VLCD
LCD Bias-Control Voltage. Highest LCD drive voltage used with static bias. Connected to an external
source.
46
55
VLCD1
LCD Bias, Voltage 1. LCD drive voltage used with 1/2 and 1/3 LCD bias. An internal resistordivider sets the voltage. External resistors and capacitors can be used to change the LCD voltage
or drive capability at this pin.
47
56
VLCD2
LCD Bias, Voltage 2. LCD drive voltage used with 1/3 LCD bias. An internal resistor-divider sets
the voltage. External resistors and capacitors can be used to change LCD voltage or drive
capability at this pin.
48
57
VADJ
LCD Adjustment Voltage. Connect to an external resistor to provide external control of the LCD
contrast. Leave disconnected for internal contrast adjustment.
Digital Supply Voltage
28
33
RESET
Digital, Active-Low, Reset Input/Output. The CPU is held in reset when this is low and begins
executing from the reset vector when released. The pin includes pullup current source and should
be driven by an open-drain, external source capable of sinking in excess of 2mA. This pin is
driven low as an output when an internal reset condition occurs.
42
51
HFXIN
High-Frequency Crystal Input. Connect an external crystal or resonator between HFXIN and
HFXOUT as the high-frequency system clock. Alternatively, HFXIN is the input for an external,
high-frequency clock source when HFXOUT is floating.
41
50
HFXOUT
High-Frequency Crystal Output/Input. Connect an external crystal or resonator between HFXIN
and HFXOUT as the high-frequency system clock. Alternatively, float HFXOUT when an external,
high-frequency clock source is connected to the HFXIN pin.
_____________________________________________________________________
7
MAXQ2000
Typical Operating Characteristics
MAXQ2000
Low-Power LCD Microcontroller
Pin Description (continued)
PIN
NAME
FUNCTION
TQFN
QFN
29
34
32KIN
32kHz Crystal Input. Connect an external, 32kHz watch crystal between 32KIN and 32KOUT as
the low-frequency system clock. Alternatively, 32KIN is the input for an external, 32kHz clock
source when 32KOUT is floating.
30
35
32KOUT
32kHz Crystal Output/Input. Connect an external, 32kHz watch crystal between 32KIN and
32KOUT as the low-frequency system clock. Alternatively, float 32KOUT when an external, 32kHz
clock source is connected to the 32KIN pin.
General-Purpose, 8-Bit, Digital, I/O, Type-C Port; LCD Segment-Driver Output. These port pins
function as both bidirectional I/O pins and LCD segment-drive outputs. All port pins are defaulted
as input with weak pullup after a reset. Enabling a pin’s LCD function disables the generalpurpose I/O on the pin. Setting the PCF1 bit enables the LCD for all pins on this port and disables
the general-purpose I/O function on all pins.
56-PIN
68-PIN
PORT
ALTERNATE FUNCTION
1–8
66, 67,
68; 1–5
P1.0–P1.7;
SEG8–
SEG15
1
66
P1.0
SEG8
2
67
P1.1
SEG9
3
68
P1.2
SEG10
4
1
P1.3
SEG11
5
2
P1.4
SEG12
6
3
P1.5
SEG13
7
4
P1.6
SEG14
8
5
P1.7
SEG15
General-Purpose, 8-Bit, Digital, I/O, Type-C Port; LCD Segment-Driver Output. These port pins
function as both bidirectional I/O pins and LCD segment-drive outputs. All port pins are defaulted
as input with weak pullup after a reset. Enabling a pin’s LCD function disables the generalpurpose I/O on the pin. Setting the PCF2 bit enables the LCD for all pins on this port and disables
the general-purpose I/O function on all pins.
ALTERNATE FUNCTIONS
56-PIN
68-PIN
PORT
56-PIN
68-PIN
9–12
8
6–13
P2.0–P2.7;
SEG16–
SEG23
—
6
P2.0
—
SEG16
—
7
P2.1
—
SEG17
—
8
P2.2
—
SEG18
—
9
P2.3
—
SEG19
9
10
P2.4
SEG16
SEG20
10
11
P2.5
SEG17
SEG21
11
12
P2.6
SEG18
SEG22
12
13
P2.7
SEG19
SEG23
_____________________________________________________________________
Low-Power LCD Microcontroller
PIN
TQFN
QFN
NAME
FUNCTION
General-Purpose, Digital, I/O, Type-D Port; LCD Segment-Driver Output; External EdgeSelectable Interrupt. This port functions as both bidirectional I/O pins and LCD segment-drive
outputs. All port pins are defaulted as inputs with weak pullups after a reset. The port pads can be
configured as an external interrupt for pins 7 to 4. If the external interrupt is enabled, the LCD function
on the associated pin is disabled. Setting the PCF3 bit enables the LCD for all pins on this port and
disables the general-purpose I/O function on all pins.
13–16
14–21
It is possible to mix the LCD and interrupt functions on the same port. To do this, the interrupt
enable must be established prior to setting the PCF0 bit. Care must be taken not to enable the
external interrupt while the LCD is in normal operational mode, as this could result in potentially
harmful contention between the LCD controller output and the external source connected to the
P3.0–P3.7; interrupt input.
SEGx;
ALTERNATE FUNCTIONS
INT4–INT7
56-PIN
68-PIN
PORT
56-PIN
68-PIN
—
14
P3.0
—
SEG24
—
15
P3.1
—
SEG25
—
16
P3.2
—
SEG26
—
17
P3.3
—
SEG27
13
18
P3.4
SEG20/INT4
SEG28/INT4
14
19
P3.5
SEG21/INT5
SEG29/INT5
15
20
P3.6
SEG22/INT6
SEG30/INT6
16
21
P3.7
SEG23/INT7
SEG31/INT7
LCD Segment-Driver Output; LCD Common-Drive Output. The selection of a pin function as either
segment or its alternative common-mode signal is controlled by the choice of duty cycle (DUTY1:0).
17–21
22–26
SEGx;
COM3–
COM0
56-PIN
68-PIN
17
18
FUNCTION
ALTERNATE FUNCTIONS
56-PIN
68-PIN
22
SEG24
SEG32
—
23
SEG25
SEG33
COM3
19
24
SEG26
SEG34
COM2
20
25
SEG27
SEG35
COM1
21
26
—
COM0
—
General-Purpose, Digital, I/O, Type-D Port; Debug Port Signal; External Edge-Selectable
Interrupt. Pins default to JTAG on POR; other functions must be enabled from software.
24–27
29–32
P4.0–P4.3;
TCK/TDI/
TMS/TDO;
INT8, INT9
56-PIN
68-PIN
PORT
ALTERNATE FUNCTIONS
24
29
P4.0
TCK
INT8
25
30
P4.1
TDI
INT9
26
31
P4.2
TMS
—
27
32
P4.3
TDO
—
_____________________________________________________________________
9
MAXQ2000
Pin Description (continued)
MAXQ2000
Low-Power LCD Microcontroller
Pin Description (continued)
PIN
NAME
FUNCTION
TQFN
QFN
—
36
P5.2/RX1/
INT10
General-Purpose, Digital, I/O, Type-D Port; Serial Port 1 Receive; External Edge-Selectable
Interrupt 10
—
37
P5.3/TX1/
INT11
General-Purpose, Digital, I/O, Type-D Port; Serial Port 1 Transmit; External Edge-Selectable
Interrupt 11
31
38
P5.4/SS
General-Purpose, Digital, I/O, Type-C Port; Active-Low, SPI, Slave-Select Input. Becomes the
slave-select input in SPI mode.
32
39
P5.5;
MOSI
General-Purpose, Digital, I/O, Type-C Port; SPI, Master-Out Slave-In Output. Data is clocked
out of the microcontroller on SCLK’s falling edge and into the slave device on SCLK’s rising edge.
Becomes MISO input in SPI mode.
33
40
P5.6;
SCLK
General-Purpose, Digital, I/O, Type-C Port; SPI, Clock Output. Becomes SCLK input in SPI
mode but limited to SYSCLK / 8.
34
41
General-Purpose, Digital, I/O, Type-C Port; SPI, Master-In Slave-Out Input. Data is clocked out
P5.7/MISO of the slave on SCLK’s falling edge and into the microcontroller on SCLK’s rising edge. Becomes
MOSI output in slave mode.
36
43
P6.0/T1B/
INT12
37
44
P6.1/T1/
INT13
General-Purpose, Digital, I/O Type-D Port; Timer 1 Output (PWM); External Edge-Selectable
Interrupt 13
—
45
P6.2/T2B/
OW_OUT
General-Purpose, Digital, I/O, Type-D Port; Timer 2 Alternative Output (PWM); 1-Wire Data
Output
—
46
P6.3/T2/
OW_IN
38
47
P6.4/T0B/
WKOUT0
39
48
P6.5/T0/
WKOUT1
General-Purpose, Digital, I/O, Type-C Port; Timer 0 Output (PWM); Wakeup Output 1
43
52
P7.0/TX0/
INT14
General-Purpose, Digital, I/O, Type-D Port; Serial Port 0 Transmit; External, Edge-Selectable
Interrupt 14
44
53
P7.1/RX0/
INT15
General-Purpose, Digital, I/O, Type-D Port; Serial Port 0 Receive; External Edge-Selectable
Interrupt 15
10
General-Purpose, Digital, I/O, Type-D Port; Timer 1 Alternative Output (PWM); External EdgeSelectable Interrupt 12
General-Purpose, Digital, I/O, Type-D Port; Timer 2 Output (PWM); 1-Wire Data Input
General-Purpose, Digital, I/O, Type-C Port; Timer 0 Alternative Output (PWM); Wakeup
Output 0
____________________________________________________________________
Low-Power LCD Microcontroller
PIN
TQFN
QFN
NAME
FUNCTION
General-Purpose, Digital, I/O, Type-D Port; LCD Segment-Driver Output; External EdgeSelectable Interrupt. This port functions as both bidirectional I/O pins and LCD segment-drive
outputs. All port pins are defaulted as input with weak pullup after a reset. The port pads can be
configured as an external interrupt for pins 7 to 4. If the external interrupt is enabled, the LCD function
on the associated pin is disabled. Setting the PCF0 bit enables the LCD for all pins on this port and
disables the general-purpose I/O function on all pins.
49–56
—
58–65
—
It is possible to mix the LCD and interrupt functions on the same port. To do this, the interrupt
enable must be established prior to setting the PCF0 bit. Care must be taken not to enable the
external interrupt while the LCD is in normal operational mode, as this could result in potentially
P0.0–P0.7;
harmful contention between the LCD controller output and the external source connected to the
SEG0–
interrupt input.
SEG7;
56-PIN
68-PIN
PORT
ALTERNATE FUNCTIONS
INT0–INT3
49
58
P0.0
SEG0
—
EP
50
59
P0.1
SEG1
—
51
60
P0.2
SEG2
—
52
61
P0.3
SEG3
—
53
62
P0.4
SEG4
INT0
54
63
P0.5
SEG5
INT1
55
64
P0.6
SEG6
INT2
56
65
P0.7
SEG7
INT3
Exposed Paddle. Exposed paddle is on the under side of the package. It should be left unconnected.
____________________________________________________________________
11
MAXQ2000
Pin Description (continued)
Low-Power LCD Microcontroller
MAXQ2000
Block Diagram
VDDIO
VLCD
SS
SCLK
3WINT
3/4-WIRE (SPI)
INTERFACE
WKUP
P5.6/SCLK
P5.7/MISO
WK_OUT
WKOUT_EN
1WINT
1-WIRE
INTERFACE
INTERRUPT
CONTROLLER
T0INT
WDINT
WATCHDOG
TIMER
SYS_AL
DAY_AL
T0CLK
T1INT
TIMER0
T1CLK
T2INT
TIMER1
T2CLK
TIMER2
OWOUT
OWIN
P6.4/T0/WKOUT
T0
T0B
T1
T1B
T2
T2B
P6.5/T0B/WKOUT
P6.1/T1/INT13
P6.0/T1B/INT12
P6.3/T2/OWIN
P6.2/T2B/OWOUT
PAD DRIVERS
MAXQ2000
WDCLK
P5.4/SS
P5.5/MOSI
MOSI
MISO
IOINT
TXD0
U1INT
U2INT
P7.0/TX0/INT14
SERIAL
UART1
RXD0
P7.1/RX0/INT15
TXD1
P5.3/TX1/INT11
SERIAL
UART2
RXD1
P5.2/RX1/INT10
SEG[28:31]/P3[4:7]/INT[4:7]
REGISTER
FILE
DPTR0
DPTR1
DPTR2
VDD
SEG[0]:SEG32
SEG[24:27]/P3[0:3]
SEG[16:23]/P2[0:7]
SEG[8:15]/P1[0:7]
SEG[0:3]/P0[0:3]
P4.0/TCK/INT8
P4.1/TDI/INT9
P4.2/TMS
P4.3/TDO
32k x 16
(64kByte)
FLASH ROM
OR
MASK ROM
16-BIT
RISC CPU
EMULATION/
DOWNLOAD
RESET
HF OSC HFCLK
HFXOUT
32KIN
32KOUT
VDDIO
32k
OSC
SCLKDIV
2:1
MUX
32KCLK
3
2:1
MUXES
VLCD
16 x 16
HW
MULTIPLY
SYSCLK
WDDIV
TCLKDIV
GND
LCD BIAS
CONTROL
2k x 8
RAM
GND
HFXIN
SEG[4:7]/P0[4:7]/INT[0:3]
17
x 8 LCD
DISPLAY
RAM
WDCLK
T0CLK
VLCD1
T1CLK
T2CLK
RTC AND
ALARMS
32KHz
HF OSC / 128
SYS_AL
DAY_AL
LCD
CONTROLLER/
DRIVER
VLCD2
LCD
CLK
SELECT
VADJ
GNDIO
SEG[32]/INT16
COM[0]
COM[3:1]/SEG[33:35]
12
____________________________________________________________________
Low-Power LCD Microcontroller
The following is an introduction to the primary features
of the microcontroller. More detailed descriptions of the
device features can be found in the data sheets, errata
sheets, and user’s guides described later in the
Additional Documentation section.
MAXQ Core Architecture
The MAXQ2000 is a low-cost, high-performance,
CMOS, fully static, 16-bit RISC microcontroller with flash
memory and an integrated 100- or 132-segment LCD
controller. It is structured on a highly advanced, accumulator-based, 16-bit RISC architecture. Fetch and execution operations are completed in one cycle without
pipelining, because the instruction contains both the op
code and data. The result is a streamlined 20 million
instructions-per-second (MIPS) microcontroller.
The highly efficient core is supported by a 16-level
hardware stack, enabling fast subroutine calling and
task switching. Data can be quickly and efficiently
manipulated with three internal data pointers. Multiple
data pointers allow more than one function to access
data memory without having to save and restore data
pointers each time. The data pointers can automatically
increment or decrement following an operation, eliminating the need for software intervention. As a result,
application speed is greatly increased.
Instruction Set
The instruction set is composed of fixed-length, 16-bit
instructions that operate on registers and memory locations. The instruction set is highly orthogonal, allowing
arithmetic and logical operations to use any register
along with the accumulator. Special-function registers
control the peripherals and are subdivided into register
modules. The family architecture is modular, so that
new devices and modules can reuse code developed
for existing products.
The architecture is transport-triggered. This means that
writes or reads from certain register locations can also
cause side effects to occur. These side effects form the
basis for the higher-level op codes defined by the
assembler, such as ADDC, OR, JUMP, etc. The op
codes are actually implemented as MOVE instructions
between certain register locations, while the assembler
handles the encoding, which need not be a concern to
the programmer.
The 16-bit instruction word is designed for efficient execution. Bit 15 indicates the format for the source field of
the instruction. Bits 0 to 7 of the instruction represent the
source for the transfer. Depending on the value of the
format field, this can either be an immediate value or a
source register. If this field represents a register, the
lower four bits contain the module specifier and the
upper four bits contain the register index in that module.
Bits 8 to 14 represent the destination for the transfer.
This value always represents a destination register, with
the lower four bits containing the module specifier and
the upper three bits containing the register subindex
within that module. Any time that it is necessary to
directly select one of the upper 24 registers as a destination, the prefix register, PFX, is needed to supply the
extra destination bits. This prefix register write is inserted automatically by the assembler and requires only
one additional execution cycle.
Memory Organization
The device incorporates several memory areas:
• 4kWords utility ROM,
• 32kWords of flash memory for program storage,
• 1kWord of SRAM for storage of temporary variables, and
• 16-level stack memory for storage of program return
addresses and general-purpose use.
The memory is arranged by default in a Harvard architecture, with separate address spaces for program and
data memory. A special mode allows data memory to be
mapped into program space, permitting code execution
from data memory. In addition, another mode allows program memory to be mapped into data space, permitting
code constants to be accessed as data memory.
The incorporation of flash memory allows the devices to
be reprogrammed, eliminating the expense of throwing
away one-time programmable devices during development and field upgrades. Flash memory can be password protected with a 16-word key, denying access to
program memory by unauthorized individuals.
A pseudo-Von Neumann memory map can also be
enabled. This places the utility ROM, code, and data
memory into a single contiguous memory map. This is
useful for applications that require dynamic program
modification or unique memory configurations.
Stack Memory
A 16-bit-wide internal stack provides storage for program return addresses and general-purpose use. The
stack is used automatically by the processor when the
CALL, RET, and RETI instructions are executed and
interrupts serviced. The stack can also be used explicitly to store and retrieve data by using the PUSH, POP,
and POPI instructions.
____________________________________________________________________
13
MAXQ2000
Detailed Description
MAXQ2000
Low-Power LCD Microcontroller
PROGRAM MEMORY
DATA MEMORY
FFFFh
FFFFh
0Fh
16 x 16
STACK
00h
8FFFh
4k x 16
UTILITY
ROM
REGISTERS
FFh
7FFFh
1Fh
0Fh
SPRs
32k x 16
FLASH
MEMORY
07h
06h
03FFh
SFRs
1k x 16 SRAM
00h
0000h
Figure 1. Memory Map
14
____________________________________________________________________
0000h
Low-Power LCD Microcontroller
Utility ROM
The utility ROM is a 4kWord block of internal ROM
memory that defaults to a starting address of 8000h.
The utility ROM consists of subroutines that can be
called from application software. These include:
• In-system programming (bootstrap loader) over JTAG
or UART interfaces
• In-circuit debug routines
• Test routines (internal memory tests, memory
loader, etc.)
• User-callable routines for in-application flash programming and fast table lookup
Following any reset, execution begins in the utility
ROM. The ROM software determines whether the program execution should immediately jump to location
0000h, the start of user-application code, or to one of
the special routines mentioned. Routines within the utility ROM are user-accessible and can be called as subroutines by the application software. More information
on the utility ROM contents is contained in the MAXQ
Family User’s Guide: MAXQ2000 Supplement.
Some applications require protection against unauthorized viewing of program code memory. For these
applications, access to in-system programming, inapplication programming, or in-circuit debugging functions is prohibited until a password has been supplied.
The password is defined as the 16 words of physical
program memory at addresses x0010h to x001Fh.
A single password lock (PWL) bit is implemented in the
SC register. When the PWL is set to one (power-on
reset default), the password is required to access the
utility ROM, including in-circuit debug and in-system
programming routines that allow reading or writing of
internal memory. When PWL is cleared to zero, these
utilities are fully accessible without password. The
password is automatically set to all ones following a
mass erase.
Programming
The flash memory of the microcontroller can be programmed by two different methods: in-system programming and in-application programming. Both
methods afford great flexibility in system design as well
as reduce the life-cycle cost of the embedded system.
These features can be password protected to prevent
unauthorized access to code memory.
In-System Programming
An internal bootstrap loader allows the device to be
reloaded over a simple JTAG interface. As a result,
software can be upgraded in-system, eliminating the
need for a costly hardware retrofit when updates are
required. Remote software uploads are possible that
enable physically inaccessible applications to be frequently updated. The interface hardware can be a
JTAG connection to another microcontroller, or a connection to a PC serial port using a serial-to-JTAG converter such as the MAXQJTAG-001, available from
Maxim Integrated Products. If in-system programmability is not required, a commercial gang programmer can
be used for mass programming.
Activating the JTAG interface and loading the test
access port (TAP) with the system programming instruction invokes the bootstrap loader. Setting the SPE bit to
1 during reset through the JTAG interface executes the
bootstrap-loader-mode program that resides in the utility
ROM. When programming is complete, the bootstrap
loader can clear the SPE bit and reset the device, allowing the device to bypass the utility ROM and begin execution of the application software.
The following bootstrap loader functions are supported:
• Load
• Dump
• CRC
• Verify
• Erase
Optionally, the bootstrap loader can be invoked by the
application code. In this mode, the application software
would configure the SPE and PSS bits for UART communication, then jump to the start of the utility ROM. In
this way, the bootstrap loader can be accessed through
another UART-enabled peripheral, or a PC serial port
through an RS-232 transceiver such as the MAX232.
Because the bootstrap loader defaults to the JTAG configuration on reset, the UART versus JTAG selection
must be made from the application code. As a result,
bootstrap loader access through the UART is not possible in an unprogrammed device.
____________________________________________________________________
15
MAXQ2000
On reset, the stack pointer, SP, initializes to the top of
the stack (0Fh). The CALL, PUSH, and interrupt-vectoring operations increment SP, then store a value at the
location pointed to by SP. The RET, RETI, POP, and
POPI operations retrieve the value @SP and then
decrement SP.
MAXQ2000
Low-Power LCD Microcontroller
In-Application Programming
The in-application programming feature allows the
microcontroller to modify its own flash program memory
while simultaneously executing its application software.
This allows on-the-fly software updates in missioncritical applications that cannot afford downtime.
Alternatively, it allows the application to develop custom loader software that can operate under the control
of the application software. The utility ROM contains
user-accessible flash programming functions that erase
and program flash memory. These functions are
described in detail in the user’s guide supplement for
this device.
Register Set
Most functions of the device are controlled by sets of registers. These registers provide a working space for memory operations as well as configuring and addressing
peripheral registers on the device. Registers are divided
into two major types: system registers and peripheral registers. The common register set, also known as the system registers, includes the ALU, accumulator registers,
data pointers, interrupt vectors and control, and stack
pointer. The peripheral registers define additional functionality that may be included by different products based
on the MAXQ architecture. This functionality is broken up
into discrete modules so that only the features required
for a given product need to be included. Tables 1 and 4
show the MAXQ2000 register set.
Table 1. System Register Map
REGISTER
INDEX
MODULE NAME (BASE SPECIFIER)
AP (8h)
A (9h)
PFX (Bh)
IP (Ch)
SP (Dh)
DPC (Eh)
DP (Fh)
0xh
AP
A[0]
PFX
1xh
APC
A[1]
—
IP
—
—
—
—
SP
—
—
2xh
—
A[2]
—
—
IV
—
—
3xh
—
A[3]
—
—
—
Offs
DP0
4xh
PSF
A[4]
—
—
—
DPC
—
5xh
IC
A[5]
—
—
—
GR
—
6xh
IMR
A[6]
—
—
LC0
GRL
—
7xh
—
A[7]
—
—
LC1
BP
DP1
8xh
SC
A[8]
—
—
—
GRS
—
9xh
—
A[9]
—
—
—
GRH
—
Axh
—
A[10]
—
—
—
GRXL
—
Bxh
IIR
A[11]
—
—
—
FP
—
Cxh
—
A[12]
—
—
—
—
—
Dxh
—
A[13]
—
—
—
—
—
Exh
CKCN
A[14]
—
—
—
—
—
Fxh
WDCN
A[15]
—
—
—
—
—
Note: Names that appear in italics indicate that all bits of a register are read-only. Names that appear in bold indicate that a register
is 16 bits wide. Registers in module AP are bit addressable.
16
____________________________________________________________________
—
—
—
—
GR.7
DP[1] (16 bits)
GR.7
DP[0] (16 bits)
GR.7
GR.15
DP[1]
GR.7
GR.0
DP[0]
GR.7
GR.1
FP (16 bits)
GR.7
GR.2
GR.7
FP
GR.7
GR.3
GR.8
GR.7
GR.7
GR.4
GR.9
GRXL
GR.5
GR.10
—
GR.15
GRS
GR.6
GR.11
—
GRH
GR.7
GR.12
—
BP (16 bits)
GR.13
—
BP
GR.14
—
GR.7
GR.15
GR
—
GRL
—
DPC
—
LC[1] (16 bits)
LC[1]
—
LC[0] (16 bits)
LC[0]
Offs
IV (16 bits)
IV
—
IP (16 bits)
IP
—
PFX (16 bits)
PFX
SP
A[n] (16 bits)
A[n]
(0..15)
RGSL
—
POR
CKCN
WDCN
—
IIS
IIR
—
GR.6
GR.14
GR.14
GR.6
GR.6
—
—
EWDI
—
IMS
—
S
IDS
TAP
—
6
—
SC
—
7
IMR
—
8
REGISTER BIT
—
9
IC
10
Z
11
CLR
12
PSF
13
APC
14
—
15
AP
REGISTER
5
GR.5
GR.13
GR.13
GR.5
GR.5
—
—
WD1
RGMD
—
—
—
CGDS
—
—
—
4
WDIF
SWB
II3
—
IM3
—
GPF0
—
3
GR.4
GR.12
GR.12
GR.4
GR.4
WBS2
GR.3
GR.11
GR.11
GR.3
GR.3
WBS1
Offs (8 bits)
—
WD0
STOP
II4
CDA0
IM4
—
GPF1
—
—
1
EWT
CD1
II1
PWL
IM1
INS
C
MOD1
GR.2
GR.10
GR.10
GR.2
GR.2
WBS0
GR.1
GR.9
GR.9
GR.1
GR.1
SDPS1
SP (4 bits)
WTRF
PMME
II2
ROD
IM2
—
OV
MOD2
AP (4 bits)
2
GR.0
GR.8
GR.8
GR.0
GR.0
SDPS0
RWT
CD0
II0
—
IM0
IGE
E
MOD0
0
MAXQ2000
Table 2. System Register Bit Functions
Low-Power LCD Microcontroller
____________________________________________________________________
17
MAXQ2000
Low-Power LCD Microcontroller
Table 3. System Register Bit Reset Values
REGISTER
REGISTER BIT
7
6
5
4
3
2
1
0
AP
0
0
0
0
0
0
0
0
APC
0
0
0
0
0
0
0
0
PSF
1
0
0
0
0
0
0
0
IC
0
0
0
0
0
0
0
0
IMR
0
0
0
0
0
0
0
0
SC
0
0
0
0
0
0
s
0
IIR
0
0
0
0
0
0
0
0
CKCN
0
s
s
0
0
0
0
0
WDCN
s
s
0
0
0
0
0
0
0
0
0
0
0
0
0
0
A[n]
(0..15)
15
0
14
0
13
0
12
0
11
0
10
0
9
0
8
0
PFX
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
IP
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SP
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
IV
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
LC[0]
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
LC[1]
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
DPC
0
0
0
0
0
0
0
0
0
0
0
1
1
1
0
0
GR
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
BP
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
GRS
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Offs
GRL
GRH
GRXL
18
0
0
0
0
0
0
0
0
FP
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
DP0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
DP1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
____________________________________________________________________
Low-Power LCD Microcontroller
MAXQ2000
Table 4. Peripheral Register Map
MODULE NAME (BASE SPECIFIER)
REGISTER
INDEX
M0 (x0h)
M1 (x1h)
M2 (x2h)
M3 (x3h)
M4 (x4h)
M5 (x5h)
0xh
PO0
PO4
MCNT
T2CNA0
T2CNA1
—
1xh
PO1
PO5
MA
T2H0
T2H1
—
2xh
PO2
PO6
MB
T2RH0
T2RH1
—
3xh
PO3
PO7
MC2
T2CH0
T2CH1
—
4xh
—
—
MC1
—
T2CNA2
—
5xh
—
—
MC0
SPIB
T2H2
—
6xh
EIF0
EIF1
SCON0
SCON1
T2RH2
—
7xh
EIE0
EIE1
SBUF0
SBUF1
T2CH2
—
8xh
PI0
PI4
SMD0
SMD1
T2CNB1
—
9xh
PI1
PI5
PR0
PR1
T2V1
—
Axh
PI2
PI6
—
—
T2R1
—
Bxh
PI3
PI7
MC1R
—
T2C1
—
Cxh
EIES0
EIES1
MC0R
T2CNB0
T2CNB2
—
Dxh
—
—
LCRA
T2V0
T2V2
—
Exh
—
—
LCFG
T2R0
T2R2
—
Fxh
—
—
LCD16
T2C0
T2C2
—
10xh
PD0
PD4
LCD0
T2CFG0
T2CFG1
—
11xh
PD1
PD5
LCD1
—
T2CFG2
—
12xh
PD2
PD6
LCD2
—
—
—
13xh
PD3
PD7
LCD3
OWA
—
—
14xh
—
—
LCD4
OWD
—
—
15xh
—
—
LCD5
SPICN
—
—
16xh
—
—
LCD6
SPICF
—
—
17xh
—
—
LCD7
SPICK
—
—
18xh
—
—
LCD8
ICDT0
—
—
19xh
RCNT
—
LCD9
ICDT1
—
—
1Axh
RTSS
—
LCD10
ICDC
—
—
1Bxh
RTSH
—
LCD11
ICDF
—
—
1Cxh
RTSL
—
LCD12
ICDB
—
—
1Dxh
RSSA
—
LCD13
ICDA
—
—
1Exh
RASH
SVS
LCD14
ICDD
—
—
1Fxh
RASL
WKO
LCD15
TM
—
—
Note: Names that appear in italics indicate that all bits of a register are read-only. Names that appear in bold indicate that a register
is 16 bits wide.
____________________________________________________________________
19
20
ACS
—
—
—
—
—
4
3
—
—
____________________________________________________________________
—
PI4
PD5 (8 bits)
PD6 (8 bits)
PD6
—
PD5
—
IT11
—
—
IT12
PD4
IT13
IT15
EIES1
IT14
PI6 (8 bits)
—
—
PI7
—
EX11
PI6
—
EX12
PI5 (8 bits)
—
EX13
PI5
—
EX14
IE11
—
EX15
IE12
EIE1
IE13
IE15
EIF1
IE14
PO6 (8 bits)
—
—
PO7
—
—
PO6
PO5 (8 bits)
—
RASL (16 bits)
PO5
PO4
RASL
RSSA (8 bits)
RASH (8 bits)
RASH
RTSL (16 bits)
RTSL
BUSY
RTSS (8 bits)
RDY
RSSA
RTSH (16 bits)
RTSH
RTSS
RDYE
PD3 (8 bits)
ALDF
PD3
ALSF
PD2 (8 bits)
PD2
RCNT
PD1 (8 bits)
PD1
IT3
PD0 (8 bits)
PD0
IT4
PI3 (8 bits)
IT5
PI2 (8 bits)
PI3
EIES0
PI1 (8 bits)
IT6
IE3
EX3
PI2
IT7
IE4
EX4
PI0 (8 bits)
EX5
IE5
5
PI1
EX6
IE6
6
PI0
IE7
EX7
EIF0
X32D
7
EIE0
WE
8
REGISTER BIT
PO3 (8 bits)
9
PO2 (8 bits)
10
PO3
11
PO1 (8 bits)
12
PO2
13
PO1
14
PO0 (8 bits)
15
PO0
REGISTER
Table 5. Peripheral Register Bit Functions
PD4 (5 bits)
IT10
—
PI4 (5 bits)
EX10
IE10
—
PO4 (5 bits)
ASE
IT2
EX2
IE2
2
RTCE
IT0
EX0
IE0
0
IE8
EX8
IT9
IT8
PI7 (2 bits)
EX9
IE9
PO7 (2 bits)
ADE
IT1
EX1
IE1
1
MAXQ2000
Low-Power LCD Microcontroller
DUTY1
DUTY0
FRM3
FRM2
MC0 (16 bits)
MC0
—
MC1 (16 bits)
MC1
—
MC2 (16 bits)
MC2
6
LRIG
TB8
OPCS
—
LRA3
—
CPRL2
—
LRA2
ESI0
RB8
MSUB
____________________________________________________________________
SPICN
STBY
—
OWA
OWD
T2CI
T2CFG0
T2C0.7
T2R0.7
T2C0.15 T2C0.14 T2C0.13 T2C0.12 T2C0.11 T2C0.10 T2C0.9 T2C0.8
T2C0
T2R0.8
T2R0.15 T2R0.14 T2R0.13 T2R0.12 T2R0.11 T2R0.10
T2R0
T2R0.9
ET2L
T2V0.7
T2V0.8
T2V0.15 T2V0.14 T2V0.13 T2V0.12 T2V0.11 T2V0.10 T2V0.9
T2V0
PR1 (16 bits)
—
SM0/FE
T2CNB0
PR1
SMD1
SBUF1
SCON1
SPIB (16 bits)
SPIC
—
DIV2
T2C0.6
T2R0.6
T2V0.6
T2OE1
—
SM1
ROVR
—
DIV1
T2C0.5
T2R0.5
T2V0.5
T2POL1
—
SM2
REN
TB8
—
T2MD
T2C0.3
T2R0.3
T2V0.3
TF2
—
WCOL
MODF
OWD (8 bits)
—
DIV0
T2C0.4
T2R0.4
T2V0.4
TR2L
—
SBUF1 (8 bits)
MODFE
A2
CCF1
T2C0.2
T2R0.2
T2V0.2
TF2L
ESI1
RB8
1
0
MSTM
A1
CCF0
T2C0.1
T2R0.1
T2V0.1
TCC2
SMOD1
TI
T2C0.9
T2R0.9
T2V0.9
SS2
OPM
LRA1
SMOD0
TI
MMAC
WKE1
SV71
SPIEN
A0
C/T2
T2C0.0
T2R0.0
T2V0.0
TC2L
FEDE1
RI
T2C0.8
T2R0.8
T2V0.8
G2EN
DPE
LRA0
FEDE0
RI
SUS
WKE0
SV70
PD7 (2 bits)
MAXQ2000
SPIB
T2C0.15 T2C0.14 T2C0.13 T2C0.12 T2C0.11 T2C0.10
TR2
—
WKL
T2CH0
TR2L
LCD[0..15] (8 bits)
PCF0
LRA4
—
2
—
T2V0.15 T2V0.14 T2V0.13 T2V0.12 T2V0.11 T2V0.10
T2POL0
PCF1
—
—
SBUF0 (8 bits)
REN
SQU
—
SV64
3
—
T2R0.15 T2R0.14 T2R0.13 T2R0.12 T2R0.11 T2R0.10
T2OE0
PCF2
LCCS
—
SM2
CLD
—
SV65
4
—
T2H0
ET2
PCF3
—
SM1
MCW
—
5
—
T2RH0
T2CNA0
LCD[0..15]
LCFG
FRM0
MC0R (16 bits)
FRM1
MC0R
LCRA
MC1R (16 bits)
MC1R
—
PR0 (16 bits)
PR0
SMD0
SBUF0
SM0/FE
MB (16 bits)
MB
SCON0
MA (16 bits)
MA
—
7
OF
8
REGISTER BIT
MCNT
9
SV66
10
—
11
SV67
12
SVS
13
WKO
14
—
15
—
PD7
REGISTER
Table 5. Peripheral Register Bit Functions (continued)
Low-Power LCD Microcontroller
21
22
—
—
T2V1.8
SS2
SS2
T2C1.15 T2C1.14 T2C1.13 T2C1.12 T2C1.11 T2C1.10 T2C1.9 T2C1.8
T2C1
T2CI
T2CI
T2CFG1
T2CFG2
T2C2.7
T2R2.7
T2C2.15 T2C2.14 T2C2.13 T2C2.12 T2C2.11 T2C2.10 T2C2.9 T2C2.8
T2C2
T2R2.8
T2R2.15 T2R2.14 T2R2.13 T2R2.12 T2R2.11 T2R2.10
T2R2
T2R2.9
T2V2.7
T2V2.15 T2V2.14 T2V2.13 T2V2.12 T2V2.11 T2V2.10 T2V2.9
T2V2
T2V2.8
ET2L
T2CNB2
T2C1.7
T2R1.7
T2R1.15 T2R1.14 T2R1.13 T2R1.12 T2R1.11 T2R1.10
T2R1
T2R1.8
T2V1.7
T2V1.15 T2V1.14 T2V1.13 T2V1.12 T2V1.11 T2V1.10 T2V1.9
T2V1
T2R1.9
ET2L
T2CNB1
____________________________________________________________________
DIV2
DIV2
T2C2.6
T2R2.6
T2V2.6
T2OE1
T2C1.6
T2R1.6
T2V1.6
T2OE1
DIV1
DIV1
T2C2.5
T2R2.5
T2V2.5
T2POL1
T2C1.5
T2R1.5
T2V1.5
T2POL1
DIV0
DIV0
T2C2.4
T2R2.4
T2V2.4
TR2L
T2C1.4
T2R1.4
T2V1.4
TR2L
T2MD
T2MD
T2C2.3
T2R2.3
T2V2.3
TF2
T2C1.3
T2R1.3
T2V1.3
TF2
CCF1
CCF1
T2C2.2
T2R2.2
T2V2.2
TF2L
T2C1.2
T2R1.2
T2V1.2
TF2L
CCF0
CCF0
T2C2.1
T2R2.1
T2V2.1
TCC2
T2C1.1
T2R1.1
T2V1.1
TCC2
T2C2.9
T2R2.9
CPRL2
T2C2.15 T2C2.14 T2C2.13 T2C2.12 T2C2.11 T2C2.10
TR2
T2R2.15 T2R2.14 T2R2.13 T2R2.12 T2R2.11 T2R2.10
TR2L
T2RH2
T2POL0
T2CH2
T2OE0
T2V2.9
ET2
T2V2.15 T2V2.14 T2V2.13 T2V2.12 T2V2.11 T2V2.10
T2H2
T2CNA2
T2C1.9
T2R1.9
CPRL2
T2C1.15 T2C1.14 T2C1.13 T2C1.12 T2C1.11 T2C1.10
TR2
T2R1.15 T2R1.14 T2R1.13 T2R1.12 T2R1.11 T2R1.10
TR2L
SPE
CMD1
CKR1
CKPHA
1
T2RH1
T2POL0
PSS0
CMD2
CKR2
CHR
2
T2CH1
T2OE0
PSS1
CMD3
CKR3
—
3
ICDB (8 bits)
—
—
CKR4
—
4
T2V1.9
ET2
—
REGE
CKR5
—
5
T2V1.15 T2V1.14 T2V1.13 T2V1.12 T2V1.11 T2V1.10
T2H1
T2CNA1
ICDA (16 bits)
ICDD (16 bits)
ICDA
ICDD
ICDB
ICDF
—
CKR6
DME
8
REGISTER BIT
ICDC
9
—
10
CKR7
11
ESPI1
12
SPICF
13
SPICK
14
6
15
7
REGISTER
Table 5. Peripheral Register Bit Functions (continued)
C/T2
C/T2
T2C2.0
T2R2.0
T2V2.0
TC2L
T2C1.0
T2R1.0
T2V1.0
TC2L
T2C2.8
T2R2.8
T2V2.8
G2EN
T2C1.8
T2R1.8
T2V1.8
G2EN
TXC
CMD0
CKR0
CKPOL
0
MAXQ2000
Low-Power LCD Microcontroller
Low-Power LCD Microcontroller
REGISTER
REGISTER BIT
7
6
5
4
3
2
1
0
PO0
1
1
1
1
1
1
1
1
PO1
1
1
1
1
1
1
1
1
PO2
1
1
1
1
1
1
1
1
PO3
1
1
1
1
1
1
1
1
EIF0
0
0
0
0
0
0
0
0
EIE0
0
0
0
0
0
0
0
0
PI0
s
s
s
s
s
s
s
s
PI1
s
s
s
s
s
s
s
s
PI2
s
s
s
s
s
s
s
s
PI3
s
s
s
s
s
s
s
s
EIES0
0
0
0
0
0
0
0
0
PD0
0
0
0
0
0
0
0
0
PD1
0
0
0
0
0
0
0
0
PD2
0
0
0
0
0
0
0
0
15
14
13
12
11
10
9
8
PD3
0
0
0
0
0
0
0
0
0
s
s
0
0
0
0
0
s
s
0
0
1
s
s
s
s
s
s
s
s
s
s
s
RTSH
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
RTSL
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
RSSA
0
0
0
0
0
0
0
0
RASH
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
PO4
0
0
0
1
1
1
1
1
PO5
1
1
1
1
1
1
1
1
PO6
1
1
1
1
1
1
1
1
RCNT
RTSS
RASL
MAXQ2000
Table 6. Peripheral Register Reset Values
0
0
0
0
0
0
0
0
PO7
0
0
0
0
0
0
1
1
EIF1
0
0
0
0
0
0
0
0
EIE1
0
0
0
0
0
0
0
0
PI4
0
0
0
s
s
s
s
s
PI5
s
s
s
s
s
s
s
s
PI6
s
s
s
s
s
s
s
s
PI7
0
0
0
0
0
0
s
s
EIES1
0
0
0
0
0
0
0
0
PD4
0
0
0
0
0
0
0
0
PD5
0
0
0
0
0
0
0
0
PD6
0
0
0
0
0
0
0
0
PD7
0
0
0
0
0
0
0
0
SVS
0
0
0
0
0
0
0
0
WKO
0
0
0
0
0
0
0
0
____________________________________________________________________
23
MAXQ2000
Low-Power LCD Microcontroller
Table 6. Peripheral Register Reset Values (continued)
REGISTER
REGISTER BIT
15
14
13
12
11
10
9
8
MCNT
MA
0
0
7
6
5
4
3
2
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
MB
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
MC2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
MC1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
MC0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SCON0
0
0
0
0
0
0
0
0
SBUF0
0
0
0
0
0
0
0
0
SMD0
0
0
0
0
0
0
0
0
PR0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
MC1R
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
MC0R
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
LCRA
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
LCFG
0
0
0
0
0
0
0
0
LCD[0..15]
0
0
0
0
0
0
0
0
T2CNA0
0
0
0
0
0
0
0
0
T2H0
0
0
0
0
0
0
0
0
T2RH0
0
0
0
0
0
0
0
0
T2CH0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
SCON1
0
0
0
0
0
0
0
0
SBUF1
0
0
0
0
0
0
0
0
SMD1
0
0
0
0
0
0
0
0
SPIB
PR1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2CNB0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2V0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2R0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2C0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2CFG0
0
0
0
0
0
0
0
0
OWA
0
0
0
0
0
0
0
0
OWD
0
0
0
0
0
0
0
0
SPICN
0
0
0
0
0
0
0
0
SPICF
0
0
0
0
0
0
0
0
SPICK
0
0
0
0
0
0
0
0
ICDC
s
s
s
s
s
s
s
s
ICDF
s
s
s
s
s
s
s
s
ICDB
s
s
s
s
s
s
s
s
s
ICDA
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
ICDD
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
s
0
0
0
0
0
0
0
0
T2CNA1
24
0
0
____________________________________________________________________
Low-Power LCD Microcontroller
REGISTER
REGISTER BIT
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
T2H1
0
0
0
0
0
0
0
0
T2RH1
0
0
0
0
0
0
0
0
T2CH1
0
0
0
0
0
0
0
0
T2CNA2
0
0
0
0
0
0
0
0
T2H2
0
0
0
0
0
0
0
0
T2RH2
0
0
0
0
0
0
0
0
T2CH2
0
0
0
0
0
0
0
0
T2CNB1
0
0
0
0
0
0
0
0
T2V1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2R1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2C1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2CNB2
T2V2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2R2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2C2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
T2CFG1
0
0
0
0
0
0
0
0
T2CFG2
0
0
0
0
0
0
0
0
____________________________________________________________________
25
MAXQ2000
Table 6. Peripheral Register Reset Values (continued)
System Timing
For maximum versatility, the MAXQ2000 generates its
internal system clock from one of five possible sources:
• Internal ring oscillator
• External high-frequency crystal or ceramic resonator,
using an internal oscillator
• External high-frequency clock source
A crystal warmup counter enhances operational reliability. Each time the external crystal oscillation must
restart, such as after exiting Stop mode, the device initiates a crystal warmup period of 65,536 oscillations.
This allows time for the crystal amplitude and frequency
to stabilize before using it as a clock source. While in
the warmup mode, the device can begin operation from
the internal ring oscillator and automatically switch
back to the crystal as soon as it is ready.
• External 32kHz crystal or ceramic resonator, using an
internal oscillator
• External 32kHz clock source
POWER-ON
RESET
RWT
RESET
STOP
RESET DOG
XDOG COUNT
RESET
WATCHDOG
TIMER
XDOG
STARTUP
TIMER
WATCHDOG RESET
WATCHDOG INTERRUPT
XDOG DONE
CLK INPUT
CRYSTAL KLL
HF
CRYSTAL
MAXQ2000
STOP
POWER-ON
RESET
CLOCK
DIVIDER
RING
GLITCH-FREE
MUX
GLITCH-FREE
MUX
ENABLE
CLOCK
GENERATION
SYSTEM CLOCK
ENABLE
WAKE-UP
ALARM
TIMERS
32kHz
CRYSTAL
DIV 1
DIV 2
DIV 4
DIV 8
32kHz
PWM
MAXQ2000
Low-Power LCD Microcontroller
SWB
INTERRUPT/SERIAL PORT
RESET
SELECTOR
DEFAULT
RING SELECT
STOP
INPUT
CRYSTAL
MONITOR
RGSL
ENABLE
RGMD
POWER-ON RESET
XDOG DONE
Figure 2. Clock Sources
26
____________________________________________________________________
Low-Power LCD Microcontroller
Advanced power-management features minimize
power consumption by dynamically matching the processing speed of the device to the required performance level. This means device operation can be
slowed and power consumption minimized during periods of reduced activity. When more processing power
is required, the microcontroller can increase its operating frequency. Software-selectable clock-divide operations allow flexibility, selecting whether a system clock
cycle is 1, 2, 4, or 8 oscillator cycles. By performing this
function in software, a lower power state can be
entered without the cost of additional hardware.
For extremely power-sensitive applications, three additional low-power modes are available:
• PMM1: divide-by-256 power-management mode
(PMME = 1, CD1:0 = 00b)
• PMM2: 32kHz power-management mode (PMME = 1,
CD1:0 = 11b)
• Stop mode (STOP = 1)
In PMM1, one system clock is 256 oscillator cycles, significantly reducing power consumption while the microcontroller functions at reduced speed. In PMM2, the
device can run even slower by using the 32kHz oscillator as the clock source. The optional switchback feature allows enabled interrupt sources including external
interrupts, UARTs, and the SPI module to quickly exit
the power-management modes and return to a faster
internal clock rate.
Power consumption reaches its minimum in Stop mode.
In this mode, the external oscillator, system clock, and all
processing activity is halted. Stop mode is exited when
an enabled external interrupt pin is triggered, an external
reset signal is applied to the RESET pin, or the RTC timeof-day alarm is activated. Upon exiting Stop mode, the
microcontroller can choose to wait for the external highfrequency crystal to complete its warmup period, or it
can start execution immediately from its internal ring
oscillator while the warmup period completes.
Interrupts
Multiple reset sources are available for quick response
to internal and external events. The MAXQ architecture
uses a single interrupt vector (IV), single interrupt-service routine (ISR) design. For maximum flexibility, interrupts can be enabled globally, individually, or by
module. When an interrupt condition occurs, its individual flag is set, even if the interrupt source is disabled at
the local, module, or global level. Interrupt flags must
be cleared within the user-interrupt routine to avoid
repeated interrupts from the same source. Application
software must ensure a delay between the write to the
flag and the RETI instruction to allow time for the interrupt hardware to remove the internal interrupt condition.
Asynchronous interrupt flags require a one-instruction
delay and synchronous interrupt flags require a twoinstruction delay.
When an enabled interrupt is detected, software jumps
to a user-programmable interrupt vector location. The
IV register defaults to 0000h on reset or power-up, so if
it is not changed to a different address, the user program must determine whether a jump to 0000h came
from a reset or interrupt source.
Once software control has been transferred to the ISR,
the interrupt identification register (IIR) can be used to
determine if a system register or peripheral register
was the source of the interrupt. The specified module
can then be interrogated for the specific interrupt
source and software can take appropriate action.
Because the interrupts are evaluated by user software,
the user can define a unique interrupt priority scheme
for each application. The following interrupt sources are
available. Sources marked with an asterisk are not
available on the 56-pin version.
• Watchdog Interrupt
• External Interrupts 0 to 15 (INT10*, INT11*)
• RTC Time-of-Day and Subsecond Alarms
• Serial Port 0 Receive and Transmit Interrupts
• Serial Port 1 Receive and Transmit Interrupts*
• SPI Mode Fault, Write Collision, Receive Overrun, and
Transfer Complete Interrupts
• Timer 0 Low Compare, Low Overflow,
Capture/Compare, and Overflow Interrupts
• Timer 1 Low Compare, Low Overflow,
Capture/Compare, and Overflow Interrupts
• Timer 2 Low Compare, Low Overflow,
Capture/Compare, and Overflow Interrupts
• 1-Wire Presence Detect, Transmit Buffer Empty,
Transmit Shift Register Empty, Receive Buffer Full,
and Shift Register Full, Short, and Low Interrupts*
Reset Sources
Several reset sources are provided for microcontroller
control. Although code execution is halted in the reset
state, the high-frequency oscillator and the ring oscillator
continue to oscillate. Internal resets such as the poweron and watchdog resets assert the RESET pin low.
____________________________________________________________________
27
MAXQ2000
Power Management
MAXQ2000
Low-Power LCD Microcontroller
Power-On Reset
An internal power-on reset circuit enhances system reliability. This circuit forces the device to perform a
power-on reset whenever a rising voltage on VDDIO
climbs above approximately 1.8V. At this point the following events occur:
• All registers and circuits enter their reset state
• The POR flag (WDCN.7) is set to indicate the source
of the reset
• The ring oscillator becomes the clock source and
• Code execution begins at location 8000h
Watchdog Timer Reset
The watchdog timer functions are described in the
MAXQ Family User’s Guide. Execution resumes at location 8000h following a watchdog timer reset.
External System Reset
Asserting the external RESET pin low causes the device
to enter the reset state. The external reset functions as
described in the MAXQ Family User’s Guide. Execution
resumes at location 8000h after the RESET pin is
released.
I/O Ports
The microcontroller uses the type C and type D bidirectional I/O ports described in the MAXQ Family User’s
Guide. The use of three port types allows for maximum
flexibility when interfacing to external peripherals. Each
port has eight independent, general-purpose I/O pins
and three configure/control registers. Many pins support
alternate functions such as timers or interrupts, which are
enabled, controlled, and monitored by dedicated peripheral registers. Using the alternate function automatically
converts the pin to that function.
Type-C port pins have Schmitt Trigger receivers and
full CMOS output drivers, and can support alternate
functions. The pin is either tri-stated or weak pullup
when defined as an input, dependent on the state of
the corresponding bit in the output register.
Type-D port pins have Schmitt Trigger receivers and
full CMOS output drivers, and can support alternate
functions. The pin is either tri-stated or weak pullup
when defined as an input, dependent on the state of
the corresponding bit in the output register. All type-D
pins also have interrupt capability.
VDDIO
WEAK
MUX
PD.x
SF DIRECTION
VDDIO
SF ENABLE
MUX
PO.x
SF OUTPUT
MAXQ2000
I/O PAD
PIN.x
PI.x OR SF INPUT
FLAG
INTERRUPT
FLAG
DETECT
CIRCUIT
EIES.x
TYPE-D PORT ONLY
Figure 3. Type-C/D Port Pin Schematic
28
____________________________________________________________________
Low-Power LCD Microcontroller
The hardware multiplier module performs high-speed
multiply, square, and accumulate operations, and can
complete a 16-bit x 16-bit multiply-and-accumulate
operation in a single cycle. The hardware multiplier
consists of two 16-bit parallel-load operand registers
(MA, MB), an accumulator that is formed by up to three
16-bit parallel registers (MC2, MC1, and MC0), and a
status/control register (MCNT). Loading the registers
can automatically initiate the operation, saving time on
repetitive calculations. The accumulate function of the
hardware multiplier is an essential element of digital filtering, signal processing, and PID control systems.
The hardware multiplier module supports the following
operations:
• Multiply unsigned (16 bit x 16 bit)
• Multiply signed (16 bit x 16 bit)
• Multiply-Accumulate unsigned (16 bit x 16 bit)
•
•
•
•
Multiply-Accumulate signed (16 bit x 16 bit)
Square unsigned (16 bit)
Square signed (16 bit)
Square-Accumulate unsigned (16 bit)
• Square-Accumulate signed (16 bit)
Real-Time Clock
A binary real-time clock keeps the time of day in
absolute seconds with 1/256-second resolution. The
32-bit second counter can count up to approximately
136 years and be translated to calendar format by the
application software. A time-of-day alarm and independent subsecond alarm can cause an interrupt, or wake
the device from Stop mode.
The independent subsecond alarm runs from the same
RTC, and allows the application to perform periodic
interrupts up to ones with a granularity of approximately
3.9ms. This creates an additional timer that can be
used to measure long periods without performance
degradations. Traditionally, long time periods have
been measured using multiple interrupts from shorter
programmable timers. Each timer interrupt required
servicing, with each accompanying interruption slowing
system operation. By using the RTC subsecond timer
as a long-period timer, only one interrupt is needed,
eliminating the performance hit associated with using a
shorter timer.
An internal crystal oscillator clocks the RTC using integrated 6pF load capacitors, and give the best performance when mated with a 32.768kHz crystal rated for a
6pF load. No external load capacitors are required.
Higher accuracy can be obtained by supplying an external clock source to the RTC. The frequency accuracy of
a crystal-based oscillator circuit is dependent upon crystal accuracy, the match between the crystal and the
oscillator capacitor load, ambient temperature, etc. An
error of 20ppm is equivalent to approximately 1 minute
per month.
Programmable Timers
The microcontroller incorporates three 16-bit programmable instances of the Timer 2 peripheral, denoted
TR2A, TR2B, and TR2C. These timers can be used in
counter/timer/capture/compare/PWM functions, allowing precise control of internal and external events.
Timer 2 supports optional single-shot, external gating,
and polarity control options.
Timer 2
The Timer 2 peripheral includes the following:
• 16-bit autoreload timer/counter
• 16-bit capture
• 16-bit counter
• 8-bit capture and 8-bit timer
• 8-bit counter and 8-bit timer
Watchdog Timer
An internal watchdog timer greatly increases system
reliability. The timer resets the device if software execution is disturbed. The watchdog timer is a free-running
counter designed to be periodically reset by the application software. If software is operating correctly, the
counter will be periodically reset and never reach its
maximum count. However, if software operation is interrupted, the timer does not reset, triggering a system
reset and optionally a watchdog timer interrupt. This
protects the system against electrical noise or electrostatic discharge (ESD) upsets that could cause uncontrolled processor operation. The internal watchdog
timer is an upgrade to older designs with external
watchdog devices, reducing system cost and simultaneously increasing reliability.
____________________________________________________________________
29
MAXQ2000
High-Speed Hardware Multiplier
MAXQ2000
Low-Power LCD Microcontroller
The watchdog timer is controlled through bits in the
WDCN register. Its timeout period can be set to one of
four programmable intervals ranging from 212 to 221
system clocks in its default mode, allowing flexibility to
support different types of applications. The interrupt
occurs 512 system clocks before the reset, allowing the
system to execute an interrupt and place the system in
a known, safe state before the device performs a total
system reset. At 16MHz, watchdog timeout periods can
be programmed from 256µs to 33.5s, depending on the
system clock mode.
Serial Peripherals
The microcontroller incorporates several common serial-peripheral interfaces for interconnection with popular
external devices. Multiple formats provide maximum
flexibility and lower cost when designing a system.
UARTs
Serial interfacing is provided through one (-RBX) or two
(-RAX) 8051-style universal synchronous/asynchronous
receiver/transmitters. The UART allows the device to
conveniently communicate with other RS-232 interfaceenabled devices, as well as PCs and serial modems
when paired with an external RS-232 line driver/receiver. The dual independent UARTs can communicate
simultaneously at different baud rates with two separate
peripherals. The UART can detect framing errors and
indicate the condition through a user-accessible software bit.
The time base of the serial ports is derived from either a
division of the system clock or the dedicated baud
clock generator. The following table summarizes the
operating characteristics as well as the maximum baud
rate of each mode:
MODE
1-Wire Bus Master
The MAXQ2000-RAX includes a Dallas Semiconductor
1-Wire bus master, which communicates to other 1-Wire
peripherals, including iButton® products, through a
simple bidirectional signaling scheme over a single
electrical connection. The bus master provides complete control of the 1-Wire bus and transmit and receive
activities, and generates all timing and control
sequences of the 1-Wire bus. Communication between
the CPU and the bus master is achieved through
read/write access of the 1-Wire master address (OWA)
and 1-Wire master data (OWD) peripheral registers.
Detailed operation of the 1-Wire bus is described in the
Book of iButton Standards (www.maxim-ic.com/
iButtonbook).
Serial-Peripheral Interface (SPI) Module
The SPI port is a common, high-speed, synchronous
peripheral interface that shifts a bit stream of variable
length and data rate between the microcontroller and
other peripheral devices. The SPI can be used to communicate with other microcontrollers, serial shift registers, or display drivers. Multiple master and slave
modes permit communication with multiple devices in
the same system. Programmable clock frequency,
character lengths, polarity, and error handling enhance
the usefulness of the peripheral. The maximum baud
rate of the SPI interface is 1/2 the system clock for master mode operation and 1/8 the system clock for slave
mode operation.
START BITS
DATA BITS
STOP BIT
Mode 0
Synchronous
N/A
8
N/A
4Mbps
Mode 1
Asynchronous
1
8
1
500kbps
Mode 2
Asynchronous
1
8+1
1
500kbps
Mode 3
Asynchronous
1
8+1
1
500kbps
iButton is a registered trademark of Dallas Semiconductor Corp.
30
MAX BAUD RATE
AT 16MHz
TYPE
____________________________________________________________________
Low-Power LCD Microcontroller
LCD Controller
Embedded debugging capability is available through
the JTAG-compatible Test Access Port. Embedded
debug hardware and embedded ROM firmware provide in-circuit debugging capability to the user application, eliminating the need for an expensive in-circuit
emulator. Figure 4 shows a block diagram of the in-circuit debugger. The in-circuit debug features include:
The MAXQ2000 microcontroller incorporates an LCD
controller that interfaces to common low-voltage displays. By incorporating the LCD controller into the
microcontroller, the design requires only an LCD glass
rather than a considerably more expensive LCD module. Every character in an LCD glass is composed of
one or more segments, each of which is activated by
selecting the appropriate segment and common signal.
The microcontroller can multiplex combinations of up to
33 segment (SEG0–SEG32) outputs and four common
signal outputs (COM0–COM3). Unused segment outputs can be used as general-purpose port pins.
• a hardware debug engine,
• a set of registers able to set breakpoints on register,
code, or data accesses, and
• a set of debug service routines stored in the utility
ROM.
The embedded hardware debug engine is an independent hardware block in the microcontroller. The debug
engine can monitor internal activities and interact with
selected internal registers while the CPU is executing
user code. Collectively, the hardware and software features allow two basic modes of in-circuit debugging:
• Background mode allows the host to configure and set
up the in-circuit debugger while the CPU continues to
execute the application software at full speed. Debug
mode can be invoked from background mode.
• Debug mode allows the debug engine to take control
of the CPU, providing read/write access to internal registers and memory, and single-step trace operation.
MAXQ2000
DEBUG
SERVICE
ROUTINES
(UTILITY ROM)
CPU
DEBUG
ENGINE
TMS
TCK
TDI
TDO
TAP
CONTROLLER
CONTROL
BREAKPOINT
ADDRESS
DATA
The segments are easily addressed by writing to dedicated display memory. Once the LCD controller settings and display memory have been initialized, the
17-byte display memory is periodically scanned, and
the segment and common signals are generated automatically at the selected display frequency. No additional processor overhead is required while the LCD
controller is running. Unused display memory can be
used for general-purpose storage.
The design is further simplified and cost-reduced by
the inclusion of software-adjustable internal voltage
dividers to control display contrast, using either VDDIO
or an external voltage. If desired, contrast can also be
controlled with an external resistance. The features of
the LCD controller include the following:
• Automatic LCD segment and common-drive signal
generation
• Four display modes supported:
Static (COM0)
1/2 duty multiplexed with 1/2 bias voltages (COM0,
COM1)
1/3 duty multiplexed with 1/3 bias voltages (COM0,
COM1, COM2)
1/4 duty multiplexed with 1/3 bias voltages (COM0,
COM1, COM2, COM3)
• Up to 36 segment outputs and four common-signal
outputs
• 17 bytes (136 bits) of display memory
• Flexible LCD clock source, selectable from 32kHz or
HFClk / 128
• Adjustable frame frequency
• Internal voltage-divider resistors eliminate requirement for external components
• Internal adjustable resistor allows contrast adjustment
without external components
Figure 4. In-Circuit Debugger
____________________________________________________________________
31
MAXQ2000
In-Circuit Debug
MAXQ2000
Low-Power LCD Microcontroller
• Flexibility to use external resistors to adjust drive voltages and current capacity
reduces component count and board space, critical
factors in the design of portable systems.
A simple LCD-segmented glass interface example
demonstrates the minimal hardware required to interface to a MAXQ2000 microcontroller. A two-character
LCD is controlled, with each character containing
seven segments plus decimal point. The LCD controller
is configured for 1/2 duty cycle operation, meaning the
active segment is controlled using a combination of
segment signals, and COM0 or COM1 signals are used
to select the active display.
The MAXQ2000 is ideally suited for applications such
as medical instrumentation, portable blood glucose
equipment, and data collection devices. For blood glucose measurement, the microcontroller integrates an
SPI interface that directly connects with analog front
ends for measuring test strips.
Applications
The low-power, high-performance RISC architecture of
the MAXQ2000 makes it an excellent fit for many
portable or battery-powered applications that require
cost-effective computing. The high-throughput core is
complemented by a 16-bit hardware multiplier-accumulator, allowing the implementation of sophisticated computational algorithms. Applications benefit from a wide
range of peripheral interfaces, allowing the microcontroller to communicate with many external devices. With
integrated LCD support of up to 100 or 132 segments,
applications can support complex user interfaces.
Displays are driven directly with no additional external
hardware required. Contrast can be adjusted using a
built-in, adjustable resistor. The simplified architecture
MAXQ2000
Additional Documentation
Designers must have four documents to fully use all the
features of this device. This data sheet contains pin
descriptions, feature overviews, and electrical specifications. Errata sheets contain deviations from published specifications. The user’s guides offer detailed
information about device features and operation. The
following documents can be downloaded from
www.maxim-ic.com/microcontrollers.
• The MAXQ2000 errata sheet, available at
www.maxim-ic.com/errata.
• The MAXQ Family User’s Guide, which contains
detailed information on core features and operation,
including programming.
• The MAXQ Family User’s Guide: MAXQ2000
Supplement, which contains detailed information on
features specific to the MAXQ2000.
SEG0
SEG4
SEG1
SEG5
SEG2
SEG3
SEG6
SEG7
SEG0:7
COM0
CONNECTED TO DARK GREY SEGMENTS
COM1
CONNECTED TO LIGHT GREY SEGMENTS
Figure 5. Two-Character, 1/2 Duty, LCD Interface Example
32
____________________________________________________________________
Low-Power LCD Microcontroller
• Integrated development environments (IDEs)
• JTAG-to-serial converters for programming and
debugging
A partial list of development tool vendors can be found
on our website at www.maxim-ic.com/microcontrollers.
Technical support is available through email at
[email protected].
A variety of highly versatile, affordably priced development
tools for this microcontroller are available from Maxim/
Dallas Semiconductor and third-party suppliers, including:
• Compilers
• In-circuit emulators
52 P7.0/TX0/INT14
53 P7.1/RX0/INT15
54 VLCD
55 VLCD1
56 VLCD2
57 VADJ
58 SEG0/P0.0
59 SEG1/P0.1
60 SEG2/P0.2
61 SEG3/P0.3
62 SEG4/P0.4/INT0
63 SEG5/P0.5/INT1
65 SEG7/P0.7/INT3
64 SEG6/P0.6/INT2
66 SEG8/P1.0
68 SEG10/P1.2
TOP VIEW
67 SEG9/P1.1
Pin Configurations
SEG11/P1.3
1
51
HFXIN
SEG12/P1.4
2
50
HFXOUT
SEG13/P1.5
3
49
VDD
SEG14/P1.6
4
48
P6.5/T0/WKOUT1
SEG15/P1.7
5
47
P6.4/T0B/WKOUT0
SEG16/P2.0
6
46
P6.3/T2/OW_IN
SEG17/P2.1
7
45
P6.2/T2B/OW_OUT
SEG18/P2.2
8
44
P6.1/T1/INT13
SEG19/P2.3
9
43
P6.0/T1B/INT12
SEG20/P2.4
10
42
GND
SEG21/P2.5
11
41
P5.7/MISO
SEG22/P2.6
12
40
P5.6/SCLK
SEG23/P2.7
13
39
P5.5/MOSI
SEG24/P3.0
14
38
P.4/SS
SEG25/P3.1
15
37
P5.3/TX1/INT11
SEG26/P3.2
16
36
P5.2/RX1/INT10
SEG27/P3.3
17
35
32KOUT
MAXQ2000
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
SEG28/P3.4/INT4
SEG29/P3.5/INT5
SEG30/P3.6/INT6
SEG31/P3.7/INT7
SEG32
SEG33/COM3
SEG34/COM2
SEG35/COM1
COM0
VDDIO
GND
P4.0/TCK/INT8
P4.1/TDI/INT9
P4.2/TMS
P4.3/TDO
RESET
32KIN
(132-SEGMENT LCD)
QFN
____________________________________________________________________
33
MAXQ2000
Development and
Technical Support
Low-Power LCD Microcontroller
SEG8/P1.0
1
42
HFXIN
SEG9/P1.1
2
41
HFXOUT
SEG10/P1.2
3
40
VDD
SEG11/P1.3
4
39
P6.5/T0/WKOUT1
SEG12/P1.4
5
38
P6.4/T0B/WKOUT0
SEG13/P1.5
6
37
P6.1/T1/INT13
SEG14/P1.6
7
36
P6.0/T1B/INT12
SEG15/P1.7
8
35
GND
SEG16/P2.4
9
34
P5.7/MISO
SEG17/P2.5
10
33
P5.6/SCLK
SEG18/P2.6
11
32
P5.5/MOSI
SEG19/P2.7
12
31
P5.4/SS
SEG20/P3.4/INT4
13
30
32KOUT
SEG21/P3.5/INT5
14
29
32KIN
MAXQ2000
15
16
17
18
19
20
21
22
23
24
25
26
27
28
SEG23/P3.7/INT7
SEG24
SEG25/COM3
SEG26/COM2
SEG27/COM1
COM0
VDDIO
GND
P4.0/TCK/INT8
P4.1/TDI/INT9
P4.2/TMS
P4.3/TDO
RESET
(100-SEGMENT LCD)
TQFN
34
43 P7.0/TXO/INT14
44 P7.1/RXO/INT15
45 VLCD
46 VLCD1
47 VLCD2
48 VADJ
49 SEG0/P0.0
50 SEG1/P0.1
51 SEG2/P0.2
52 SEG3/P0.3
53 SEG4/P0.4/INT0
54 SEG5/P0.5/INT1
55 SEG6/P0.6/INT2
56 SEG7/P0.7/INT3
TOP VIEW
SEG22/P3.6/INT6
MAXQ2000
Pin Configurations (continued)
____________________________________________________________________
Low-Power LCD Microcontroller
VSS
1-WIRE EEPROM
GLUCOSE MICROCONTROLLER
SERIAL DATA
DOWNLOAD
CONNECTOR
RS-232 SERIAL PORT
PC_RX
+3.3V
TX
+3.3V
RS-232
RX
PC_TX
CHIP
DATA
CPOUT
P7.1RX0/INT15
5kΩ
VDDIO
VSS
CAL PORT
CONNECTOR
MAXQ2000
UART1
P7.0TX0/INT14
INTERFACE CABLE
GND
VLCD (+3.3V)
GND
GND
METER CAL
PARAMETERS
AND PATIENT
DATA STORAGE
P6.2/T2B/OW_OUT
1-WIRE
INTERFACE
1-WIRE EPROM
DATA
P6.3/T2/OW_IN
TEST STRIP CAL
PARAMETERS
VSS
GND
VLCD (+3.3V)
JTAG
DOWNLOAD/
DEBUG
CONNECTOR
TDO
P4.3/TDO
TMS
P4.2/TMS
VDDIO
P5.5/MOSI
TDI
P4.1/TDI/INT9
TCK
P4.0/TCK/INT8
JTAG
DIN
P5.7/MISO
4-WIRE
SPI
INTERFACE
DOUT
P5.6/SCLK
SCLK
P5.4/SS
UPIO2
UPIO3
CSI
UPIO4
GNDIO
GNDIO
VDDIO
MAX1358
MAX1359
MAX1360
P6.1/T1/INT13
PIEZO
BUZZER
VBATT
VDDIO
32KCLK
TIMER 0
P6.0/T1B/INT12
VDD
MAX
1678
VDDIO
STRIP
INSERTED
FBA
TEST STRIP
PORT
CONNECTOR
AGND
GNDIO
200kΩ
ON
SWA
GND
200kΩ
OUTA
DVDD
2 AAA OR
1 LITHIUM
COIN CELL
(+1.8V TO
+3.6V)
GNDIO
VDDIO
DIFFERENTIALLY DRIVEN AT
±6.6V AND -2kHz TO 10kHz
AVDD
DACA
DGND
VSS
TEST
STRIP
OUTB
SEG31/P3.7/INT7
P6.5/T0/WKOUT
OR
SEG29/P3.5/INT5
UPI01
SWB
WAKEUP
FBB
VSS
GNDIO
VLCD (+3.3V)
VLCD
REGULATED
+3.3V
CPOUT
ADC
DACB
SNO1
VSS
VLCD1
116 SEGMENT
LCD GLASS
CHARGEPUMP
DOUBLER
CF-
VLCD2
SEG[28:5]
SEG[0:3]
SEG[32]
SNC1
OUT1
VADJ
COM[3:1]/SEG[35:33]
LINEAR
REG
VSS
COM[0]
STRIP
INSERTED
INM1
REG
LCD
DRIVERS
VSS
SCM1
CF+
INP1
BG
REF
DVDD
NOTE THAT UP TO 132 LCD
SEGMENTS CAN BE DRIVEN IF
OTHER MUXED PIN FUNCTIONS
ARE NOT USED
SNO2
GNDIO
32/64kB
FLASH/
MASK
SCM2
RTC AND
SYSTEM
TIMERS/
ALARMS
32KOUT
32K
OSC
200kΩ
200kΩ
200kΩ
VSS
32KOUT
32KIN
32kHz MICRO CLOCK (OPTIONAL) CLK32K
HFXIN
HIGH-FREQUENCY MICRO CLOCK
32K
OSC
1-5MHz
FLL
VSS
AIN1
REMOTE
TEMPERATURE
MEASUREMENT
DIODE
AIN2
CLK
HF
OSC HFXOUT
VDDIO
SEG30/
MEM P3.6/INT6
P5.3/
UP TX1/INT11
P5.2/
DOWN RX1/INT10
SNC2
VSS 32KIN
32.768kHz
WATCH
XTAL
16-BIT RISC
MICRO
INT
INT
INT
GNDIO
VSS
RESET
SEG4/P0.4/INTO
RESET
MAX1358/9/60 INTERRUPT
INT
WATCHDOG
TIMER
GLUCOSE METER CIRCUIT BOARD
____________________________________________________________________
35
MAXQ2000
Typical Operating Circuit
Package Information
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/DallasPackInfo).
68L QFN.EPS
MAXQ2000
Low-Power LCD Microcontroller
PACKAGE OUTLINE, 68L QFN, 10x10x0.9 MM
1
C
21-0122
2
36
____________________________________________________________________
Low-Power LCD Microcontroller
PACKAGE OUTLINE, 68L QFN, 10x10x0.9 MM
1
C
21-0122
2
____________________________________________________________________
37
MAXQ2000
Package Information (continued)
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/DallasPackInfo).
Package Information (continued)
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/DallasPackInfo).
56L THIN QFN.EPS
MAXQ2000
Low-Power LCD Microcontroller
38
____________________________________________________________________
Low-Power LCD Microcontroller
Maxim cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim product. No circuit patent licenses are
implied. Maxim reserves the right to change the circuitry and specifications without notice at any time.
Maxim Integrated Products, 120 San Gabriel Drive, Sunnyvale, CA 94086 408-737-7600 ____________________ 39
© 2004 Maxim Integrated Products
Printed USA
is a registered trademark of Dallas Semiconductor Corporation.
is a registered trademark of Maxim Integrated Products.
MAXQ2000
Package Information (continued)
(The package drawing(s) in this data sheet may not reflect the most current specifications. For the latest package outline information,
go to www.maxim-ic.com/DallasPackInfo).