Product specification
Supersedes data of 1996 Aug 15
IC20 Data Handbook
1998 Jan 06
Philips SemiconductorsProduct specification
83C654CMOS single-chip 8-bit microcontroller
DESCRIPTION
The P83C654 Single-Chip 8-Bit
Microcontroller is manufactured in an
advanced CMOS process and is a derivative
of the 80C51 microcontroller family. The
83C654 has the same instruction set as the
80C51. Two versions of the derivative exist:
83C654 — 16k bytes mask programmable
ROM
87C654 — EPROM version (described in a
separate data sheet)
This device provides architectural
enhancements that make it applicable in a
variety of applications for general control
systems. The 83C654 contains a non-volatile
16k × 8 read-only program memory, a volatile
256 × 8 read/write data memory, four 8-bit I/O
ports, two 16-bit timer/event counters
(identical to the timers of the 80C51), a
multi-source, two-priority-level, nested
interrupt structure, an I
2
C interface, UART
and on-chip oscillator and timing circuits. For
systems that require extra capability, the
BLOCK DIAGRAM
FREQUENCY
REFERENCE
8XC654 can be expanded using standard
TTL compatible memories and logic.
The device also functions as an arithmetic
processor having facilities for both binary and
BCD arithmetic plus bit-handling capabilities.
The instruction set consists of over 100
instructions: 49 one-byte, 45 two-byte and 17
three-byte. With a 16(24)MHz crystal, 58% of
the instructions are executed in 0.75(0.5)µs
and 40% in 1.5(1)µs. Multiply and divide
instructions require 3(2)µs.
* Do not connect.
(QFP only): Due to EMC improvements, all V
1998 Jan 06
pins (6, 16, 28, 39) must be connected to V
SS
4
on the 80C652/83C654.
SS
Philips SemiconductorsProduct specification
NUMBER
AND PACKAGE
MH
2,3
83C654CMOS single-chip 8-bit microcontroller
ORDERING INFORMATION
PHILIPS PART ORDER NUMBER
PART MARKING
ROMless
P80C652EBP P83C654EBP/xxx P80C652EBPN P83C654EBPN S87C654-4N40 SOT129-10 to +70,
P80C652EBA P83C654EBA/xxx P80C652EBAA P83C654EBAAS87C654-4A44 SOT187-20 to +70,
P80C652EBB P83C654EBB/xxx P80C652EBBB P83C654EBBBS87C654-4B44 SOT307-20 to +70,
P80C652EFP P83C654EFP/xxxP80C652EFPN P83C654EFPNS87C654-5N40 SOT129-1–40 to +85,
P80C652EFA P83C654EFA/xxxP80C652EFAAP83C654EFAAS87C654-5A44SOT187-2–40 to +85,
P80C652EFB P83C654EFB/xxxP80C652EFBBP83C654EFBBS87C654-5B44SOT307-2–40 to +85,
P80C652EHP P83C654EHP/xxx P80C652EHPN P83C654EHPNSOT129-1–40 to +125,
P80C652EHA P83C654EHA/xxx P80C652EHAA P83C654EHAASOT187-2–40 to +125,
P80C652EHB P83C654EHB/xxx P80C652EHBB P83C654EHBBSOT307-2–40 to +125,
P80C652IBPP83C654IBP/xxxP80C652IBPNP83C654IBPNSOT129-10 to +70,
P80C652IBAP83C654IBA/xxxP80C652IBAAP83C654IBAASOT187-20 to +70,
P80C652IBBP83C654IBB/xxxP80C652IBBBP83C654IBBBSOT307-20 to +70,
P80C652IFPP83C654IFP/xxxP80C652IFPNP83C654IFPNSOT129-1–40 to +85,
P80C652IFAP83C654IFA/xxxP80C652IFAAP83C654IFAASOT187-2–40 to +85,
P80C652IFBP83C654IFB/xxxP80C652IFBBP83C654IFBBSOT307-2–40 to +85,
1
ROMROMless
P83C654EBR/xxxSOT270-10 to +70,
NOTES:
1. For full specification, see the 80C652/83C652 data sheet.
2. 83C654 frequency range is 3.5MHz–16MHz or 3.5MHz–24MHz.
3. For specification of the EPROM version, see the 87C654 data sheet.
4. xxx denotes the ROM code number.
PHILIPS NORTH AMERICA
PART ORDER NUMBER
1
ROMEPROM
S87C654-7N40 SOT129-10 to +70,
S87C654-7A44SOT187-20 to +70,
S87C654-8N40 SOT129-1–40 to +85,
S87C654-8A44SOT187-2–40 to +85,
3
DRAWING
TEMPERA TURE RANGE (°C)
Plastic Dual In-line Package
Plastic Leaded Chip Carrier
Plastic Quad Flat Pack
Plastic Shrink Dual In-Line Package
Plastic Dual In-line Package
Plastic Leaded Chip Carrier
Plastic Quad Flat Pack
Plastic Dual In-line Package
Plastic Leaded Chip Carrier
Plastic Quad Flat Pack
Plastic Dual In-line Package
Plastic Leaded Chip Carrier
Plastic Dual In-line Package
Plastic Leaded Chip Carrier
Plastic Dual In-line Package
Plastic Leaded Chip Carrier
Plastic Quad Flat Pack
Plastic Dual In-line Package
Plastic Leaded Chip Carrier
Plastic Quad Flat Pack
FREQ
z
16
16
16
16
16
16
16
16
16
16
20
20
20
20
24
24
24
24
24
24
1998 Jan 06
5
Philips SemiconductorsProduct specification
83C654CMOS single-chip 8-bit microcontroller
PIN DESCRIPTIONS
PIN NUMBER
MNEMONICDIPPLCCQFPTYPE NAME AND FUNCTION
V
SS
V
DD
P0.0–0.739–32 43–36 37–30I/OPort 0: Port 0 is an open-drain, bidirectional I/O port. Port 0 pins that have 1s written to them
P1.0–P1.71–82–940–44,
P1.6782I/OSCL: I2C-bus serial port clock line.
P1.7893I/OSDA: I2C-bus serial port data line.
P2.0–P2.721–28 24–31 18–25I/OPort 2: Port 2 is an 8-bit bidirectional I/O port with internal pull-ups. Port 2 pins that have 1s
P3.0–P3.710–1711,
RST9104IReset: A high on this pin for two machine cycles while the oscillator is running, resets the
ALE303327I/OAddress Latch Enable: Output pulse for latching the low byte of the address during an
PSEN293226OProgram Store Enable: Read strobe to external program memory via Port 0 and Port 2. It is
EA313529IExternal Access: If during a RESET, EA is held at TTL, level HIGH, the CPU executes out
XTAL1192115ICrystal 1: Input to the inverting oscillator amplifier and input to the internal clock generator
XTAL2182014OCrystal 2: Output from the inverting oscillator amplifier.
NOTE:
To avoid “latch-up” effect at power-on, the voltage on any pin at any time must not be higher than V
20226, 16,
28, 39
IGround: 0V reference. With the QFP package all VSS pins (V
connected.
SS1
to V
) must be
SS4
404438IPower Supply: This is the power supply voltage for normal, idle, and power-down
operation.
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.
I/OPort 1: Port 1 is an 8-bit bidirectional I/O port with internal pull-ups, except P1.6 and P1.7
1–3
which are open drain. 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: I
Alternate functions include:
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: I
during fetches from external program memory and during accesses to external data memory
). Port 2 emits the high-order address byte
IL
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.
I/OPort 3: Port 3 is an 8-bit bidirectional I/O port with internal pull-ups. Port 3 pins that have 1s
13–195,7–13
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: I
family, as listed below:
). Port 3 also serves the special features of the 80C51
IL
10115IRxD (P3.0): Serial input port
11137OTxD (P3.1): Serial output port
12148IINT0 (P3.2): External interrupt
13159IINT1 (P3.3): External interrupt
141610IT0 (P3.4): Timer 0 external input
151711IT1 (P3.5): Timer 1 external input
161812OWR (P3.6): External data memory write strobe
171913ORD (P3.7): External data memory read strobe
device. An internal diffused resistor to V
capacitor to V
DD
.
permits a power-on reset using only an external
SS
access to external memory. In normal operation, ALE is emitted at a constant rate of 1/6 the
oscillator frequency . Note that one ALE pulse is skipped during each access to external data
memory.
activated twice each machine cycle during fetches from the external program memory. When
executing out of external program memory two activations of PSEN
access to external data memory. PSEN
from external program memory. PSEN
is not activated (remains HIGH) during no fetches
can sink/source 8 LSTTL inputs and can drive CMOS
are skipped during each
inputs without external pull–ups.
of the internal program memory ROM provided the Program Counter is less than 16384. If
during a RESET, EA
memory. EA
is held a TTL LOW level, the CPU executes out of external program
Data pointer
(2 bytes)
Data pointer high
Data pointer low
DIRECT
ADDRESS
83H
82H
BIT ADDRESS, SYMBOL, OR ALTERNATIVE PORT FUNCTION
MSB LSB
AFAEADACABAAA9A8
BFBEBDBCBBBAB9B8
8786858483828180
9796959493929190
A7A6A5A4A3A2A1A0
B7B6B5B4B3B2B1B0
9F9E9D9C9B9A9998
D7D6D5D4D3D2D1D0
SLAVE ADDRESS
GC00H
RESET
VALUE
00H
00H
S1STA#Serial 1 statusD9HSC4SC3SC2SC1SC0000F8H
DFDEDDDCDBDAD9D8
S1CON*# Serial 1 controlD8HCR2ENS1STASTOSIAACR1CR000000000B
8F8E8D8C8B8A8988
TCON*Timer control88HTF1TR1TF0TR0IE1IT1IE0IT000H
TH1T imer high 18DH00H
TH0T imer high 08CH00H
TL1Timer low 18BH00H
TL0Timer low 08AH00H
TMODTimer mode89HGATEC/TM1M0GATEC/TM1M000H
* SFRs are bit addressable.
# SFRs are modified from or added to the 80C51 SFRs.
1998 Jan 06
7
Philips SemiconductorsProduct specification
83C654CMOS single-chip 8-bit microcontroller
ROM CODE PROTECTION
(83C654)
The 83C654 has an additional security
feature. ROM code protection may be
selected by setting a mask–programmable
security bit (i.e., user dependent). This
feature may be requested during ROM code
submission. When selected, the ROM code
is protected and cannot be read out at any
time by any test mode or by any instruction in
the external program memory space.
The MOVC instructions are the only
instructions that have access to program
code in the internal or external program
memory. The EA
RESET and is “don’t care” after RESET
(also if the security bit is not set). This
implementation prevents reading internal
program code by switching from external
program memory to internal program memory
during a MOVC instruction or any other
instruction that uses immediate data.
input is latched during
OSCILLA T OR
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,
page 3.
To drive the device from an external clock
source, XTAL1 should be driven while XTAL2
is left unconnected. There are no
requirements on the duty cycle of the
external clock signal, because the input to
the internal clock circuitry is through a
divide-by-two flip-flop. However, minimum
and maximum high and low times specified in
the data sheet must be observed.
Reset
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-on 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. At
power-on, the voltage on V
come up at the same time for a proper
start-up.
and RST must
DD
Idle Mode
In the idle mode, 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.
Power-Down Mode
In the power-down mode, the oscillator is
stopped and the instruction to invoke
power-down is the last instruction executed.
Only the contents of the on-chip RAM are
preserved. A hardware reset is the only way
to terminate the power-down mode. The
control bits for the reduced power modes are
in the special function register PCON. Table 2
shows the state of the I/O ports during low
current operating modes.
I2C SERIAL COMMUNICA TION —
SIO1
The I2C serial port is identical to the I2C
serial port on the 8XC552. The operation of
this subsystem is described in detail in the
8XC552 section of this manual.
Note that in both the 8XC652/4 and the
8XC552 the I
to port pins P1.6 and P1.7. Because of this,
P1.6 and P1.7 on these parts do not have a
pull-up structure as found on the 80C51.
Therefore P1.6 and P1.7 have open drain
outputs on the 8XC652/4.
2
C pins are alternate functions
Table 2.External Pin Status During Idle and Power-Down Mode