8-Bit CMOS (Low Voltage, Low Power, and High Speed) Microcontroller Families
8-Bit CMOS (Low Voltage, Low Power, and High Speed) Microcontroller Families
8-Bit CMOS (Low Voltage, Low Power, and High Speed) Microcontroller Families
8XC51/80C31
8-bit CMOS (low voltage, low power, and
high speed) microcontroller families
Preliminary specification
Replaces data sheet P87C51/80C51/80C31
of 1997 Mar 04
IC20 Data Handbook
1997 Dec 09
Philips Semiconductors
Preliminary specification
DESCRIPTION
FEATURES
4k 8 ROM (80C51)
128 8 RAM
SELECTION TABLE
For applications requiring more ROM and RAM,
see 8XC52/54/58/80C32, 8XC51FA/FB/FC/80C51FA,
and 8XC51RA+/RB+/RC+/80C51RA+ data sheet.
ROM/EPROM
Memory Size
(X by 8)
0 to 16MHz
0 to 33MHz
RAM Size
(X by 8)
Programmable
Timer Counter
(PCA)
Hardware
Watch Dog
Timer
128
No
No
256
No
No
80C31/8XC51
0K/4K
80C32/8XC52/54/58
0K/8K/16K/32K
ROM (2 bits)
OTP/EPROM (3 bits)
80C51FA/8XC51FA/FB/FC
0K/8K/16K/32K
256
Yes
No
512
Yes
Yes
1024
Yes
Yes
80C51RA+/8XC51RA+/RB+/RC+
0K/8K/16K/32K
8XC51RD+
64K
8XC51/80C31
1997 Dec 09
140
Philips Semiconductors
Preliminary specification
8XC51/80C31
P80C51SBPN
OTP
P87C51SBPN
ROM
P80C51SBAA
OTP
P87C51SBAA
ROM
P80C51SBBB
OTP
P87C51SBBB
ROM
P80C51SFP N
OTP
P87C51SFP N
ROM
P80C51SFA A
OTP
P87C51SFA A
ROM
P80C51SFB B
OTP
P87C51SFB B
ROM
P80C51UBAA
OTP
P87C51UBAA
ROM
P80C51UBPN
OTP
P87C51UBPN
ROM
P80C51UBBB
OTP
P87C51UBBB
ROM
P80C51UFA A
OTP
P87C51UFA A
ROM
P80C51UFPN
OTP
P87C51UFPN
ROM
P80C51UFBB
OTP
P87C51UFBB
1997 Dec 09
TEMPERATURE RANGE C
AND PACKAGE
VOLTAGE
RANGE
FREQ.
(MHz)
DWG.
#
P80C31SBPN
line Package
0 to +70
+70, Plastic Dual In
In-line
2 7V to 5
5V
2.7V
5.5V
0 to 16
SOT129 1
SOT129-1
P80C31SBAA
0 to +70,
+70 Plastic Leaded Chip Carrier
2 7V to 5
2.7V
5.5V
5V
0 to 16
SOT187 2
SOT187-2
P80C31SBBB
0 to +70
+70, Plastic Quad Flat Pack
2 7V to 5
5V
2.7V
5.5V
0 to 16
SOT307 2
SOT307-2
P80C31SFP N
40
40 to +85
+85, Plastic Dual In
In-line
line Package
2 7V to 5
2.7V
5.5V
5V
0 to 16
SOT129 1
SOT129-1
P80C31SFA A
40 to +85,
+85 Plastic Leaded Chip Carrier
40
2 7V to 5
5V
2.7V
5.5V
0 to 16
SOT187 2
SOT187-2
P80C31SFB B
40
40 to +85
+85, Plastic Quad Flat Pack
2 7V to 5
2.7V
5.5V
5V
0 to 16
SOT307 2
SOT307-2
P80C31UBAA
5V
0 to 33
SOT187 2
SOT187-2
P80C31UBPN
0 to +70
+70, Plastic Dual In
In-line
line Package
5V
0 to 33
SOT129 1
SOT129-1
P80C31UBBB
0 to +70
+70, Plastic Quad Flat Pack
5V
0 to 33
SOT307 2
SOT307-2
P80C31UFA A
40
40 to +85,
+85 Plastic Leaded Chip Carrier
5V
0 to 33
SOT187 2
SOT187-2
P80C31UFPN
40 to +85
line Package
40
+85, Plastic Dual In
In-line
5V
0 to 33
SOT129 1
SOT129-1
P80C31UFBB
40
40 to +85
+85, Plastic Quad Flat Pack
5V
0 to 33
SOT307 2
SOT307-2
ROMless
141
Philips Semiconductors
Preliminary specification
8XC51/80C31
BLOCK DIAGRAM
P0.0P0.7
P2.0P2.7
PORT 0
DRIVERS
PORT 2
DRIVERS
VCC
VSS
RAM ADDR
REGISTER
PORT 0
LATCH
RAM
PORT 2
LATCH
ROM/EPROM
8
B
REGISTER
STACK
POINTER
ACC
PROGRAM
ADDRESS
REGISTER
TMP1
TMP2
BUFFER
ALU
SFRs
PC
INCREMENTER
TIMERS
PSW
16
PSEN
ALE/PROG
EAVPP
TIMING
AND
CONTROL
RST
INSTRUCTION
REGISTER
PROGRAM
COUNTER
PD
DPTRS
MULTIPLE
PORT 1
LATCH
PORT 3
LATCH
PORT 1
DRIVERS
PORT 3
DRIVERS
P1.0P1.7
P3.0P3.7
OSCILLATOR
XTAL1
XTAL2
SU00845
1997 Dec 09
142
Philips Semiconductors
Preliminary specification
LOGIC SYMBOL
8XC51/80C31
VCC
40
XTAL1
PORT 0
39
ADDRESS AND
DATA BUS
LCC
XTAL2
RxD
TxD
INT0
INT1
T0
T1
WR
RD
PORT 1
PORT 2
RST
EA
PSEN
ALE
PORT 3
SECONDARY FUNCTIONS
17
18
Pin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
ADDRESS BUS
SU00812
PIN CONFIGURATIONS
P1.0 1
40 VCC
P1.1 2
39 P0.0/AD0
P1.2 3
38 P0.1/AD1
P1.3 4
37 P0.2/AD2
P1.4 5
36 P0.3/AD3
P1.5 6
35 P0.4/AD4
P1.6 7
34 P0.5/AD5
P1.7 8
33 P0.6/AD6
RxD/P3.0 10
TxD/P3.1 11
PLASTIC
DUAL
IN-LINE
PACKAGE
Function
NIC*
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
RST
P3.0/RxD
NIC*
P3.1/TxD
P3.2/INT0
P3.3/INT1
Pin
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
28
Pin
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Function
P3.4/T0
P3.5/T1
P3.6/WR
P3.7/RD
XTAL2
XTAL1
VSS
NIC*
P2.0/A8
P2.1/A9
P2.2/A10
P2.3/A11
P2.4/A12
P2.5/A13
P2.6/A14
* NO INTERNAL CONNECTION
SU00002A
44
34
33
31 EA/VPP
PQFP
30 ALE/PROG
INT0/P3.2 12
29 PSEN
INT1/P3.3 13
28 P2.7/A15
T0/P3.4 14
27 P2.6/A14
T1/P3.5 15
26 P2.5/A13
WR/P3.6 16
25 P2.4/A12
RD/P3.7 17
24 P2.3/A11
XTAL2 18
23 P2.2/A10
XTAL1 19
22 P2.1/A9
VSS 20
21 P2.0/A8
11
23
12
Pin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SU00809
Function
P1.5
P1.6
P1.7
RST
P3.0/RxD
NIC*
P3.1/TxD
P3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1
P3.6/WR
P3.7/RD
XTAL2
XTAL1
Pin
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
* NO INTERNAL CONNECTION
1997 Dec 09
Function
P2.7/A15
PSEN
ALE/PROG
NIC*
EA/VPP
P0.7/AD7
P0.6/AD6
P0.5/AD5
P0.4/AD4
P0.3/AD3
P0.2/AD2
P0.1/AD1
P0.0/AD0
VCC
32 P0.7/AD7
RST 9
29
143
22
Function
VSS
NIC*
P2.0/A8
P2.1/A9
P2.2/A10
P2.3/A11
P2.4/A12
P2.5/A13
P2.6/A14
P2.7/A15
PSEN
ALE/PROG
NIC*
EA/VPP
P0.7/AD7
Pin
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Function
P0.6/AD6
P0.5/AD5
P0.4/AD4
P0.3/AD3
P0.2/AD2
P0.1/AD1
P0.0/AD0
VCC
NIC*
P1.0
P1.1
P1.2
P.13
P1.4
SU00003A
Philips Semiconductors
Preliminary specification
8XC51/80C31
PIN DESCRIPTIONS
PIN NUMBER
MNEMONIC
DIP
LCC
QFP
TYPE
VSS
20
22
16
Ground: 0V reference.
VCC
40
44
38
Power Supply: This is the power supply voltage for normal, idle, and power-down operation.
3932
4336
3730
I/O
Port 0: Port 0 is an open-drain, bidirectional I/O port. Port 0 pins that have 1s written to
them float and can be used as high-impedance inputs. Port 0 is also the multiplexed
low-order address and data bus during accesses to external program and data memory. In
this application, it uses strong internal pull-ups when emitting 1s. Port 0 also outputs the
code bytes during program verification and received code bytes during EPROM
programming. External pull-ups are required during program verification.
P1.0P1.7
18
29
4044,
13
I/O
Port 1: Port 1 is an 8-bit bidirectional I/O port with internal pull-ups. Port 1 pins that have 1s
written to them are pulled high by the internal pull-ups and can be used as inputs. As inputs,
port 1 pins that are externally pulled low will source current because of the internal pull-ups.
(See DC Electrical Characteristics: IIL). Port 1 also receives the low-order address byte
during program memory verification.
P2.0P2.7
2128
2431
1825
I/O
Port 2: Port 2 is an 8-bit bidirectional I/O port with internal pull-ups. Port 2 pins that have 1s
written to them are pulled high by the internal pull-ups and can be used as inputs. As inputs,
port 2 pins that are externally being pulled low will source current because of the internal
pull-ups. (See DC Electrical Characteristics: IIL). Port 2 emits the high-order address byte
during fetches from external program memory and during accesses to external data memory
that use 16-bit addresses (MOVX @DPTR). In this application, it uses strong internal
pull-ups when emitting 1s. During accesses to external data memory that use 8-bit addresses
(MOV @Ri), port 2 emits the contents of the P2 special function register. Some Port 2 pins
receive the high order address bits during EPROM programming and verification.
P3.0P3.7
1017
11,
1319
5,
713
I/O
10
11
12
13
14
15
16
17
11
13
14
15
16
17
18
19
5
7
8
9
10
11
12
13
I
O
I
I
I
I
O
O
Port 3: Port 3 is an 8-bit bidirectional I/O port with internal pull-ups. Port 3 pins that have 1s
written to them are pulled high by the internal pull-ups and can be used as inputs. As inputs,
port 3 pins that are externally being pulled low will source current because of the pull-ups.
(See DC Electrical Characteristics: IIL). Port 3 also serves the special features of the 80C51
family, as listed below:
RxD (P3.0): Serial input port
TxD (P3.1): Serial output port
INT0 (P3.2): External interrupt
INT1 (P3.3): External interrupt
T0 (P3.4): Timer 0 external input
T1 (P3.5): Timer 1 external input
WR (P3.6): External data memory write strobe
RD (P3.7): External data memory read strobe
RST
10
Reset: A high on this pin for two machine cycles while the oscillator is running, resets the
device. An internal diffused resistor to VSS permits a power-on reset using only an external
capacitor to VCC.
ALE/PROG
30
33
27
Address Latch Enable/Program Pulse: Output pulse for latching the low byte of the
address during an access to external memory. In normal operation, ALE is emitted at a
constant rate of 1/6 the oscillator frequency, and can be used for external timing or clocking.
Note that one ALE pulse is skipped during each access to external data memory. This pin is
also the program pulse input (PROG) during EPROM programming. ALE can be disabled by
setting SFR auxiliary.0. With this bit set, ALE will be active only during a MOVX instruction.
PSEN
29
32
26
Program Store Enable: The read strobe to external program memory. When the 8XC51/31
is executing code from the external program memory, PSEN is activated twice each
machine cycle, except that two PSEN activations are skipped during each access to
external data memory. PSEN is not activated during fetches from internal program memory.
EA/VPP
31
35
29
XTAL1
19
21
15
Crystal 1: Input to the inverting oscillator amplifier and input to the internal clock generator
circuits.
XTAL2
18
20
14
P0.00.7
NOTE:
To avoid latch-up effect at power-on, the voltage on any pin at any time must not be higher than VCC + 0.5V or VSS 0.5V, respectively.
1997 Dec 09
144
Philips Semiconductors
Preliminary specification
Table 1.
SYMBOL
8XC51/80C31
DIRECT
ADDRESS
RESET
VALUE
ACC*
Accumulator
E0H
E7
E6
E5
E4
E3
E2
E1
E0
00H
AUXR#
Auxiliary
8EH
AO
xxxxxxx0B
AUXR1#
Auxiliary 1
A2H
LPEP2
WUPD
DPS
xxx000x0B
B*
DPTR:
DPH
DPL
B register
Data Pointer (2 bytes)
Data Pointer High
Data Pointer Low
F0H
F7
F6
F5
F4
F3
F2
F1
F0
IE*
Interrupt Enable
A8H
IP*
IPH#
P0*
P1*
P2*
Interrupt Priority
Interrupt Priority High
Port 0
Port 1
Port 2
83H
82H
B8H
B7H
80H
90H
A0H
00H
00H
00H
AF
AE
AD
AC
AB
AA
A9
A8
EA
ET2
ES
ET1
EX1
ET0
EX0
BF
BE
BD
BC
BB
BA
B9
B8
PT2
PS
PT1
PX1
PT0
PX0
B7
B6
B5
B4
B3
B2
B1
B0
PT2H
PSH
PT1H
PX1H
PT0H
PX0H
87
86
85
84
83
82
81
80
AD7
AD6
AD5
AD4
AD3
AD2
AD1
AD0
97
96
95
94
93
92
91
90
0x000000B
xx000000B
xx000000B
FFH
T2EX
T2
A7
A6
A5
A4
A3
A2
A1
A0
AD15
AD14
AD13
AD12
AD11
AD10
AD9
AD8
B7
B6
B5
B4
B3
B2
B1
B0
T1
T0
INT1
INT0
TxD
RxD
FFH
00xx0000B
P3*
Port 3
B0H
RD
WR
PCON#1
Power Control
87H
SMOD1
SMOD0
POF
GF1
GF0
PD
IDL
D7
D6
D5
D4
D3
D2
D1
D0
CY
AC
F0
RS1
RS0
OV
FFH
FFH
PSW*
D0H
RACAP2H#
RACAP2L#
CBH
CAH
00H
00H
SADDR#
SADEN#
Slave Address
Slave Address Mask
A9H
B9H
00H
00H
SBUF
99H
SCON*
Serial Control
98H
SP
Stack Pointer
81H
xxxxxxxxB
9F
9E
9D
9C
9B
9A
99
98
SM0/FE
SM1
SM2
REN
TB8
RB8
TI
RI
8F
8E
8D
8C
8B
8A
89
88
TR1
TF0
TR0
IE1
IT1
IE0
IT0
00H
07H
TCON*
Timer Control
88H
TF1
CF
CE
CD
CC
CB
CA
C9
C8
T2CON*
Timer 2 Control
C8H
TF2
EXF2
RCLK
TCLK
EXEN2
TR2
C/T2
CP/RL2
T2MOD#
TH0
TH1
TH2#
TL0
TL1
TL2#
C9H
8CH
8DH
CDH
8AH
8BH
CCH
T2OE
DCEN
M1
M0
GATE
C/T
M1
M0
TMOD
Timer Mode
89H
GATE
C/T
* SFRs are bit addressable.
# SFRs are modified from or added to the 80C51 SFRs.
Reserved bits.
1. Reset value depends on reset source.
2. LPEP Low Power EPROM operation (OTP/EPROM only)
1997 Dec 09
000000x0B
145
00H
00H
xxxxxx00B
00H
00H
00H
00H
00H
00H
00H
Philips Semiconductors
Preliminary specification
8XC51/80C31
interrupt allows both the SFRs and the on-chip RAM to retain their
values. WUPD (AUXR1.3Wakeup from Power Down) enables or
disables the wakeup from power down with external interrupt.
Where:
OSCILLATOR CHARACTERISTICS
XTAL1 and XTAL2 are the input and output, respectively, of an
inverting amplifier. The pins can be configured for use as an on-chip
oscillator, as shown in the logic symbol.
WUPD = 0 Disable
WUPD = 1 Enable
A reset is accomplished by holding the RST pin high for at least two
machine cycles (24 oscillator periods), while the oscillator is running.
To insure a good power-up reset, the RST pin must be high long
enough to allow the oscillator time to start up (normally a few
milliseconds) plus two machine cycles.
For the 80C31, a reset is used to exit power down. Reset redefines
all the SFRs but does not charge the onchips RAM.
Reset
LPEP
The eprom array contains some analog circuits that are not required
when VCC is less than 4V, but are required for a VCC greater than
4V. The LPEP bit (AUXR.4), when set, will powerdown these analog
circuits resulting in a reduced supply current. This bit should be set
ONLY for applications that operate at a VCC less tan 4V.
Idle Mode
In idle mode (see Table 2), the CPU puts itself to sleep while all of
the on-chip peripherals stay active. The instruction to invoke the idle
mode is the last instruction executed in the normal operating mode
before the idle mode is activated. The CPU contents, the on-chip
RAM, and all of the special function registers remain intact during
this mode. The idle mode can be terminated either by any enabled
interrupt (at which time the process is picked up at the interrupt
service routine and continued), or by a hardware reset which starts
the processor in the same manner as a power-on reset.
Design Consideration
Power-Down Mode
ONCE Mode
To save even more power, a Power Down mode (see Table 2) can
be invoked by software. In this mode, the oscillator is stopped and
the instruction that invoked Power Down is the last instruction
executed. The on-chip RAM and Special Function Registers retain
their values down to 2.0V and care must be taken to return VCC to
the minimum specified operating voltages before the Power Down
Mode is terminated.
1. Pull ALE low while the device is in reset and PSEN is high;
2. Hold ALE low as RST is deactivated.
While the device is in ONCE Mode, the Port 0 pins go into a float
state, and the other port pins and ALE and PSEN are weakly pulled
high. The oscillator circuit remains active. While the 8XC51/31 is in
this mode, an emulator or test CPU can be used to drive the circuit.
Normal operation is restored when a normal reset is applied.
ALE
PSEN
PORT 0
PORT 1
PORT 2
PORT 3
Idle
MODE
Internal
Data
Data
Data
Data
Idle
External
Float
Data
Address
Data
Power-down
Internal
Data
Data
Data
Data
Power-down
External
Float
Data
Data
Data
1997 Dec 09
146
Philips Semiconductors
Preliminary specification
8XC51/80C31
Programmable Clock-Out
A 50% duty cycle clock can be programmed to come out on P1.0.
This pin, besides being a regular I/O pin, has two alternate
functions. It can be programmed:
1. to input the external clock for Timer/Counter 2, or
2. to output a 50% duty cycle clock ranging from 61Hz to 4MHz at a
16MHz operating frequency.
To configure the Timer/Counter 2 as a clock generator, bit C/T2 (in
T2CON) must be cleared and bit T20E in T2MOD must be set. Bit
TR2 (T2CON.2) also must be set to start the timer.
TIMER 2 OPERATION
Timer 2
Timer 2 is a 16-bit Timer/Counter which can operate as either an
event timer or an event counter, as selected by C/T2* in the special
function register T2CON (see Figure 1). Timer 2 has three operating
modes:Capture, Auto-reload (up or down counting) ,and Baud Rate
Generator, which are selected by bits in the T2CON as shown in
Table 3.
Capture Mode
In the capture mode there are two options which are selected by bit
EXEN2 in T2CON. If EXEN2=0, then timer 2 is a 16-bit timer or
counter (as selected by C/T2* in T2CON) which, upon overflowing
sets bit TF2, the timer 2 overflow bit. This bit can be used to
generate an interrupt (by enabling the Timer 2 interrupt bit in the
IE register). If EXEN2= 1, Timer 2 operates as described above, but
with the added feature that a 1- to -0 transition at external input
T2EX causes the current value in the Timer 2 registers, TL2 and
CP/RL2
TR2
16-bit Auto-reload
16-bit Capture
(off)
1997 Dec 09
MODE
147
Philips Semiconductors
Preliminary specification
8XC51/80C31
(MSB)
(LSB)
TF2
EXF2
RCLK
TCLK
EXEN2
TR2
C/T2
CP/RL2
Symbol
Position
TF2
T2CON.7
EXF2
T2CON.6
RCLK
T2CON.5
TCLK
T2CON.4
EXEN2
T2CON.3
TR2
C/T2
T2CON.2
T2CON.1
CP/RL2
T2CON.0
Timer 2 overflow flag set by a Timer 2 overflow and must be cleared by software. TF2 will not be set
when either RCLK or TCLK = 1.
Timer 2 external flag set when either a capture or reload is caused by a negative transition on T2EX and
EXEN2 = 1. When Timer 2 interrupt is enabled, EXF2 = 1 will cause the CPU to vector to the Timer 2
interrupt routine. EXF2 must be cleared by software. EXF2 does not cause an interrupt in up/down
counter mode (DCEN = 1).
Receive clock flag. When set, causes the serial port to use Timer 2 overflow pulses for its receive clock
in modes 1 and 3. RCLK = 0 causes Timer 1 overflow to be used for the receive clock.
Transmit clock flag. When set, causes the serial port to use Timer 2 overflow pulses for its transmit clock
in modes 1 and 3. TCLK = 0 causes Timer 1 overflows to be used for the transmit clock.
Timer 2 external enable flag. When set, allows a capture or reload to occur as a result of a negative
transition on T2EX if Timer 2 is not being used to clock the serial port. EXEN2 = 0 causes Timer 2 to
ignore events at T2EX.
Start/stop control for Timer 2. A logic 1 starts the timer.
Timer or counter select. (Timer 2)
0 = Internal timer (OSC/12)
1 = External event counter (falling edge triggered).
Capture/Reload flag. When set, captures will occur on negative transitions at T2EX if EXEN2 = 1. When
cleared, auto-reloads will occur either with Timer 2 overflows or negative transitions at T2EX when
EXEN2 = 1. When either RCLK = 1 or TCLK = 1, this bit is ignored and the timer is forced to auto-reload
on Timer 2 overflow.
SU00728
OSC
12
C/T2 = 0
TL2
(8-bits)
TH2
(8-bits)
TF2
C/T2 = 1
T2 Pin
Control
TR2
Capture
Transition
Detector
Timer 2
Interrupt
RCAP2L
RCAP2H
T2EX Pin
EXF2
Control
EXEN2
SU00066
1997 Dec 09
148
Philips Semiconductors
Preliminary specification
T2MOD
8XC51/80C31
Address = 0C9H
Bit
T2OE
DCEN
Symbol
Function
T2OE
DCEN
Down Count Enable bit. When set, this allows Timer 2 to be configured as an up/down counter.
User software should not write 1s to reserved bits. These bits may be used in future 8051 family products to invoke new features.
In that case, the reset or inactive value of the new bit will be 0, and its active value will be 1. The value read from a reserved bit is
indeterminate.
SU00729
OSC
12
C/T2 = 0
TL2
(8-BITS)
TH2
(8-BITS)
C/T2 = 1
T2 PIN
CONTROL
TR2
RELOAD
TRANSITION
DETECTOR
RCAP2L
RCAP2H
TF2
TIMER 2
INTERRUPT
T2EX PIN
EXF2
CONTROL
EXEN2
SU00067
1997 Dec 09
149
Philips Semiconductors
Preliminary specification
8XC51/80C31
FFH
TOGGLE
EXF2
12
OSC
C/T2 = 0
OVERFLOW
TL2
T2 PIN
TH2
TF2
INTERRUPT
C/T2 = 1
CONTROL
TR2
COUNT
DIRECTION
1 = UP
0 = DOWN
RCAP2L
RCAP2H
T2EX PIN
SU00730
Timer 1
Overflow
OSC
C/T2 = 0
SMOD
TL2
(8-bits)
TH2
(8-bits)
0
RCLK
C/T2 = 1
T2 Pin
Control
16
1
TR2
Reload
Transition
Detector
RCAP2L
T2EX Pin
EXF2
RCAP2H
RX Clock
0
TCLK
16
TX Clock
Timer 2
Interrupt
Control
EXEN2
Note availability of additional external interrupt.
SU00068
1997 Dec 09
150
Philips Semiconductors
Preliminary specification
Table 4 shows commonly used baud rates and how they can be
obtained from Timer 2.
Table 4.
Figure 6 shows the Timer 2 in baud rate generation mode. The baud
rate generation mode is like the auto-reload mode,in that a rollover
in TH2 causes the Timer 2 registers to be reloaded with the 16-bit
value in registers RCAP2H and RCAP2L, which are preset by
software.
Ba d Rate
Baud
Osc Freq
375K
9.6K
2.8K
2.4K
1.2K
300
110
300
110
12MHz
12MHz
12MHz
12MHz
12MHz
12MHz
12MHz
6MHz
6MHz
RCAP2H
RCAP2L
FF
FF
FF
FF
FE
FB
F2
FD
F9
FF
D9
B2
64
C8
1E
AF
8F
57
Baud Rate +
[32
f OSC
[65536 * (RCAP2H, RCAP2L)]]
32
f OSC
Baud Rate
Timer/Counter 2 Set-up
Except for the baud rate generator mode, the values given for
T2CON do not include the setting of the TR2 bit. Therefore, bit TR2
must be set, separately, to turn the timer on. see Table 5 for set-up
of Timer 2 as a timer. Also see Table 6 for set-up of Timer 2 as a
counter.
When Timer 2 is in the baud rate generator mode, one should not try
to read or write TH2 and TL2. As a baud rate generator, Timer 2 is
incremented every state time (osc/2) or asynchronously from pin T2;
1997 Dec 09
8XC51/80C31
151
Philips Semiconductors
Preliminary specification
8XC51/80C31
T2CON
INTERNAL CONTROL (Note 1)
16-bit Auto-Reload
00H
08H
16-bit Capture
01H
09H
34H
36H
Receive only
24H
26H
Transmit only
14H
16H
TMOD
INTERNAL CONTROL (Note 1)
16-bit
02H
0AH
Auto-Reload
03H
0BH
NOTES:
1. Capture/reload occurs only on timer/counter overflow.
2. Capture/reload occurs on timer/counter overflow and a 1-to-0 transition on T2EX (P1.1) pin except when Timer 2 is used in the baud rate
generator mode.
SADDR are to b used and which bits are dont care. The SADEN
mask can be logically ANDed with the SADDR to create the Given
address which the master will use for addressing each of the slaves.
Use of the Given address allows multiple slaves to be recognized
while excluding others. The following examples will help to show the
versatility of this scheme:
Enhanced UART
The UART operates in all of the usual modes that are described in
the first section of Data Handbook IC20, 80C51-Based 8-Bit
Microcontrollers. In addition the UART can perform framing error
detect by looking for missing stop bits, and automatic address
recognition. The 8XC51/31 UART also fully supports multiprocessor
communication.
When used for framing error detect the UART looks for missing stop
bits in the communication. A missing bit will set the FE bit in the
SCON register. The FE bit shares the SCON.7 bit with SM0 and the
function of SCON.7 is determined by PCON.6 (SMOD0) (see
Figure 7). If SMOD0 is set then SCON.7 functions as FE. SCON.7
functions as SM0 when SMOD0 is cleared. When used as FE
SCON.7 can only be cleared by software. Refer to Figure 8.
SADDR =
SADEN =
Given
=
1100 0000
1111 1101
1100 00X0
Slave 1
SADDR =
SADEN =
Given
=
1100 0000
1111 1110
1100 000X
In the above example SADDR is the same and the SADEN data is
used to differentiate between the two slaves. Slave 0 requires a 0 in
bit 0 and it ignores bit 1. Slave 1 requires a 0 in bit 1 and bit 0 is
ignored. A unique address for Slave 0 would be 1100 0010 since
slave 1 requires a 0 in bit 1. A unique address for slave 1 would be
1100 0001 since a 1 in bit 0 will exclude slave 0. Both slaves can be
selected at the same time by an address which has bit 0 = 0 (for
slave 0) and bit 1 = 0 (for slave 1). Thus, both could be addressed
with 1100 0000.
The 8 bit mode is called Mode 1. In this mode the RI flag will be set
if SM2 is enabled and the information received has a valid stop bit
following the 8 address bits and the information is either a Given or
Broadcast address.
Mode 0 is the Shift Register mode and SM2 is ignored.
Using the Automatic Address Recognition feature allows a master to
selectively communicate with one or more slaves by invoking the
Given slave address or addresses. All of the slaves may be
contacted by using the Broadcast address. Two special Function
Registers are used to define the slaves address, SADDR, and the
address mask, SADEN. SADEN is used to define which bits in the
1997 Dec 09
Slave 0
Slave 0
SADDR =
SADEN =
Given
=
1100 0000
1111 1001
1100 0XX0
Slave 1
SADDR =
SADEN =
Given
=
1110 0000
1111 1010
1110 0X0X
Slave 2
SADDR =
SADEN =
Given
=
1110 0000
1111 1100
1110 00XX
Philips Semiconductors
Preliminary specification
8XC51/80C31
Bit Addressable
SM0/FE
Bit:
SM1
7
6
(SMOD0 = 0/1)*
SM2
REN
TB8
RB8
Tl
Rl
Symbol
Function
FE
Framing Error bit. This bit is set by the receiver when an invalid stop bit is detected. The FE bit is not cleared by valid
frames but should be cleared by software. The SMOD0 bit must be set to enable access to the FE bit.
SM0
SM1
0
1
0
1
0
1
2
3
Description
Baud Rate**
shift register
8-bit UART
9-bit UART
9-bit UART
fOSC/12
variable
fOSC/64 or fOSC/32
variable
SM2
Enables the Automatic Address Recognition feature in Modes 2 or 3. If SM2 = 1 then Rl will not be set unless the
received 9th data bit (RB8) is 1, indicating an address, and the received byte is a Given or Broadcast Address.
In Mode 1, if SM2 = 1 then Rl will not be activated unless a valid stop bit was received, and the received byte is a
Given or Broadcast Address. In Mode 0, SM2 should be 0.
REN
Enables serial reception. Set by software to enable reception. Clear by software to disable reception.
TB8
The 9th data bit that will be transmitted in Modes 2 and 3. Set or clear by software as desired.
RB8
In modes 2 and 3, the 9th data bit that was received. In Mode 1, if SM2 = 0, RB8 is the stop bit that was received.
In Mode 0, RB8 is not used.
Tl
Transmit interrupt flag. Set by hardware at the end of the 8th bit time in Mode 0, or at the beginning of the stop bit in the
other modes, in any serial transmission. Must be cleared by software.
Rl
Receive interrupt flag. Set by hardware at the end of the 8th bit time in Mode 0, or halfway through the stop bit time in
the other modes, in any serial reception (except see SM2). Must be cleared by software.
NOTE:
*SMOD0 is located at PCON6.
**fOSC = oscillator frequency
SU00043
1997 Dec 09
153
Philips Semiconductors
Preliminary specification
D0
D1
D2
D3
D4
D5
D6
8XC51/80C31
D7
D8
DATA BYTE
START
BIT
ONLY IN
MODE 2, 3
STOP
BIT
SM0 / FE
SM1
SM2
REN
TB8
RB8
TI
RI
SCON
(98H)
SMOD1
SMOD0
POF
LVF
GF0
GF1
IDL
PCON
(87H)
0 : SCON.7 = SM0
1 : SCON.7 = FE
SU00044
D0
D1
D2
D3
D4
SM0
SM1
1
1
1
0
D5
SM2
1
D6
D7
D8
REN
TB8
RB8
TI
RI
SCON
(98H)
RECEIVED ADDRESS D0 TO D7
COMPARATOR
PROGRAMMED ADDRESS
SU00045
1997 Dec 09
154
Philips Semiconductors
Preliminary specification
8XC51/80C31
IPH.x
IP.x
Level 1
Level 2
Table 7.
Interrupt Table
SOURCE
POLLING PRIORITY
REQUEST BITS
HARDWARE CLEAR?
N
(L)1
(T)2
VECTOR ADDRESS
X0
IE0
T0
TP0
03H
X1
IE1
N (L) Y (T)
13H
T1
TF1
1BH
SP
RI, TI
23H
T2
TF2, EXF2
2BH
0BH
NOTES:
1. L = Level activated
2. T = Transition activated
IE (0A8H)
EA
ET2
ES
ET1
EX1
ET0
EX0
SYMBOL
EA
IE.6
IE.5
IE.4
IE.3
IE.2
IE.1
IE.0
ET2
ES
ET1
EX1
ET0
EX0
FUNCTION
Global disable bit. If EA = 0, all interrupts are disabled. If EA = 1, each interrupt can be individually
enabled or disabled by setting or clearing its enable bit.
Not implemented.
Timer 2 interrupt enable bit.
Serial Port interrupt enable bit.
Timer 1 interrupt enable bit.
External interrupt 1 enable bit.
Timer 0 interrupt enable bit.
External interrupt 0 enable bit.
Figure 10. IE Registers
1997 Dec 09
155
SU00571
Philips Semiconductors
Preliminary specification
IP (0B8H)
8XC51/80C31
PT2
PS
PT1
PX1
PT0
PX0
SYMBOL
PT2
PS
PT1
PX1
PT0
PX0
FUNCTION
Not implemented, reserved for future use.
Not implemented, reserved for future use.
Timer 2 interrupt priority bit.
Serial Port interrupt priority bit.
Timer 1 interrupt priority bit.
External interrupt 1 priority bit.
Timer 0 interrupt priority bit.
External interrupt 0 priority bit.
SU00572
IPH (B7H)
PPCH
PT2H
PSH
PT1H
PX1H
PT0H
PX0H
SYMBOL
PPCH
PT2H
PSH
PT1H
PX1H
PT0H
PX0H
FUNCTION
Not implemented, reserved for future use.
PCA interrupt priority bit high for RX+ only, not implemented on 89C52/54/58.
Timer 2 interrupt priority bit high.
Serial Port interrupt priority bit high.
Timer 1 interrupt priority bit high.
External interrupt 1 priority bit high.
Timer 0 interrupt priority bit high.
External interrupt 0 priority bit high.
Figure 12. IPH Registers
1997 Dec 09
156
SU00881
Philips Semiconductors
Preliminary specification
8XC51/80C31
Note that bit 2 is not writable and is always read as a zero. This
allows the DPS bit to be quickly toggled simply by executing an INC
DPTR insstruction without affecting the WOPD or LPEP bits.
DPS
AO
AUXR.0
AO
BIT0
AUXR1
DPTR1
DPTR0
DPH
(83H)
DPL
(82H)
EXTERNAL
DATA
MEMORY
Dual DPTR
SU00745A
The dual DPTR structure (see Figure 13) enables a way to specify
the address of an external data memory location. There are two
16-bit DPTR registers that address the external memory, and a
single bit called DPS = AUXR1/bit0 that allows the program code to
switch between them.
Figure 13.
DPTR Instructions
The instructions that refer to DPTR refer to the data pointer that is
currently selected using the AUXR1/bit 0 register. The six
instructions that use the DPTR are as follows:
INC DPTR
LPEP
WUPD
DPS
Where:
DPS = AUXR1/bit0 = Switches between DPTR0 and DPTR1.
Select Reg
DPS
DPTR0
DPTR1
1997 Dec 09
MOV A, @ A+DPTR
MOVX A, @ DPTR
MOVX @ DPTR , A
JMP @ A + DPTR
157
Philips Semiconductors
Preliminary specification
8XC51/80C31
RATING
UNIT
0 to +70 or 40 to +85
65 to +150
0 to +13.0
0.5 to +6.5
15
mA
Power dissipation (based on package heat transfer limitations, not device power consumption)
1.5
W
NOTES:
1. Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only and
functional operation of the device at these or any conditions other than those described in the AC and DC Electrical Characteristics section
of this specification is not implied.
2. This product includes circuitry specifically designed for the protection of its internal devices from the damaging effects of excessive static
charge. Nonetheless, it is suggested that conventional precautions be taken to avoid applying greater than the rated maximum.
3. Parameters are valid over operating temperature range unless otherwise specified. All voltages are with respect to VSS unless otherwise
noted.
AC ELECTRICAL CHARACTERISTICS
Tamb = 0C to +70C or 40C to +85C
CLOCK FREQUENCY
RANGE f
SYMBOL
1/tCLCL
1997 Dec 09
FIGURE
29
PARAMETER
Oscillator frequency
Speed versions : 4:5:S (16MHz)
I:J:O (33MHz)
158
MIN
MAX
0
0
16
33
UNIT
MHz
MHz
Philips Semiconductors
Preliminary specification
8XC51/80C31
DC ELECTRICAL CHARACTERISTICS
Tamb = 0C to +70C or 40C to +85C, VCC = 2.7V to 5.5V, VSS = 0V (16MHz devices)
SYMBOL
PARAMETER
VIL
VIH
VIH1
MIN
0.5
2.7V<VCC< 4.0V
VOL
VCC = 2.7V
IOL = 1.6mA2
VOL1
VCC = 2.7V
IOL = 3.2mA2
VOH
O
voltage ports 1,
1 2,
2 3
Output high voltage,
LIMITS
TEST
CONDITIONS
TYP1
MAX
UNIT
0.2VCC0.1
0.5
0.7
0.2VCC+0.9
VCC+0.5
0.7VCC
VCC+0.5
0.4
0.4
VCC = 2.7V
IOH = 20A
VCC 0.7
VCC = 4.5V
IOH = 30A
VCC 0.7
VCC = 2.7V
IOH = 3.2mA
VCC 0.7
VOH1
IIL
VIN = 0.4V
50
ITL
VIN = 2.0V
See note 4
650
ILI
10
ICC
50
75
A
A
A
A
225
RRST
See note 5
Tamb = 0C to 70C
Tamb = 40C to +85C
3
40
CIO
Pin capacitance10 (except EA)
15
pF
NOTES:
1. Typical ratings are not guaranteed. The values listed are at room temperature, 5V.
2. Capacitive loading on ports 0 and 2 may cause spurious noise to be superimposed on the VOLs of ALE and ports 1 and 3. The noise is due
to external bus capacitance discharging into the port 0 and port 2 pins when these pins make 1-to-0 transitions during bus operations. In the
worst cases (capacitive loading > 100pF), the noise pulse on the ALE pin may exceed 0.8V. In such cases, it may be desirable to qualify
ALE with a Schmitt Trigger, or use an address latch with a Schmitt Trigger STROBE input. IOL can exceed these conditions provided that no
single output sinks more than 5mA and no more than two outputs exceed the test conditions.
3. Capacitive loading on ports 0 and 2 may cause the VOH on ALE and PSEN to momentarily fall below the VCC0.7 specification when the
address bits are stabilizing.
4. Pins of ports 1, 2 and 3 source a transition current when they are being externally driven from 1 to 0. The transition current reaches its
maximum value when VIN is approximately 2V.
5. See Figures 22 through 25 for ICC test conditions.
Active mode:
ICC = 0.9 FREQ. + 1.1mA
Idle mode:
ICC = 0.18 FREQ. +1.01mA; See Figure 21.
6. This value applies to Tamb = 0C to +70C. For Tamb = 40C to +85C, ITL = 750A.
7. Load capacitance for port 0, ALE, and PSEN = 100pF, load capacitance for all other outputs = 80pF.
8. Under steady state (non-transient) conditions, IOL must be externally limited as follows:
Maximum IOL per port pin:
15mA (*NOTE: This is 85C specification.)
26mA
Maximum IOL per 8-bit port:
Maximum total IOL for all outputs:
71mA
If IOL exceeds the test condition, VOL may exceed the related specification. Pins are not guaranteed to sink current greater than the listed
test conditions.
9. ALE is tested to VOH1, except when ALE is off then VOH is the voltage specification.
10. Pin capacitance is characterized but not tested. Pin capacitance is less than 25pF. Pin capacitance of ceramic package is less than 15pF
(except EA is 25pF).
1997 Dec 09
159
Philips Semiconductors
Preliminary specification
8XC51/80C31
DC ELECTRICAL CHARACTERISTICS
Tamb = 0C to +70C or 40C to +85C, 33MHz devices; 5V 10%; VSS = 0V
SYMBOL
PARAMETER
VIL
VIH
VIH1
VOL
VOL1
TEST
CONDITIONS
MIN
TYP1
UNIT
MAX
0.5
0.2VCC0.1
0.2VCC+0.9
VCC+0.5
0.7VCC
VCC+0.5
VCC = 4.5V
IOL = 1.6mA2
0.4
VCC = 4.5V
IOL = 3.2mA2
0.4
VOH
VCC = 4.5V
IOH = 30A
VCC 0.7
VOH1
VCC = 4.5V
IOH = 3.2mA
VCC 0.7
IIL
VIN = 0.4V
ITL
ILI
ICC
RRST
CIO
LIMITS
50
VIN = 2.0V
See note 4
650
10
50
75
A
A
225
15
pF
See note 5
Tamb = 0C to 70C
Tamb = 40C to +85C
capacitance10
3
40
(except EA)
NOTES:
1. Typical ratings are not guaranteed. The values listed are at room temperature, 5V.
2. Capacitive loading on ports 0 and 2 may cause spurious noise to be superimposed on the VOLs of ALE and ports 1 and 3. The noise is due
to external bus capacitance discharging into the port 0 and port 2 pins when these pins make 1-to-0 transitions during bus operations. In the
worst cases (capacitive loading > 100pF), the noise pulse on the ALE pin may exceed 0.8V. In such cases, it may be desirable to qualify
ALE with a Schmitt Trigger, or use an address latch with a Schmitt Trigger STROBE input. IOL can exceed these conditions provided that no
single output sinks more than 5mA and no more than two outputs exceed the test conditions.
3. Capacitive loading on ports 0 and 2 may cause the VOH on ALE and PSEN to momentarily fall below the VCC0.7 specification when the
address bits are stabilizing.
4. Pins of ports 1, 2 and 3 source a transition current when they are being externally driven from 1 to 0. The transition current reaches its
maximum value when VIN is approximately 2V.
5. See Figures 22 through 25 for ICC test conditions.
Active mode:
ICC(MAX) = 0.9 FREQ. + 1.1mA
Idle mode:
ICC(MAX) = 0.18 FREQ. +1.0mA; See Figure 21.
6. This value applies to Tamb = 0C to +70C. For Tamb = 40C to +85C, ITL = 750A.
7. Load capacitance for port 0, ALE, and PSEN = 100pF, load capacitance for all other outputs = 80pF.
8. Under steady state (non-transient) conditions, IOL must be externally limited as follows:
15mA (*NOTE: This is 85C specification.)
Maximum IOL per port pin:
Maximum IOL per 8-bit port:
26mA
71mA
Maximum total IOL for all outputs:
If IOL exceeds the test condition, VOL may exceed the related specification. Pins are not guaranteed to sink current greater than the listed
test conditions.
9. ALE is tested to VOH1, except when ALE is off then VOH is the voltage specification.
10. Pin capacitance is characterized but not tested. Pin capacitance is less than 25pF. Pin capacitance of ceramic package is less than 15pF
(except EA is 25pF).
1997 Dec 09
160
Philips Semiconductors
Preliminary specification
8XC51/80C31
AC ELECTRICAL CHARACTERISTICS
FIGURE
PARAMETER
MIN
MAX
Oscillator frequency5
Speed versions :S
VARIABLE CLOCK
MIN
MAX
UNIT
3.5
16
MHz
1/tCLCL
14
tLHLL
14
85
2tCLCL40
ns
tAVLL
14
22
tCLCL40
ns
tLLAX
14
32
tLLIV
14
tLLPL
14
32
tPLPH
14
142
tPLIV
14
tPXIX
14
tPXIZ
14
37
tCLCL25
ns
14
207
5tCLCL105
ns
14
10
10
ns
tAVIV
tPLAZ
tCLCL30
150
ns
4tCLCL100
tCLCL30
ns
3tCLCL45
82
ns
ns
3tCLCL105
0
ns
ns
Data Memory
tRLRH
15, 16
RD pulse width
275
6tCLCL100
ns
tWLWH
15, 16
WR pulse width
275
6tCLCL100
ns
tRLDV
15, 16
tRHDX
15, 16
tRHDZ
15, 16
65
2tCLCL60
ns
tLLDV
15, 16
350
8tCLCL150
ns
tAVDV
15, 16
397
9tCLCL165
ns
tLLWL
15, 16
137
3tCLCL+50
ns
tAVWL
15, 16
122
4tCLCL130
ns
tQVWX
15, 16
13
tCLCL50
ns
tWHQX
15, 16
13
tCLCL50
ns
tQVWH
16
287
7tCLCL150
ns
tRLAZ
15, 16
tWHLH
15, 16
23
147
0
5tCLCL165
0
239
3tCLCL50
0
103
tCLCL40
ns
ns
ns
tCLCL+40
ns
External Clock
tCHCX
18
High time
20
20
tCLCLtCLCX
ns
tCLCX
18
Low time
20
20
tCLCLtCHCX
ns
tCLCH
18
Rise time
20
20
ns
tCHCL
18
Fall time
20
20
ns
tXLXL
17
750
12tCLCL
ns
tQVXH
17
492
10tCLCL133
ns
tXHQX
17
2tCLCL117
ns
tXHDX
17
ns
Shift Register
tXHDV
17
Clock rising edge to input data valid
492
10tCLCL133
ns
NOTES:
1. Parameters are valid over operating temperature range unless otherwise specified.
2. Load capacitance for port 0, ALE, and PSEN = 100pF, load capacitance for all other outputs = 80pF.
3. Interfacing the 8XC51 and 80C31 to devices with float times up to 45ns is permitted. This limited bus contention will not cause damage to
Port 0 drivers.
4. See application note AN457 for external memory interface.
5. Parts are guaranteed to operate down to 0Hz.
1997 Dec 09
161
Philips Semiconductors
Preliminary specification
8XC51/80C31
AC ELECTRICAL CHARACTERISTICS
16MHz to fmax
SYMBOL
FIGURE
PARAMETER
MIN
MAX
MIN
MAX
UNIT
tLHLL
14
2tCLCL40
21
ns
tAVLL
14
tCLCL25
ns
tLLAX
14
tCLCL25
tLLIV
14
tLLPL
14
tCLCL25
ns
tPLPH
14
3tCLCL45
45
ns
tPLIV
14
tPXIX
14
tPXIZ
14
tCLCL25
ns
tAVIV
14
5tCLCL80
70
ns
tPLAZ
14
10
10
ns
ns
4tCLCL65
55
3tCLCL60
0
30
0
ns
ns
ns
Data Memory
tRLRH
15, 16
RD pulse width
6tCLCL100
82
tWLWH
15, 16
WR pulse width
6tCLCL100
82
tRLDV
15, 16
tRHDX
15, 16
tRHDZ
15, 16
2tCLCL28
32
ns
tLLDV
15, 16
8tCLCL150
90
ns
tAVDV
15, 16
9tCLCL165
105
ns
tLLWL
15, 16
3tCLCL50
140
ns
tAVWL
15, 16
4tCLCL75
45
ns
tQVWX
15, 16
tCLCL30
ns
tWHQX
15, 16
tCLCL25
ns
tQVWH
16
7tCLCL130
80
tRLAZ
15, 16
tWHLH
15, 16
tCLCL25
5tCLCL90
0
ns
ns
60
3tCLCL+50
40
0
tCLCL+25
ns
ns
ns
0
ns
55
ns
External Clock
tCHCX
18
High time
0.38tCLCL
tCLCLtCLCX
ns
tCLCX
18
Low time
0.38tCLCL
tCLCLtCHCX
ns
tCLCH
18
Rise time
ns
tCHCL
18
Fall time
ns
tXLXL
17
12tCLCL
360
ns
tQVXH
17
10tCLCL133
167
ns
tXHQX
17
2tCLCL80
tXHDX
17
Shift Register
ns
0
ns
tXHDV
17
Clock rising edge to input data valid
10tCLCL133
167
ns
NOTES:
1. Parameters are valid over operating temperature range unless otherwise specified.
2. Load capacitance for port 0, ALE, and PSEN = 100pF, load capacitance for all other outputs = 80pF.
3. Interfacing the 8XC51 and 80C31 to devices with float times up to 45ns is permitted. This limited bus contention will not cause damage to
Port 0 drivers.
4. Variable clock is specified for oscillator frequencies greater than 16MHz to 33MHz. For frequencies equal or less than 16MHz, see 16MHz
AC Electrical Characteristics, page 213.
5. Parts are guaranteed to operate down to 0Hz.
1997 Dec 09
162
Philips Semiconductors
Preliminary specification
8XC51/80C31
Each timing symbol has five characters. The first character is always
t (= time). The other characters, depending on their positions,
indicate the name of a signal or the logical status of that signal. The
designations are:
A Address
C Clock
D Input data
H Logic level high
I Instruction (program memory contents)
L Logic level low, or ALE
tLHLL
ALE
tAVLL
tLLPL
tPLPH
tLLIV
tPLIV
PSEN
tLLAX
INSTR IN
A0A7
PORT 0
tPXIZ
tPLAZ
tPXIX
A0A7
tAVIV
PORT 2
A0A15
A8A15
SU00006
ALE
tWHLH
PSEN
tLLDV
tLLWL
tRLRH
RD
tAVLL
tLLAX
tRLAZ
PORT 0
tRHDZ
tRLDV
tRHDX
A0A7
FROM RI OR DPL
DATA IN
INSTR IN
tAVWL
tAVDV
PORT 2
SU00025
1997 Dec 09
163
Philips Semiconductors
Preliminary specification
8XC51/80C31
ALE
tWHLH
PSEN
tWLWH
tLLWL
WR
tLLAX
tAVLL
tWHQX
tQVWX
tQVWH
A0A7
FROM RI OR DPL
PORT 0
DATA OUT
INSTR IN
tAVWL
PORT 2
SU00026
INSTRUCTION
ALE
tXLXL
CLOCK
tXHQX
tQVXH
OUTPUT DATA
0
WRITE TO SBUF
tXHDX
tXHDV
SET TI
INPUT DATA
VALID
VALID
VALID
VALID
VALID
VALID
VALID
VALID
CLEAR RI
SET RI
SU00027
VCC0.5
0.45V
0.7VCC
0.2VCC0.1
tCHCL
tCHCX
tCLCH
tCLCX
tCLCL
SU00009
1997 Dec 09
164
Philips Semiconductors
Preliminary specification
VCC0.5
8XC51/80C31
VLOAD+0.1V
0.2VCC+0.9
TIMING
REFERENCE
POINTS
VLOAD
0.45V
0.2VCC0.1
VLOAD0.1V
VOH0.1V
VOL+0.1V
NOTE:
For timing purposes, a port is no longer floating when a 100mV change from
load voltage occurs, and begins to float when a 100mV change from the loaded
VOH/VOL level occurs. IOH/IOL 20mA.
NOTE:
AC inputs during testing are driven at VCC 0.5 for a logic 1 and 0.45V for a logic 0.
Timing measurements are made at VIH min for a logic 1 and VIL max for a logic 0.
SU00717
SU00718
35
30
ICC(mA)
25
20
MAX ACTIVE
MODE (EXCEPT
8XC51RD+)
15
ICCMAX = 0.9 X
FREQ. + 1.1
TYP ACTIVE MODE
10
MAX IDLE MODE
5
TYP IDLE MODE
4
12
16
20
24
28
32
36
SU00837A
1997 Dec 09
165
Philips Semiconductors
Preliminary specification
8XC51/80C31
VCC
VCC
ICC
ICC
VCC
VCC
VCC
VCC
RST
RST
VCC
P0
P0
EA
EA
(NC)
XTAL2
(NC)
XTAL2
CLOCK SIGNAL
XTAL1
CLOCK SIGNAL
XTAL1
VSS
VSS
SU00719
SU00720
VCC0.5
0.7VCC
0.2VCC0.1
0.45V
tCHCL
tCHCX
tCLCH
tCLCX
tCLCL
SU00009
Figure 24. Clock Signal Waveform for ICC Tests in Active and Idle Modes
tCLCH = tCHCL = 5ns
VCC
ICC
VCC
VCC
RST
P0
EA
(NC)
XTAL2
XTAL1
VSS
SU00016
1997 Dec 09
166
Philips Semiconductors
Preliminary specification
8XC51/80C31
EPROM CHARACTERISTICS
All these devices can be programmed by using a modified Improved
Quick-Pulse Programming algorithm. It differs from older methods
in the value used for VPP (programming supply voltage) and in the
width and number of the ALE/PROG pulses.
The family contains two signature bytes that can be read and used
by an EPROM programming system to identify the device. The
signature bytes identify the device as being manufactured by
Philips.
Table 8 shows the logic levels for reading the signature byte, and for
programming the program memory, the encryption table, and the
security bits. The circuit configuration and waveforms for quick-pulse
programming are shown in Figures 26 and 27. Figure 28 shows the
circuit configuration for normal program memory verification.
Program/Verify Algorithms
Quick-Pulse Programming
Erasure Characteristics
Security Bits
With none of the security bits programmed the code in the program
memory can be verified. If the encryption table is programmed, the
code will be encrypted when verified. When only security bit 1 (see
Table 9) is programmed, MOVC instructions executed from external
program memory are disabled from fetching code bytes from the
internal memory, EA is latched on Reset and all further programming
of the EPROM is disabled. When security bits 1 and 2 are
programmed, in addition to the above, verify mode is disabled.
When all three security bits are programmed, all of the conditions
above apply and all external program memory execution is disabled.
Note that the EA/VPP pin must not be allowed to go above the
maximum specified VPP level for any amount of time. Even a narrow
glitch above that voltage can cause permanent damage to the
device. The VPP source should be well regulated and free of glitches
and overshoot.
Program Verification
If security bits 2 and 3 have not been programmed, the on-chip
program memory can be read out for program verification. The
address of the program memory locations to be read is applied to
ports 1 and 2 as shown in Figure 28. The other pins are held at the
Verify Code Data levels indicated in Table 8. The contents of the
address location will be emitted on port 0. External pull-ups are
required on port 0 for this operation.
Encryption Array
64 bytes of encryption array are initially unprogrammed (all 1s).
167
Philips Semiconductors
Preliminary specification
8XC51/80C31
PSEN
ALE/PROG
EA/VPP
P2.7
P2.6
P3.7
P3.6
Read signature
MODE
0*
VPP
0*
VPP
0*
VPP
0*
VPP
0*
VPP
NOTES:
1. 0 = Valid low for that pin, 1 = valid high for that pin.
2. VPP = 12.75V 0.25V.
3. VCC = 5V10% during programming and verification.
* ALE/PROG receives 5 programming pulses for code data (also for user array; 5 pulses for encryption or security bits) while VPP is held at
12.75V. Each programming pulse is low for 100s (10s) and high for a minimum of 10s.
SB2
SB3
No Program Security features enabled. (Code verify will still be encrypted by the Encryption Array if
programmed.)
MOVC instructions executed from external program memory are disabled from fetching code bytes
from internal memory, EA is sampled and latched on Reset, and further programming of the EPROM
is disabled.
PROTECTION DESCRIPTION
NOTES:
1. P programmed. U unprogrammed.
2. Any other combination of the security bits is not defined.
1997 Dec 09
168
Philips Semiconductors
Preliminary specification
8XC51/80C31
+5V
A0A7
VCC
P1
P0
1
RST
P3.6
EA/VPP
P3.7
ALE/PROG
EPROM/OTP
XTAL2
46MHz
XTAL1
PGM DATA
+12.75V
5 PULSES TO GROUND
PSEN
P2.7
P2.6
0
A8A13
P2.0P2.5
VSS
SU00873
5 PULSES
1
ALE/PROG:
SU00875
+5V
VCC
A0A7
P0
P1
RST
P3.6
P3.7
EPROM/OTP
XTAL2
46MHz
XTAL1
EA/VPP
ALE/PROG
PSEN
P2.7
0 ENABLE
P2.6
P2.0P2.5
VSS
PGM DATA
P3.4
A8A13
A14
SU00839A
1997 Dec 09
169
Philips Semiconductors
Preliminary specification
8XC51/80C31
PARAMETER
MIN
MAX
UNIT
12.5
13.0
50 1
mA
MHz
VPP
IPP
1/tCLCL
Oscillator frequency
tAVGL
48tCLCL
tGHAX
48tCLCL
tDVGL
48tCLCL
tGHDX
48tCLCL
tEHSH
48tCLCL
tSHGL
10
tGHSL
10
tGLGH
PROG width
90
tAVQV
48tCLCL
tELQZ
48tCLCL
tEHQZ
tGHGL
10
110
48tCLCL
s
NOTE:
1. Not tested.
PROGRAMMING*
VERIFICATION*
P1.0P1.7
P2.0P2.5
P3.4
(A0 A14)
ADDRESS
ADDRESS
PORT 0
P0.0 P0.7
(D0 D7)
DATA IN
tAVQV
DATA OUT
tDVGL
tAVGL
tGHDX
tGHAX
ALE/PROG
tGLGH
tSHGL
tGHGL
tGHSL
LOGIC 1
LOGIC 1
EA/VPP
LOGIC 0
tEHSH
tELQV
tEHQZ
P2.7
**
SU00871
NOTES:
* FOR PROGRAMMING CONFIGURATION SEE FIGURE 26.
FOR VERIFICATION CONDITIONS SEE FIGURE 28.
**
SEE TABLE 8.
1997 Dec 09
170
Philips Semiconductors
Preliminary specification
8XC51/80C31
Security Bits
With none of the security bits programmed the code in the program
memory can be verified. If the encryption table is programmed, the
code will be encrypted when verified. When only security bit 1 (see
Table 10) is programmed, MOVC instructions executed from
external program memory are disabled from fetching code bytes
Encryption Array
64 bytes of encryption array are initially unprogrammed (all 1s).
SB2
MOVC instructions executed from external program memory are disabled from fetching code bytes from
internal memory, EA is sampled and latched on Reset, and further programming of the EPROM is disabled.
PROTECTION DESCRIPTION
NOTES:
1. P programmed. U unprogrammed.
2. Any other combination of the security bits is not defined.
CONTENT
BIT(S)
COMMENT
0000H to 0FFFH
DATA
7:0
1000H to 103FH
KEY
7:0
1040H
SEC
1040H
SEC
Security Bit 1: When programmed, this bit has two effects on masked ROM parts:
1. External MOVC is disabled, and
2. EA is latched on Reset.
Security Bit 2: When programmed, this bit inhibits Verify User ROM.
NOTE: Security Bit 2 cannot be enabled unless Security Bit 1 is enabled.
If the ROM Code file does not include the options, the following information must be included with the ROM code.
For each of the following, check the appropriate box, and send to Philips along with the code:
Security Bit #1:
Enabled
Disabled
Enabled
Disabled
Encryption:
No
Yes
1997 Dec 09
171
Philips Semiconductors
Preliminary specification
1997 Dec 09
172
8XC51/80C31
SOT129-1
Philips Semiconductors
Preliminary specification
1997 Dec 09
8XC51/80C31
SOT187-2
173
Philips Semiconductors
Preliminary specification
8XC51/80C31
QFP44: plastic quad flat package; 44 leads (lead length 1.3 mm); body 10 x 10 x 1.75 mm
1997 Dec 09
174
SOT307-2
Philips Semiconductors
Preliminary specification
8XC51/80C31
DEFINITIONS
Data Sheet Identification
Product Status
Definition
Objective Specification
Formative or in Design
This data sheet contains the design target or goal specifications for product development. Specifications
may change in any manner without notice.
Preliminary Specification
Preproduction Product
This data sheet contains preliminary data, and supplementary data will be published at a later date. Philips
Semiconductors reserves the right to make changes at any time without notice in order to improve design
and supply the best possible product.
Product Specification
Full Production
This data sheet contains Final Specifications. Philips Semiconductors reserves the right to make changes
at any time without notice, in order to improve design and supply the best possible product.
Philips Semiconductors and Philips Electronics North America Corporation reserve the right to make changes, without notice, in the products,
including circuits, standard cells, and/or software, described or contained herein in order to improve design and/or performance. Philips
Semiconductors assumes no responsibility or liability for the use of any of these products, conveys no license or title under any patent, copyright,
or mask work right to these products, and makes no representations or warranties that these products are free from patent, copyright, or mask
work right infringement, unless otherwise specified. Applications that are described herein for any of these products are for illustrative purposes
only. Philips Semiconductors makes no representation or warranty that such applications will be suitable for the specified use without further testing
or modification.
LIFE SUPPORT APPLICATIONS
Philips Semiconductors and Philips Electronics North America Corporation Products are not designed for use in life support appliances, devices,
or systems where malfunction of a Philips Semiconductors and Philips Electronics North America Corporation Product can reasonably be expected
to result in a personal injury. Philips Semiconductors and Philips Electronics North America Corporation customers using or selling Philips
Semiconductors and Philips Electronics North America Corporation Products for use in such applications do so at their own risk and agree to fully
indemnify Philips Semiconductors and Philips Electronics North America Corporation for any damages resulting from such improper use or sale.
Copyright Philips Electronics North America Corporation 1997
All rights reserved. Printed in U.S.A.
Philips Semiconductors
811 East Arques Avenue
P.O. Box 3409
Sunnyvale, California 940883409
Telephone 800-234-7381
1997 Dec 09
175