ST72323
ST72323L
3 V/5 V range 8-bit MCU with 4/8 Kbyte ROM,
10-bit ADC, four timers and SPI
Features
■
Memories
– 4/8K ROM with read-out protection
capability
– 384 bytes RAM
– Compatible with Flash superset
ST72F324B
Clock, reset and supply management
– Clock sources: crystal/ceramic resonator
oscillators, internal RC oscillator and
bypass for external clock
– Four power saving modes: Halt, Active-
Halt, Wait and Slow
Interrupt management
– Nested interrupt controller
– 10 interrupt vectors plus TRAP and RESET
– 9/6 external interrupt lines (on 4 vectors)
Up to 32 I/O ports
– 32/24 multifunctional bidirectional I/O lines
– 22/17 alternate function lines
– 12/10 high sink outputs
4 Timers
– Main clock controller with: real-time base,
beep and clock-out capabilities
– Configurable watchdog timer
– 16-bit timer A with: 1 input capture, 1 output
compare, external clock input, PWM and
pulse generator modes
– 16-bit timer B with: 2 input captures, 2
output compares, PWM and pulse
generator modes
LQFP44
10 x 10
LQFP48
7x7
LQFP32
7x7
■
SO34
SDIP32
400 mil
■
■
■
Communications interface
– SPI synchronous serial interface
1 analog peripheral (low-current coupling)
– 10-bit ADC with up to 12 robust input ports
Instruction set
– 8-bit data manipulation
– 63 basic instructions
– 17 main addressing modes
– 8 x 8 unsigned multiply instruction
Development tools
– Full hardware/software development
package
– In-circuit testing capability
■
■
■
■
June 2008
Rev 3
1/167
www.st.com
1
Contents
ST72323 ST72323L
Contents
1
2
3
4
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Pin description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Register and memory map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Central processing unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.1
4.2
4.3
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
CPU registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.3.1
4.3.2
4.3.3
4.3.4
4.3.5
Accumulator (A) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Index registers (X and Y) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Program counter (PC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Condition code register (CC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Stack pointer (SP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5
Supply, reset and clock management . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.1
5.2
Multioscillator (MO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Reset sequence manager (RSM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.2.1
5.2.2
5.2.3
5.2.4
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Asynchronous external RESET pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
External power-on reset (POR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Internal watchdog reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.1
6.2
6.3
6.4
6.5
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Masking and processing flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Interrupts and low-power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Concurrent and nested management . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Interrupt register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6.5.1
6.5.2
CPU CC register interrupt bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Interrupt software priority registers (ISPRx) . . . . . . . . . . . . . . . . . . . . . . 35
6.6
External interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
6.6.1
I/O port interrupt sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2/167
ST72323 ST72323L
Contents
6.7
External interrupt control register (EICR) . . . . . . . . . . . . . . . . . . . . . . . . . 38
7
Power saving modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
7.1
7.2
7.3
7.4
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Slow mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Wait mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Active-Halt and Halt modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.4.1
7.4.2
Active-Halt mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Halt mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
8
I/O ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
8.1
8.2
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
8.2.1
8.2.2
8.2.3
Input modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Output modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Alternate functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
8.3
8.4
8.5
I/O port implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Low-power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
8.5.1
I/O port Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
9
On-chip peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
9.1
Watchdog timer (WDG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
9.1.1
9.1.2
9.1.3
9.1.4
9.1.5
9.1.6
9.1.7
9.1.8
9.1.9
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
How to program the watchdog timeout . . . . . . . . . . . . . . . . . . . . . . . . . 57
Low- power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Hardware watchdog option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Using Halt mode with the WDG (WDGHALT option) . . . . . . . . . . . . . . . 59
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
9.2
Main clock controller with real-time clock and beeper (MCC/RTC) . . . . . 61
9.2.1
9.2.2
9.2.3
Programmable CPU clock prescaler . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Clock-out capability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Real-time clock timer (RTC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3/167
Contents
9.2.4
9.2.5
9.2.6
9.2.7
ST72323 ST72323L
Beeper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Low-power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
9.3
16-bit timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
9.3.1
9.3.2
9.3.3
9.3.4
9.3.5
9.3.6
9.3.7
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Low-power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Summary of timer modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
9.4
Serial peripheral interface (SPI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
9.4.1
9.4.2
9.4.3
9.4.4
9.4.5
9.4.6
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
General description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Clock phase and clock polarity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Error flags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
9.5
10-bit A/D converter (ADC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
9.5.1
9.5.2
9.5.3
9.5.4
9.5.5
9.5.6
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Main features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Functional description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Low-power modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Register description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
10
Instruction set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
10.1
CPU addressing modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
10.1.1
10.1.2
10.1.3
10.1.4
10.1.5
10.1.6
10.1.7
Inherent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Immediate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Direct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Indexed (No Offset, Short, Long) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Indirect (Short, Long) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Indirect indexed (Short, Long) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Relative mode (Direct, Indirect) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
10.2
4/167
Instruction groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
ST72323 ST72323L
Contents
11
Electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
11.1
Parameter conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
11.1.1
11.1.2
11.1.3
11.1.4
11.1.5
Minimum and maximum values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Typical values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Typical curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Loading capacitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Pin input voltage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
11.2
11.3
11.4
Absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Operating conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
11.3.1
Operating conditions (ST72323 5 V devices) . . . . . . . . . . . . . . . . . . . 117
Supply current characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
11.4.1
11.4.2
Supply and clock managers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
On-chip peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
11.5
Clock and timing characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
11.5.1
11.5.2
Crystal and ceramic resonator oscillators . . . . . . . . . . . . . . . . . . . . . . 124
RC oscillators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
11.6
11.7
Memory characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
11.6.1
RAM and hardware registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
EMC characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
11.7.1
11.7.2
11.7.3
Functional EMS (electromagnetic susceptibility) . . . . . . . . . . . . . . . . . 126
Electromagnetic interference (EMI) . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
Absolute maximum ratings (electrical sensitivity) . . . . . . . . . . . . . . . . 127
11.8
I/O port pin characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
11.8.1
11.8.2
General characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Output driving current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
11.9
Control pin characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
11.9.1
11.9.2
Asynchronous RESET pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
ICCSEL pin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
11.10 Timer peripheral characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
11.11 Communication interface characteristics . . . . . . . . . . . . . . . . . . . . . . . . 139
11.11.1 SPI - serial peripheral interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
11.12 10-bit ADC characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
11.12.1 Analog power supply and reference pins . . . . . . . . . . . . . . . . . . . . . . . 143
11.12.2 General PCB design guidelines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
11.12.3 ADC accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
5/167