PHILIPS S87C752-4N28

INTEGRATED CIRCUITS
83C752/87C752
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM,
low pin count
Product specification
Supersedes data of 1998 Jan 19
IC20 Data Handbook
1998 May 01
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
83C752/87C752
• Small package sizes
DESCRIPTION
The Philips 83C752/87C752 offers many of the advantages of the
80C51 architecture in a small package and at low cost.
– 28-pin DIP
– 28-pin PLCC
The 8XC752 Microcontroller is fabricated with Philips high-density
CMOS technology. Philips epitaxial substrate minimizes CMOS
latch-up sensitivity.
– 28-pin SSOP
• Wide oscillator frequency range
• Low power consumption:
The 8XC752 contains a 2k × 8 ROM (83C752) EPROM (87C752), a
64 × 8 RAM, 21 I/O lines, a 16-bit auto-reload counter/timer, a
fixed-priority level interrupt structure, a bidirectional inter-integrated
circuit (I2C) serial bus interface, an on-chip oscillator, a five channel
multiplexed 8-bit A/D converter, and an 8-bit PWM output.
– Normal operation: less than 11mA @ 5V, 12MHz
– Idle mode
– Power-down mode
• 2k × 8 ROM (83C752)
The onboard inter-integrated circuit (I2C) bus interface allows the
8XC752 to operate as a master or slave device on the I2C small
area network. This capability facilitates I/O and RAM expansion,
access to EEPROM, processor-to-processor communication, and
efficient interface to a wide variety of dedicated I2C peripherals.
EPROM (87C752)
• 64 × 8 RAM
• 16-bit auto reloadable counter/timer
• 5-channel 8-bit A/D converter
• 8-bit PWM output/timer
• Fixed-rate timer
• Boolean processor
• CMOS and TTL compatible
• Well suited for logic replacement, consumer and industrial
The EPROM version of this device, the 87C752, is available in both
quartz-lid erasable and plastic one-time programmable (OTP)
packages. Once the array has been programmed, it is functionally
equivalent to the masked ROM 83C752. Thus, unless explicitly
stated otherwise, all references made to the 83C752 apply equally
to the 87C752.
The 83C752 supports two power reduction modes of operation
referred to as the idle mode and the power-down mode.
applications
FEATURES
• Available in erasable quartz lid or One-Time Programmable plastic
packages
• 80C51 based architecture
• Inter-integrated Circuit (I2C) serial bus interface
PART NUMBER SELECTION
ROM
EPROM
TEMPERATURE RANGE °C
AND PACKAGE
FREQUENCY
DRAWING
NUMBER
0 to +70, 28-pin Plastic Shrink Small Outline Package
3.5 to 12MHz
SOT341-1
S83C752–1DB
S87C752–1DB
OTP
S83C752–1N28
S87C752–1N28
OTP
0 to +70, 28-pin Plastic Dual In-line Package
3.5 to 12MHz
SOT117-2
S83C752–2N28
S87C752–2N28
OTP
–40 to +85, 28-pin Plastic Dual In-line Package
3.5 to 12MHz
SOT117-2
S83C752–4DB
S87C752–4DB
OTP
0 to +70, 28-pin Plastic Shrink Small Outline Package
3.5 to 16MHz
SOT341-1
S83C752–4N28
S87C752–4N28
OTP
0 to +70, 28-pin Plastic Dual In-line Package
3.5 to 16MHz
SOT117-2
S83C752–5N28
S87C752–5N28
OTP
–40 to +85, 28-pin Plastic Dual In-line Package
3.5 to 16MHz
SOT117-2
S83C752–1A28
S87C752–1A28
OTP
0 to +70, 28-pin Plastic Leaded Chip Carrier
3.5 to 12MHz
SOT261-3
S83C752–2A28
S87C752–2A28
OTP
–40 to +85, 28-pin Plastic Leaded Chip Carrier
3.5 to 12MHz
SOT261-3
S83C752–4A28
S87C752–4A28
OTP
0 to +70, 28-pin Plastic Leaded Chip Carrier
3.5 to 16MHz
SOT261-3
S83C752–5A28
S87C752–5A28
OTP
–40 to +85, 28-pin Plastic Leaded Chip Carrier
3.5 to 16MHz
SOT261-3
S83C752–6A28
S87C752–6A28
OTP
–55 to +125, 28-pin Plastic Leaded Chip Carrier
3.5 to 12MHz
SOT261-3
S83C752–6N28 S87C752–6N28
OTP
NOTE:
1. OTP = One Time Programmable EPROM.
–55 to +125, 28-pin Plastic Dual In-line Package
3.5 to 12MHz
SOT117-2
1998 May 01
2
853-1443 19328
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
83C752/87C752
BLOCK DIAGRAM
P0.0–P0.4
PORT 0
DRIVERS
VCC
I2C
CONTROL
PWM
VSS
RAM ADDR
REGISTER
PORT 0
LATCH
RAM
B
REGISTER
PORT 2
LATCH
ROM/
EPROM
STACK
POINTER
ACC
PROGRAM
ADDRESS
REGISTER
TMP1
TMP2
ALU
PCON
I2CFG I2STA
I2DAT
I2CON
PSW
TCON
BUFFER
IE
TH0
TL0
RTH
RTL
INTERRUPT, SERIAL
PORT AND TIMER BLOCKS
PC
INCREMENTER
RST
TIMING
AND
CONTROL
INSTRUCTION
REGISTER
PROGRAM
COUNTER
DPTR
PD
PORT 1
LATCH
PORT 3
LATCH
PORT 1
DRIVERS
PORT 3
DRIVERS
P1.0–P1.7
P3.0–P3.7
OSCILLATOR
ADC
X1
X2
AVSS AVCC
SU00319
1998 May 01
3
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
PIN CONFIGURATIONS
P3.4/A4 1
28 VCC
P3.3/A3 2
27 P3.5/A5
P3.2/A2/A10 3
26 P3.6/A6
P3.1/A1/A9 4
25 P3.7/A7
P3.0/A0/A8 5
P0.2/VPP
6
P0.1/SDA/OE–PGM
7
P0.0/SCL/ASEL
8
RST
9
24 P0.4/PWM OUT
PLASTIC
DUAL
IN-LINE
PACKAGE
AND
SHRINK
SMALL
OUTLINE
PACKAGE
23 P0.3
22 P1.7/T0/D7
21 P1.6/INT1/D6
20 P1.5/INT0/D5
X2 10
19 AVCC
X1 11
18 AVSS
VSS 12
17 P1.4/ADC4/D4
P1.0/ADC0/D0 13
16 P1.3/ADC3/D3
P1.1/ADC1/D1 14
15 P1.2/ADC2/D2
4
1
26
5
25
PLASTIC
LEADED
CHIP
CARRIER
11
19
12
Pin
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Function
P3.4/A4
P3.3/A3
P3.2/A2/A10
P3.1/A1/A9
P3.0/A0/A8
P0.2/VPP
P0.1/SDA/OE-PGM
P0.0/SCL/ASEL
RST
X2
X1
VSS
P1.0/ADC0/D0
P1.1/ADC1/D1
18
Pin
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Function
P1.2/ADC2/D2
P1.3/ADC3/D3
P1.4/ADC4/D4
AVSS
AVCC
P1.5/INT0/D5
P1.6/INT1/D6
P1.7/T0/D7
P0.3
P0.4/PWM OUT
P3.7/A7
P3.6/A6
P3.5/A5
VCC
SU00318
1998 May 01
4
83C752/87C752
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
83C752/87C752
PIN DESCRIPTION
PIN NO.
TYPE
VSS
MNEMONIC
12
I
Circuit Ground Potential.
VCC
28
I
Supply voltage during normal, idle, and power-down operation.
8–6
23, 24
I/O
P0.0–P0.4
P1.0–P1.7
6
7
I
I
8
I
13–17,
20–22
I/O
20
21
22
13–17
I
I
I
I
NAME AND FUNCTION
Port 0: Port 0 is a 5-bit bidirectional port. Port 0.0–P0.2 are open drain. Port 0.0–P0.2 pins that have
1s written to them float, and in that state can be used as high-impedance inputs. P0.3–P0.4 are
bidirectional I/O port pins with internal pull-ups. Port 0 also serves as the serial I2C interface. When this
feature is activated by software, SCL and SDA are driven low in accordance with the I2C protocol.
These pins are driven low if the port register bit is written with a 0 or if the I2C subsystem presents a 0.
The state of the pin can always be read from the port register by the program. Port 0.3 and 0.4 have
internal pull-ups that function identically to port 3. Pins that have 1s written to them are pulled high by
the internal pull-ups and can be used as inputs.
To comply with the I2C specification, P0.0 and P0.1 are open drain bidirectional I/O pins with the
electrical characteristics listed in the tables that follow. While these differ from “standard TTL”
characteristics, they are close enough for the pins to still be used as general-purpose I/O in non-I2C
applications.
VPP (P0.2) – Programming voltage input. (See Note 2.)
OE/PGM (P0.1) – Input which specifies verify mode (output enable) or the program mode.
OE/PGM = 1 output enabled (verify mode).
OE/PGM = 0 program mode.
ASEL (P0.0) – Input which indicates which bits of the EPROM address are applied to port 3.
ASEL = 0 low address byte available on port 3.
ASEL = 1 high address byte available on port 3 (only the three least significant bits are used).
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. P0.3–P0.4 pins are
bidirectional I/O port pins with internal pull-ups. 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
serves the special function features of the SC80C51 family as listed below:
INT0 (P1.5): External interrupt.
INT1 (P1.6): External interrupt.
T0 (P1.7): Timer 0 external input.
ADC0 (P1.0)–ADC4 (P1.4): Port 1 also functions as the inputs to the five channel multiplexed A/D
converter. These pins can be used as outputs only if the A/D function has been disabled. These pins
can be used as inputs while the A/D converter is enabled.
Port 1 serves to output the addressed EPROM contents in the verify mode and accepts as inputs the
value to program into the selected address during the program mode.
P3.0–P3.7
5–1,
27–25
I/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 functions as the address input for the EPROM memory location to be
programmed (or verified). The 11-bit address is multiplexed into this port as specified by P0.0/ASEL.
RST
9
I
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.
After the device is reset, a 10-bit serial sequence, sent LSB first, applied to RESET, places the device
in the programming state allowing programming address, data and VPP to be applied for programming
or verification purposes. The RESET serial sequence must be synchronized with the X1 input.
X1
11
I
Crystal 1: Input to the inverting oscillator amplifier and input to the internal clock generator circuits. X1
also serves as the clock to strobe in a serial bit stream into RESET to place the device in the
programming state.
X2
10
O
Crystal 2: Output from the inverting oscillator amplifier.
AVCC
1
19
I
Analog supply voltage and reference input.
AVSS
1
18
I
Analog supply and reference ground.
NOTE:
1. AVSS (reference ground) must be connected to 0V (ground). AVCC (reference input) cannot differ from VCC by more than ±0.2V, and must be
in the range 4.5V to 5.5V.
2. When P0.2 is at or close to 0V, it may affect the internal ROM operation. We recommend that P0.2 be tied to VCC via a small pull-up
(e.g., 2kΩ).
1998 May 01
5
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
OSCILLATOR CHARACTERISTICS
DIFFERENCES BETWEEN THE 8XC752 AND
THE 80C51
X1 and X2 are the input and output, respectively, of an inverting
amplifier which can be configured for use as an on-chip oscillator.
Program Memory
To drive the device from an external clock source, X1 should be
driven while X2 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.
On the 8XC752, program memory is 2048 bytes long and is not
externally expandable, so the 80C51 instructions MOVX, LJMP, and
LCALL are not implemented. If these instructions are executed, the
appropriate number of instruction cycles will take place along with
external fetches; however, no operation will take place. The LJMP
may not respond to all program address bits. The only fixed
locations in program memory are the addresses at which execution
is taken up in response to reset and interrupts, which are as follows:
Program Memory
Event
Address
Reset
000
003
External INT0
Counter/timer 0
00B
External INT1
013
Timer I
01B
023
I2C serial
ADC
02B
PWM
033
IDLE MODE
The 8XC752 includes the 80C51 power-down and idle mode
features. In idle mode, the CPU puts itself to sleep while all of the
on-chip peripherals except the A/D and PWM stay active. The
functions that continue to run while in the idle mode are Timer 0, the
I2C interface including Timer I, and the interrupts. 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. Upon powering-up the circuit, or exiting from idle mode,
sufficient time must be allowed for stabilization of the internal analog
reference voltages before an A/D conversion is started.
Memory Organization
The 8XC752 manipulates operands in three memory address
spaces. The first is the program memory space which contains
program instructions as well as constants such as look-up tables.
The program memory space contains 2k bytes in the 8XC752.
Special Function Registers
The second memory space is the data memory array which has a
logical address space of 128 bytes. However, only the first 64 (0 to
3FH) are implemented in the 8XC752.
The special function registers (directly addressable only) contain all
of the 8XC751 registers except the program counter and the four
register banks. Most of the 21 special function registers are used to
control the on-chip peripheral hardware. Other registers include
arithmetic registers (ACC, B, PSW), stack pointer (SP) and data
pointer registers (DPH, DPL). Nine of the SFRs are bit addressable.
The third memory space is the special function register array having
a 128-byte address space (80H to FFH). Only selected locations in
this memory space are used (see Table 2). Note that the
architecture of these memory spaces (internal program memory,
internal data memory, and special function registers) is identical to
the 80C51, and the 8XC752 varies only in the amount of memory
physically implemented.
Data Pointer
The data pointer (DPTR) consists of a high byte (DPH) and a low
byte (DPL). In the 80C51 this register allows the access of external
data memory using the MOVX instruction. Since the 83C752 does
not support MOVX or external memory accesses, this register is
generally used as a 16-bit offset pointer of the accumulator in a
MOVC instruction. DPTR may also be manipulated as two
independent 8-bit registers.
The 8XC752 does not directly address any external data or program
memory spaces. For this reason, the MOVX instructions in the
80C51 instruction set are not implemented in the 83C752, nor are
the alternate I/O pin functions RD and WR.
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 1. External Pin Status During Idle and
Power-Down Modes
MODE
Idle
Power-down
*
Port 0*
Port 1
Port 2
Data
Data
Data
Data
Data
Data
Except for PWM output (P0.4).
1998 May 01
83C752/87C752
6
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
83C752/87C752
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
ALTERNATE
OUTPUT
FUNCTION
READ
LATCH
ALTERNATE
OUTPUT
FUNCTION
READ
LATCH
VDD
INTERNAL
PULL-UP
INT. BUS
D
INT. BUS
Q
P1.X
LATCH
WRITE TO
LATCH
READ
PIN
CL
D
Q
P0.X
LATCH
P1.X
PIN
WRITE TO
LATCH
Q
CL
READ
PIN
ALTERNATE INPUT
FUNCTION
P0.X
PIN
Q
ALTERNATE INPUT
FUNCTION
SU00306
Figure 1. Port Bit Latches and I/O Buffers
I/O Ports
Counter/Timer Subsystem
The I/O pins provided by the 83C752 consist of port 0, port 1, and
port 3.
The 8XC752 has one counter/timer called timer/counter 0. Its
operation is similar to mode 2 operation on the 80C51, but is
extended to 16 bits with 16 bits of autoload. The controls for this
counter are centralized in a single register called TCON.
Port 0
Port 0 is a 5-bit bidirectional I/O port and includes alternate functions
on some pins of this port. Pins P0.3 and P0.4 are provided with
internal pullups while the remaining pins (P0.0, P0.1, and P0.2) have
open drain output structures. The alternate functions for port 0 are:
P0.0
P0.1
P0.4
A watchdog timer, called Timer I, is for use with the I2C subsystem.
In I2C applications, this timer is dedicated to time-generation and
bus monitoring of the I2C. In non-I2C applications, it is available for
use as a fixed time-base.
SCL – the I2C bus clock
SDA – the I2C bus data
PWM – the PWM output
Interrupt Subsystem—Fixed Priority
The IP register and the 2-level interrupt system of the 80C51 are
eliminated. The interrupt structure is a seven-source, one-level
interrupt system similar to the 8XC751. Simultaneous interrupt
conditions are resolved by a single-level, fixed priority as follows:
Highest priority:
Pin INT0
Counter/timer flag 0
Pin INT1
PWM
Timer I
Serial I2C
Lowest priority:
ADC
I2 C
and PWM, are not being used, then
If the alternate functions,
these pins may be used as I/O ports.
Port 1
Port 1 is an 8-bit bidirectional I/O port whose structure is identical to
the 80C51, but also includes alternate input functions on all pins.
The alternate pin functions for port 1 are:
P1.0-P1.4 - ADC0-ADC4 - A/D converter analog inputs
P1.5 INT0 - external interrupt 0 input
P1.6 INT1 - external interrupt 1 input
P1.7 - T0 - timer 0 external input
The vector addresses are as follows:
If the alternate functions INT0, INT1, or T0 are not being used, these
pins may be used as standard I/O ports. It is necessary to connect
AVCC and AVSS to VCC and VSS, respectively, in order to use these
pins as standard I/O pins. When the A/D converter is enabled, the
analog channel connected to the A/D may not be used as a digital
input; however, the remaining analog inputs may be used as digital
inputs. They may not be used as digital outputs. While the A/D is
enabled, the analog inputs are floating.
Source
INT0
TF0
INT1
TIMER I
SIO
ADC
PWM
Port 3
Port 3 is an 8-bit bidirectional I/O port whose structure is identical to
the 80C51. Note that the alternate functions associated with port 3
of the 80C51 have been moved to port 1 of the 83C752 (as
applicable). See Figure 1 for port bit configurations.
Interrupt Control Registers
The 80C51 interrupt enable register is modified to take into account
the different interrupt sources of the 8XC752.
1998 May 01
7
Vector Address
0003H
000BH
0013H
001BH
0023H
002BH
0033H
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
Interrupt Enable Register
Pulse Width Modulation Output (P0.4)
MSB
EA
Position
IE.7
IE.6
IE.5
IE.4
IE.3
IE.2
IE.1
IE.0
The PWM outputs pulses of programmable length and interval. The
repetition frequency is defined by an 8-bit prescaler which generates
the clock for the counter. The prescaler register is PWMP. The
prescaler and counter are not associated with any other timer. The
8-bit counter counts modulo 255, that is from 0 to 254 inclusive. The
value of the 8-bit counter is compared to the contents of a compare
register, PWM. When the counter value matches the contents of this
register, the output of the PWM is set high. When the counter reaches
zero, the output of the PWM is set low. The pulse width ratio (duty
cycle) is defined by the contents of the compare register and is in the
range of 0 to 1 programmed in increments of 1/255. The PWM output
can be set to be continuously high by loading the compare register
with 0 and the output can be set to be continuously low by loading the
compare register with 255. The PWM output is enabled by a bit in a
special function register, PWENA. When enabled, the pin output is
driven with a fully active pull-up. That is, when the output is high, a
strong pull-up is continuously applied. when disabled, the pin
functions as a normal bidirectional I/O pin, however, the counter
remains active.
LSB
EAD
Symbol
EA
EAD
ETI
ES
EPWM
EX1
ET0
EX0
ETI
ES
EPWM
EX1
ET0
EX0
Function
Global interrupt disable when EA = 0
A/D conversion complete
Timer I
I2C serial port
PWM counter overflow
External interrupt 1
Timer 0 overflow
External interrupt 0
Serial Communications
The 8XC752 contains an I2C serial communications port instead of
the 80C51 UART. The I2C serial port is a single bit hardware
interface with all of the hardware necessary to support multimaster
and slave operations. Also included are receiver digital filters and
timer (timer I) for communication watch-dog purposes. The I2C
serial port is controlled through four special function registers; I2C
control, I2C data, I2C status, and I2C configuration.
The PWM function is disabled during RESET and remains disabled
after reset is removed until re-enabled by software. The PWM output
is high during power down and idle. The counter is disabled during
idle. The repetition frequency of the PWM is given by:
The I2C bus uses two wires (SDA and SCL) to transfer information
between devices connected to the bus. The main technical features
of the bus are:
fPWM = fOSC / 2 (1 + PWMP) 255
• Bidirectional data transfer between masters and slaves
• Serial addressing of slaves
• Acknowledgment after each transferred byte
• Multimaster bus
• Arbitration between simultaneously transmitting master without
The low/high ratio of the PWM signal is PWM / (255 – PWM) for
PWM not equal to 255. For PWM = 255, the output is always low.
The repetition frequency range is 92Hz to 23.5kHz for an oscillator
frequency of 12MHz.
An interrupt will be asserted upon PWM counter overflow if the
interrupt is not masked off.
The PWM output is an alternative function of P0.4. In order to use
this port as a bidirectional I/O port, the PWM output must be
disabled by clearing the enable/disable bit in PWENA. In this case,
the PWM subsystem can be used as an interval timer by enabling
the PWM interrupt.
corruption of serial data on bus
• With 82B715, communication distance is extended to beyond 100
feet (30M)
A large family of I2C compatible ICs is available. See the I2C section
for more details on the bus and available ICs.
The 83C752 I2C subsystem includes hardware to simplify the
software required to drive the I2C bus. This circuitry is the same as
that on the 83C751. (See the 83C751 section for a detailed
discussion of this subsystem).
1998 May 01
83C752/87C752
8
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
83C752/87C752
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
Table 2.
SYMBOL
8XC752 Special Function Registers
DESCRIPTION
DIRECT
BIT ADDRESS, SYMBOL, OR ALTERNATIVE PORT FUNCTION
ADDRESS MSB
LSB
ACC*
Accumulator
E7
E6
E5
E4
E3
E2
E1
E0
ADAT#
A/D result
84H
ADCON#
A/D control
A0H
–
–
ENADC
ADCI
ADCS
AADR2
AADR1
AADR0
C0H
B*
DPTR:
B register
F0H
F7
F6
F5
F4
F3
F2
F1
F0
00H
DPL
DPH
Data pointer
(2 bytes)
Data pointer low
Data pointer high
82H
83H
DF
DE
DD
DC
DB
DA
D9
D8
I2CFG*#
I2C configuration
D8H/RD
SLAVEN
MASTRQ
0
TIRUN
–
–
CT1
CT0
WR
SLAVEN
MASTRQ
CLRTI
TIRUN
–
–
CT1
CT0
9F
9E
9D
9C
9B
9A
99
98
–
XSTP
I2CON*#
I2DAT#
I2STA*#
IE*#
I2C
control
I2C data
I2C
status
Interrupt enable
E0H
RESET
VALUE
00H
00H
00H
98H/RD
RDAT
ATN
DRDY
ARL
STR
STP
MASTER
WR
CXA
IDLE
CDR
CARL
CSTR
CSTP
XSTR
99H/RD
RDAT
0
0
0
0
0
0
0
WR
XDAT
X
X
X
X
X
X
X
FF
FE
FD
FC
FB
FA
F9
F8
MAKSTP
F8H
ADH
00H
–
IDLE
XDATA
XACTV
MAKSTR
XSTR
XSTP
AF
AE
AD
AC
AB
AA
A9
A8
EA
EAD
ETI
ES
EPWM
EX1
ET0
EX0
–
–
–
84
83
82
81
80
–
–
PWM0
–
–
SDA
SCL
0000xx00B
81H
80H
x0100000B
00H
xxx11111B
P0*#
Port 0
80H
–
97
96
95
94
93
92
91
90
P1*#
Port 1
90H
T0
INT1
INT0
ADC4
ADC3
ADC2
ADC1
ADC0
P3*
Port 3
B0H
B7
B6
B5
B4
B3
B2
B1
B0
FFH
PCON#
Power control
87H
–
–
–
–
–
–
PD
IDL
xxxx0000B
D7
D6
D5
D4
D3
D2
D1
D0
PSW*
Program status word
D0H
CY
AC
F0
RS1
RS0
OV
–
P
PWCM#
PWM compare
8EH
PWENA#
PWM enable
FEH
–
–
–
–
–
–
–
PWE
PWMP#
PWM prescaler
8FH
00H
RTL#
Timer low reload
8BH
00H
RTH#
Timer high reload
8DH
00H
SP
Stack pointer
81H
07H
TL#
Timer low
8AH
00H
TH#
Timer high
8CH
00H
xxxxxxxxB
FEH
00H
8F
TCON*#
Timer control
88H
GATE
* SFRs are bit addressable.
# SFRs are modified from or added to the 80C51 SFRs.
1998 May 01
FFH
8E
8D
8C
8B
8A
89
88
C/T
TF
TR
IE0
IT0
IE1
IT1
9
00H
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
Position Symbol
Function
ADCON.5 ENADC Enable A/D function when ENADC = 1. Reset
forces ENADC = 0.
ADCON.4 ADCI
ADC interrupt flag. This flag is set when an
ADC conversion is complete. If IE.6 = 1, an
interrupt is requested when ADCI = 1. The
ADCI flag is cleared when conversion data is
read. This flag is read only.
ADCON.3 ADCS
ADC start. Setting this bit starts an A/D
conversion. Once set, ADCS remains high
throughout the conversion cycle. On
completion of the conversion, it is reset just
before the ADCI interrupt flag is cleared.
ADCS cannot be reset by software. ADCS
should not be used to monitor the A/D
converter status. ADCI should be used for this
purpose.
ADCON.2 AADR2 Analog input select.
ADCON.1 AADR1 Analog input select.
ADCON.0 AADR0 Analog input select. This binary coded
address selects one of the five analog input
port pins of P1 to be input to the converter. It
can only be changed when ADCI and ADCS
are both low. AADR2 is the most significant
bit.
Special Function Register Addresses
Special function registers for the 8XC752 are identical to those of
the 80C51, except for the changes listed below:
80C51 special function registers not present in the 8XC752 are
TMOD (89), P2 (A0) and IP (B8). The 80C51 registers TH1, TL1,
SCON, and SBUF are replaced with the 8XC752 registers RTH,
RTL, I2CON, and I2DAT, respectively. Additional special function
registers are I2CFG (D8) and I2STA (FB), ADCON (A0), ADAT (84),
PWM (8E), PWMP (8F), and PWENA (FE). See Table 3.
A/D Converter
The analog input circuitry consists of a 5-input analog multiplexer and
an A to D converter with 8-bit resolution. The conversion takes 40
machine cycles, i.e., 40µs at 12MHz oscillator frequency. The A/D
converter is controlled using the ADCON control register. Input
channels are selected by the analog multiplexer through ADCON
register bits 0–2.
The 83C752 contains a five-channel multiplexed 8-bit A/D converter.
The conversion requires 40 machine cycles (40µs at 12MHz
oscillator frequency).
The A/D converter is controlled by the A/D control register, ADCON.
Input channels are selected by the analog multiplexer by bits
ADCON.0 through ADCON.2. The ADCON register is not bit
addressable.
The completion of the 8-bit ADC conversion is flagged by ADCI in
the ADCON register, and the result is stored in the special function
register ADAT.
ADCON Register
MSB
LSB
X
X
ADCI
0
0
1
ADCS
0
1
0
1
1
ENADC
ADCI
ADCS
AADR2
AADR1
An ADC conversion in progress is unaffected by an ADC start. The
result of a completed conversion remains unaffected provided ADCI
remains at a logic 1. While ADCS is a logic 1 or ADCI is a logic 1, a
new ADC START will be blocked and consequently lost. An ADC
conversion in progress is aborted when the idle or power-down
mode is entered. The result of a completed conversion (ADCI = logic
1) remains unaffected when entering the idle mode. See Figure 2 for
an A/D input equivalent circuit.
AADR0
Operation
ADC not busy, a conversion can be started.
ADC busy, start of a new conversion is blocked.
Conversion completed, start of a new conversion is
blocked.
Not possible.
The analog input pins ADC0-ADC4 may be used as digital inputs
and outputs when the A/D converter is disabled by a 0 in the
ENADC bit in ADCON. When the A/D is enabled, the analog input
channel that is selected by the ADDR2-ADDR0 bits in ADCON
cannot be used as a digital input. Reading the selected A/D channel
as a digital input will always return a 1. The unselected A/D inputs
may always be used as digital inputs. Unselected analog inputs will
be floating and may not be used as digital outputs.
INPUT CHANNEL SELECTION
ADDR2
ADDR1
ADDR0
INPUT PIN
0
0
0
0
1
0
0
1
1
0
0
1
0
1
0
P1.0
P1.1
P1.2
P1.3
P1.4
1998 May 01
83C752/87C752
The A/D reference inputs on the 8XC752 are tied together with the
analog supply pins AVCC and AVSS. This means that the reference
voltage on the A/D cannot be varied separately from the analog
supply pins. AVSS must be connected to 0V and AVCC must be
connected to a supply voltage between 4.5V and 5.5V. A/D
measurements may be made in the range of 4.5V to 5.5V.
Increasing the voltage on the A/D ground reference above 0V or
reducing the voltage on the positive A/D reference below 4.5V is not
permitted.
10
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
SmN+1
RmN+1
SmN
RmN
83C752/87C752
IN+1
IN
To Comparator
+
Multiplexer
RS
CC
CS
VANALOG
INPUT
Rm = 0.5 - 3 kΩ
CS + CC = 15pF maximum
RS = Recommended < 9.6 kΩ for 1 LSB @ 12MHz
NOTE:
Because the analog to digital converter has a sampled-data comparator, the input looks capacitive to a source. When a conversion
is initiated, switch Sm closes for 8tcy (8µs @ 12MHz crystal frequency) during which time capacitance Cs + Cc is charged. It should
be noted that the sampling causes the analog input to present a varying load to an analog source.
SU00199
Figure 2. A/D Input: Equivalent Circuit
A/D CONVERTER PARAMETER DEFINITIONS
Gain Error
The following definitions are included to clarify some specifications
given and do not represent a complete set of A/D parameter
definitions.
Gain error is the deviation between the ideal and actual analog input
voltage required to cause the final code transition to a full-scale
output code after the offset error has been removed. This may
sometimes be referred to as full scale error.
Absolute Accuracy Error
Offset Error
Absolute accuracy error of a given output is the difference between
the theoretical analog input voltage to produce a given output and
the actual analog input voltage required to produce the same code.
Since the same output code is produced by a band of input voltages,
the “required input voltage” is defined as the midpoint of the band of
input voltage that will produce that code. Absolute accuracy error
not specified with a code is the maximum over all codes.
Offset error is the difference between the actual input voltage that
causes the first code transition and the ideal value to cause the first
code transition. This ideal value is 1/2 LSB above Vref–.
Channel to Channel Matching
Channel to channel matching is the maximum difference between
the corresponding code transitions of the actual characteristics
taken from different channels under the same temperature, voltage
and frequency conditions.
Nonlinearity
If a straight line is drawn between the end points of the actual
converter characteristics such that zero offset and full scale errors
are removed, then non-linearity is the maximum deviation of the
code transitions of the actual characteristics from that of the straight
line so constructed. This is also referred to as relative accuracy and
also integral non-linearity.
Crosstalk
Crosstalk is the measured level of a signal at the output of the
converter resulting from a signal applied to one deselected channel.
Total Error
Differential Non-Linearity
Maximum deviation of any step point from a line connecting the ideal
first transition point to the ideal last transition point.
Differential non-linearity is the maximum difference between the
actual and ideal code widths of the converter. The code widths are
the differences expressed in LSB between the code transition
points, as the input voltage is varied through the range for the
complete set of codes.
1998 May 01
Relative Accuracy
Relative accuracy error is the deviation of the ADC’s actual code
transition points from the ideal code transition points on a straight
line which connects the ideal first code transition point and the final
code transition point, after nullifying offset error and gain error. It is
generally expressed in LSBs or in percent of FSR.
11
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
83C752/87C752
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
These flags are functionally identical to the corresponding 80C51
flags except that there is only one of the 80C51 style timers, and the
flags are combined into one register.
COUNTER/TIMER
The 8XC752 counter/timer is designated Timer 0 and is separate
from Timer I of the I2C serial port and from the PWM. Its operation is
similar to mode 2 of the 80C51 counter/timer, extended to 16 bits.
When Timer 0 is used in the external counter mode, the T0 input
(P1.7) is sampled every S4P1. The counter/timer function is
controlled using the timer control register (TCON).
Note that the positions of the IE0/IT0 and IE1/IT1 bits are
transposed from the positions used in the standard 80C51 TCON
register.
A communications watchdog timer, Timer I, is described in the I2C
section. In I2C applications, this timer is dedicated to time generation
and bus monitoring for the I2C. In non-I2C applications, it is available
for use as a fixed time base.
TCON Register
MSB
LSB
GATE
C/T
TF
TR
IE0
IT0
IE1
IT1
The 16-bit timer/counter’s operation is similar to mode 2 operation
on the 80C51, but is extended to 16 bits. The timer/counter is
clocked by either 1/12 the oscillator frequency or by transitions on
the T0 pin. The C/T pin in special function register TCON selects
between these two modes. When the TCON TR bit is set, the
timer/counter is enabled. Register pair TH and TL are incremented
by the clock source. When the register pair overflows, the register
pair is reloaded with the values in registers RTH and RTL. The value
in the reload registers is left unchanged. The TF bit in special
function register TCON is set on counter overflow and, if the
interrupt is enabled, will generate an interrupt (see Figure 3).
Position Symbol
Function
TCON.7 GATE 1 – Timer 0 is enabled only when INT0 pin is
high and TR is 1.
0 – Timer 0 is enabled only when TR is 1.
TCON.6 C/T
1 – Counter operation from T0 pin.
0 – Timer operation from internal clock.
TCON.5 TF
1 – Set on overflow of T0.
0 – Cleared when processor vectors to interrupt
routine and by reset.
TCON.4 TR
1 – Enable timer 0
0 – Disable timer 0
TCON.3 IE0
1 – Edge detected on INT0
TCON.2 IT0
1 – INT0 is edge triggered.
0 – INT0 is level sensitive.
TCON.1 IE1
1 – Edge detected on INT1
TCON.0 IT1
1 – INT1 is edge triggered.
0 – INT1 is level sensitive.
OSC
÷ 12
C/T = 0
TL
TH
TF
Int.
C/T = 1
T0 Pin
TR
Reload
Gate
RTL
RTH
INT0 Pin
SU00300
Figure 3. 83C752 Counter/Timer Block Diagram
Table 3. I2C Special Function Register Addresses
REGISTER ADDRESS
NAME
I2C
control
BIT ADDRESS
SYMBOL
ADDRESS
MSB
LSB
I2CON
98
9F
9E
9D
9C
9B
9A
99
98
I2C data
I2DAT
99
–
–
–
–
–
–
–
–
I2C
I2CFG
D8
DF
DE
DD
DC
DB
DA
D9
D8
I2STA
F8
FF
FE
FD
FC
FB
FA
F9
F8
configuration
I2C status
1998 May 01
12
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
83C752/87C752
ABSOLUTE MAXIMUM RATINGS1, 3, 4
PARAMETER
RATING
UNIT
Storage temperature range
–65 to +150
°C
Voltage from VCC to VSS
–0.5 to +6.5
V
Voltage from any pin to VSS (except VPP)
Power dissipation
Voltage from VPP pin to VSS
–0.5 to VCC + 0.5
V
1.0
W
–0.5 to + 13.0
V
DC ELECTRICAL CHARACTERISTICS
Tamb = 0°C to +70°C or –40°C to +85°C, AVCC = 5V ±5, AVSS = 0V4
VCC = 5V ± 10%, VSS = 0V
LIMITS4
TEST
SYMBOL
ICC
PARAMETER
CONDITIONS
MIN
(0 to 70°C)
(–40 to +85°C)
(0 to 70°C)
(–40 to +85°C)
(0 to 70°C)
(–40 to +85°C)
(0 to 70°C)
(–40 to +85°C)
(0 to 70°C)
(–40 to –85°C)
Typical1
MAX
UNIT
–0.5
–0.5
0.2VCC+0.9
(0.2VCC+1)
0.7VCC
0.7VCC to 0.1
0.2VCC–0.1
0.2VCC–0.15
VCC+0.5
VCC+0.5
VCC+0.5
VCC+0.5
V
V
V
V
V
V
–0.5
–0.5
0.7VCC
0.7VCC+0.1
0.3VCC
0.3VCC–0.1
VCC+0.5
VCC+0.5
V
V
V
0.45
0.45
V
V
Supply current (see Figure 6)
Inputs
VIL
Input low voltage, except SDA, SCL
VIH
Input high voltage, except X1, RST
VIH1
Input high voltage, X1, RST
VIL1
SDA, SCL, P0.2
Input low voltage
VIH2
Input high voltage
Outputs
VOL
VOL1
Output low voltage, ports 1, 3, 0.3, and 0.4
(PWM disabled)
Output low voltage, port 0.2
VOH
Output high voltage, ports 1, 3, 0.3, and 0.4
(PWM disabled)
VOH2
Output high voltage, P0.4 (PWM enabled)
VOL2
Port 0.0 and 0.1 (I2C) – Drivers
Output low voltage
Driver, receiver combined:
Capacitance
C
IIL
ILI
Logical 0 input current,
ports 1, 3, 0.3, and 0.4 (PWM disabled)11
Logical 1 to 0 transition current,
ports 1, 3, 0.3 and 0.411
Input leakage current, port 0.0, 0.1 and 0.2
RRST
Reset pull-down resistor
CIO
Pin capacitance
IPD
Power-down current5
VPP
VPP program voltage (87C752 only)
IPP
Program current (87C752 only)
ITL
1998 May 01
IOL = 1.6mA2
IOL = 3.2mA2
IOH = –60µA,
IOH = –25µA
IOH = –10µA
IOH = –400µA
IOH = –40µA
2.4
0.75VCC
0.9VCC
2.4
0.9VCC
V
V
V
V
V
IOL = 3mA
((over VCC range))
0.4
10
pF
VIN = 0.45V (0 to 70°C)
VIN = 0.45V (0 to +85°C)
VIN = 2V (0 to 70°C)
VIN = 2V (–40 to +85°C)
0.45 < VIN < VCC
–50
–75
–650
–750
±10
µA
µA
µA
µA
µA
25
V
175
kΩ
Test freq = 1MHz,
Tamb = 25°C
10
pF
VCC = 2 to 5.5V
VCC = 2 to 6.0V
(83C752)
50
µA
13.0
V
50
mA
VSS = 0V
VCC = 5V±10%
Tamb = 21°C to 27°C
VPP = 13.0V
13
12.5
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
83C752/87C752
DC ELECTRICAL CHARACTERISTICS (Continued)
Tamb = 0°C to +70°C or –40°C to +85°C, AVCC = 5V ±5, AVSS = 0V4
VCC = 5V ± 10%, VSS = 0V
LIMITS4
TEST
SYMBOL
PARAMETER
CONDITIONS
MIN
Typical1
MAX
UNIT
5.5
V
39
mA
AVCC+0.2
V
15
pF
Analog Inputs (A/D guaranteed only with quartz window covered.)
AVCC = VCC±0.2V
AVCC
Analog supply voltage10
AICC
Analog operating supply current
AVIN
Analog input voltage12
CIA
Analog input capacitance
tADS
Sampling time
8tCY
s
tADC
Conversion time
40tCY
s
R
Resolution
8
bits
ERA
Relative accuracy
±1
LSB
OSe
Zero scale offset
±1
LSB
Ge
Full scale gain error
0.4
%
MCTC
Channel to channel matching
±1
LSB
Ct
Crosstalk
–60
dB
4.5
AVCC = 5.12V
AVSS–0.2
0–100kHz
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. Under steady state (non-transient) conditions, IOL must be externally limited as follows:
10mA
(NOTE: This is 85°C spec.)
Maximum IOL per port pin:
Maximum IOL per 8-bit port:
26mA
67mA
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.
3. 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 maxima.
4. Parameters are valid over operating temperature range unless otherwise specified. All voltages are with respect to VSS unless otherwise
noted.
5. Power-down ICC is measured with all output pins disconnected; port 0 = VCC; X2, X1 n.c.; RST = VSS.
6. ICC is measured with all output pins disconnected; X1 driven with tCLCH, tCHCL = 5ns, VIL = VSS + 0.5V, VIH = VCC – 0.5V; X2 n.c.;
RST = port 0 = VCC. ICC will be slightly higher if a crystal oscillator is used.
7. Idle ICC is measured with all output pins disconnected; X1 driven with tCLCH, tCHCL = 5ns, VIL = VSS + 0.5V, VIH = VCC – 0.5V; X2 n.c.;
port 0 = VCC; RST = VSS.
8. Load capacitance for ports = 80pF.
9. The resistor ladder network is not disconnected in the power down or idle modes. Thus, to conserve power, the user may remove AVCC.
10. If the A/D function is not required, or if the A/D function is only needed periodically, AVCC may be removed without affecting the operation of
the digital circuitry. Contents of ADCON and ADAT are not guaranteed to be valid. If AVCC is removed, the A/D inputs must be lowered to
less than 0.5V. Digital inputs on P1.0–P1.4 will not function normally.
11. These parameters do not apply to P1.0–P1.4 if the A/D function is enabled.
12. The input voltage slew rate should be <10V/ms. The maximum slew rate depends on the clock frequency of the microcontroller. Designers
should use low pass filters before the A/D inputs as a precaution to noise edges causing false readings.
1998 May 01
14
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
83C752/87C752
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
AC ELECTRICAL CHARACTERISTICS
Tamb = 0°C to +70°C or –40°C to +85°C, VCC = 5V ±10%, VSS = 0V4, 8
12MHz CLOCK
SYMBOL
1/tCLCL
PARAMETER
MIN
MAX
Oscillator frequency:
VARIABLE CLOCK
MIN
MAX
UNIT
3.5
3.5
12
16
MHz
MHz
External Clock (Figure 4)
tCHCX
High time
20
20
ns
tCLCX
Low time
20
20
ns
tCLCH
Rise time
20
20
ns
tCHCL
Fall time
20
20
ns
EXPLANATION OF THE AC SYMBOLS
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:
C – Clock
D – Input data
H – Logic level high
L – Logic level low
Q – Output data
T – Time
V – Valid
X – No longer a valid logic level
Z – Float
tCLCX
VCC –0.5
0.2 VCC + 0.9
0.2 VCC – 0.1
tCHCX
0.45V
tCLCH
tCHCL
tCLCL
SU00297
Figure 4. External Clock Drive
VCC –0.5
0.45V
0.2 VCC + 0.9
0.2 VCC – 0.1
SU00307
Figure 5. AC Testing Input/Output
1998 May 01
15
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
83C752/87C752
MAX ACTIVE ICC6
22
20
18
16
14
ICC mA
TYP ACTIVE ICC6
12
10
8
6
MAX IDLE ICC7
4
2
TYP IDLE ICC7
4MHz
8MHz
12MHz
16MHz
FREQ
SU00308
Figure 6. ICC vs. FREQ
Maximum ICC values taken at VCC = 5.5V and worst case temperature.
Typical ICC values taken at VCC = 5.0V and 25°C.
Notes 6 and 7 refer to AC Electrical Characteristics.
EPROM location specified by the address which has been supplied
to Port 3.
PROGRAMMING CONSIDERATIONS
EPROM Characteristics
The XTAL1 pin is the oscillator input and receives the master system
clock. This clock should be between 1.2 and 6MHz.
The 87C752 is programmed by using a modified Quick-Pulse
Programming algorithm similar to that used for devices such as the
87C451 and 87C51. It differs from these devices in that a serial data
stream is used to place the 87C752 in the programming mode.
The RESET pin is used to accept the serial data stream that places
the 87C752 into various programming modes. This pattern consists
of a 10-bit code with the LSB sent first. Each bit is synchronized to
the clock input, X1.
Figure 7 shows a block diagram of the programming configuration
for the 87C752. Port pin P0.2 is used as the programming voltage
supply input (VPP signal). Port pin P0.1 is used as the program
(PGM/) signal. This pin is used for the 25 programming pulses.
Programming Operation
Figures 8 and 9 show the timing diagrams for the program/verify
cycle. RESET should initially be held high for at least two machine
cycles. P0.1 (PGM/) and P0.2 (VPP) will be at VOH as a result of the
RESET operation. At this point, these pins function as normal
quasi-bidirectional I/O ports and the programming equipment may
pull these lines low. However, prior to sending the 10-bit code on the
RESET pin, the programming equipment should drive these pins
high (VIH). The RESET pin may now be used as the serial data input
for the data stream which places the 87C752 in the programming
mode. Data bits are sampled during the clock high time and thus
should only change during the time that the clock is low. Following
transmission of the last data bit, the RESET pin should be held low.
Port 3 is used as the address input for the byte to be programmed
and accepts both the high and low components of the eleven bit
address. Multiplexing of these address components is performed
using the ASEL input. The user should drive the ASEL input high
and then drive port 3 with the high order bits of the address. ASEL
should remain high for at least 13 clock cycles. ASEL may then be
driven low which latches the high order bits of the address internally.
The high address should remain on port 3 for at least two clock
cycles after ASEL is driven low. Port 3 may then be driven with the
low byte of the address. The low address will be internally stable 13
clock cycles later. The address will remain stable provided that the
low byte placed on port 3 is held stable and ASEL is kept low. Note:
ASEL needs to be pulsed high only to change the high byte of the
address.
Next the address information for the location to be programmed is
placed on port 3 and ASEL is used to perform the address
multiplexing, as previously described. At this time, port 1 functions
as an output.
Port 1 is used as a bidirectional data bus during programming and
verify operations. During programming mode, it accepts the byte to
be programmed. During verify mode, it provides the contents of the
1998 May 01
16
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
83C752/87C752
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
memory will be encrypted with the second byte in the encryption
table and so forth up to and including the 16the byte. The encryption
repeats in 16-byte groups; the 17th byte in the code memory will be
encrypted with the first byte in the encryption table, and so forth.
A high voltage VPP level is then applied to the VPP input (P0.2).
(This sets Port 1 as an input port). The data to be programmed into
the EPROM array is then placed on Port 1. This is followed by a
series of programming pulses applied to the PGM/ pin (P0.1). These
pulses are created by driving P0.1 low and then high. This pulse is
repeated until a total of 25 programming pulses have occurred. At
the conclusion of the last pulse, the PGM/ signal should remain high.
Security Bits
Two security bits, security bit 1 and security bit 2, are provided to
limit access to the USER EPROM and encryption key arrays.
Security bit 1 is the program inhibit bit, and once programmed
performs the following functions:
1. Additional programming of the USER EPROM is inhibited.
The VPP signal may now be driven to the VOH level, placing the
87C752 in the verify mode. (Port 1 is now used as an output port).
After four machine cycles (48 clock periods), the contents of the
addressed location in the EPROM array will appear on Port 1.
2. Additional programming of the encryption key is inhibited.
The next programming cycle may now be initiated by placing the
address information at the inputs of the multiplexed buffers, driving
the VPP pin to the VPP voltage level, providing the byte to be
programmed to Port1 and issuing the 26 programming pulses on the
PGM/ pin, bringing VPP back down to the VC level and verifying the
byte.
3. Verification of the encryption key is inhibited.
4. Verification of the USER EPROM and the security bit levels may
still be performed.
(If the encryption key array is being used, this security bit should be
programmed by the user to prevent unauthorized parties from
reprogramming the encryption key to all logical zero bits. Such
programming would provide data during a verify cycle that is the
logical complement of the USER EPROM contents).
Programming Modes
The 87C752 has four programming features incorporated within its
EPROM array. These include the USER EPROM for storage of the
application’s code, a 16-byte encryption key array and two security
bits. Programming and verification of these four elements are
selected by a combination of the serial data stream applied to the
RESET pin and the voltage levels applied to port pins P0.1 and
P0.2. The various combinations are shown in Table 4.
Security bit 2, the verify inhibit bit, prevents verification of both the
USER EPROM array and the encryption key arrays. The security bit
levels may still be verified.
Programming and Verifying Security Bits
Security bits are programmed employing the same techniques used
to program the USER EPROM and KEY arrays using serial data
streams and logic levels on port pins indicated in Table 4. When
programming either security bit, it is not necessary to provide
address or data information to the 87C752 on ports 1 and 3.
Encryption Key Table
The 87C752 includes a 16-byte EPROM array that is programmable
by the end user. The contents of this array can then be used to
encrypt the program memory contents during a program memory
verify operation. When a program memory verify operation is
performed, the contents of the program memory location is
XNOR’ed with one of the bytes in the 16-byte encryption table. The
resulting data pattern is then provided to port 1 as the verify data.
The encryption mechanism can be disable, in essence, by leaving
the bytes in the encryption table in their erased state (FFH) since
the XNOR product of a bit with a logical one will result in the original
bit. The encryption bytes are mapped with the code memory in
16-byte groups. the first byte in code memory will be encrypted with
the first byte in the encryption table; the second byte in code
Verification occurs in a similar manner using the RESET serial
stream shown in Table 4. Port 3 is not required to be driven and the
results of the verify operation will appear on ports 1.6 and 1.7.
Ports 1.7 contains the security bit 1 data and is a logical one if
programmed and a logical zero if not programmed. Likewise, P1.6
contains the security bit 2 data and is a logical one if programmed
and a logical zero if not programmed.
Table 4. Implementing Program/Verify Modes
OPERATION
Program user EPROM
Verify user EPROM
Program key EPROM
Verify key EPROM
Program security bit 1
Program security bit 2
Verify security bits
SERIAL CODE
P0.1 (PGM/)
P0.2 (VPP)
296H
296H
292H
292H
29AH
298H
29AH
–*
VIH
–*
VIH
–*
–*
VIH
VPP
VIH
VPP
VIH
VPP
VPP
VIH
NOTE:
* Pulsed from VIH to VIL and returned to VIH.
1998 May 01
17
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
83C752/87C752
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
EPROM PROGRAMMING AND VERIFICATION
Tamb = 21°C to +27°C, VCC = 5V ±10%, VSS = 0V
PARAMETER
SYMBOL
MIN
MAX
UNIT
1.2
6
MHz
1/tCLCL
Oscillator/clock frequency
tAVGL1
Address setup to P0.1 (PROG–) low
tGHAX
Address hold after P0.1 (PROG–) high
48tCLCL
tDVGL
Data setup to P0.1 (PROG–) low
38tCLCL
tDVGL
Data setup to P0.1 (PROG–) low
38tCLCL
tGHDX
Data hold after P0.1 (PROG–) high
36tCLCL
tSHGL
VPP setup to P0.1 (PROG–) low
10
µs
tGHSL
VPP hold after P0.1 (PROG–)
10
µs
tGLGH
P0.1 (PROG–) width
90
tAVQV2
VPP low (VCC) to data valid
tGHGL
P0.1 (PROG–) high to P0.1 (PROG–) low
tSYNL
P0.0 (sync pulse) low
tSYNH
P0.0 (sync pulse) high
8tCLCL
tMASEL
ASEL high time
13tCLCL
tMAHLD
Address hold time
2tCLCL
tHASET
Address setup to ASEL
13tCLCL
tADSTA
Low address to address stable
13tCLCL
10µs + 24tCLCL
µs
110
48tCLCL
µs
10
4tCLCL
NOTES:
1. Address should be valid at least 24tCLCL before the rising edge of P0.2 (VPP).
2. For a pure verify mode, i.e., no program mode in between, tAVQV is 14tCLCL maximum.
87C752
A0–A10
ADDRESS STROBE
P3.0–P3.7
VCC
P0.0/ASEL
VSS
PROGRAMMING
PULSES
P0.1
VPP/VIH VOLTAGE
SOURCE
P0.2
+5V
P1.0–P1.7
DATA BUS
XTAL1
CLK SOURCE
RESET
CONTROL
LOGIC
RESET
SU00320
Figure 7. Programming Configuration
XTAL1
MIN 2 MACHINE
CYCLES
RESET
TEN BIT SERIAL CODE
BIT 0
P0.2
UNDEFINED
P0.1
UNDEFINED
BIT 1
BIT 2
BIT 3
BIT 4
BIT 5
BIT 6
BIT 7
BIT 8
BIT 9
SU00302
Figure 8. Entry into Program/Verify Modes
1998 May 01
18
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
83C752/87C752
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
12.75V
P0.2 (VPP)
5V
5V
tSHGL
tGHSL
25 PULSES
P0.1 (PGM)
tGLGH
tMASEL
tGHGL
98µs MIN
10µs MIN
P0.0 (ASEL)
tHASET
PORT 3
tHAHLD
HIGH ADDRESS
LOW ADDRESS
tADSTA
PORT 1
INVALID DATA
tDVGL
VALID DATA
tGHDX
DATA TO BE PROGRAMMED
VERIFY MODE
PROGRAM MODE
tAVQV
INVALID DATA
VALID DATA
VERIFY MODE
SU00310
Figure 9. Program/Verify Cycle
Purchase of Philips I2C components conveys a license under the Philips’ I2C patent
to use the components in the I2C system provided the system conforms to the
I2C specifications defined by Philips. This specification can be ordered using the
code 9398 393 40011.
1998 May 01
19
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
SSOP28: plastic shrink small outline package; 28 leads; body width 5.3mm
1998 May 01
20
83C752/87C752
SOT341-1
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
DIP28: plastic dual in-line package; 28 leads (600 mil); long body
1998 May 01
21
83C752/87C752
SOT117-2
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
PLCC28: plastic leaded chip carrer; 28 leads; pedestal
1998 May 01
22
83C752/87C752
SOT261-3
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
NOTES
1998 May 01
23
83C752/87C752
Philips Semiconductors
Product specification
80C51 8-bit microcontroller family
2K/64 OTP/ROM, 5 channel 8 bit A/D, I2C, PWM, low pin count
83C752/87C752
Data sheet status
Data sheet
status
Product
status
Definition [1]
Objective
specification
Development
This data sheet contains the design target or goal specifications for product development.
Specification may change in any manner without notice.
Preliminary
specification
Qualification
This data sheet contains preliminary data, and supplementary data will be published at a later date.
Philips Semiconductors reserves the right to make chages at any time without notice in order to
improve design and supply the best possible product.
Product
specification
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.
[1] Please consult the most recently issued datasheet before initiating or completing a design.
Definitions
Short-form specification — The data in a short-form specification is extracted from a full data sheet with the same type number and title. For
detailed information see the relevant data sheet or data handbook.
Limiting values definition — Limiting values given are in accordance with the Absolute Maximum Rating System (IEC 134). Stress above one
or more of the limiting values may cause permanent damage to the device. These are stress ratings only and operation of the device at these or
at any other conditions above those given in the Characteristics sections of the specification is not implied. Exposure to limiting values for extended
periods may affect device reliability.
Application information — Applications that are described herein for any of these products are for illustrative purposes only. Philips
Semiconductors make no representation or warranty that such applications will be suitable for the specified use without further testing or
modification.
Disclaimers
Life support — These products are not designed for use in life support appliances, devices or systems where malfunction of these products can
reasonably be expected to result in personal injury. Philips Semiconductors customers using or selling these products for use in such applications
do so at their own risk and agree to fully indemnify Philips Semiconductors for any damages resulting from such application.
Right to make changes — Philips Semiconductors reserves 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.
 Copyright Philips Electronics North America Corporation 1998
All rights reserved. Printed in U.S.A.
Philips Semiconductors
811 East Arques Avenue
P.O. Box 3409
Sunnyvale, California 94088–3409
Telephone 800-234-7381
Date of release: 05-98
Document order number:
1998 May 01
24
9397 750 03843