P87LPC762FN NXP Semiconductors, P87LPC762FN Datasheet - Page 17
![no-image](/images/manufacturer_photos/0/4/487/nxp_semiconductors_sml.jpg)
P87LPC762FN
Manufacturer Part Number
P87LPC762FN
Description
MCU 8-Bit 87LP 80C51 CISC 2KB EPROM 5V 20-Pin PDIP Tube
Manufacturer
NXP Semiconductors
Datasheet
1.P87LPC762BD512.pdf
(57 pages)
Specifications of P87LPC762FN
Package
20PDIP
Device Core
80C51
Family Name
87LP
Maximum Speed
20 MHz
Ram Size
128 Byte
Program Memory Size
2 KB
Operating Supply Voltage
5 V
Data Bus Width
8 Bit
Program Memory Type
EPROM
Number Of Programmable I/os
18
Interface Type
I2C/UART
Operating Temperature
-45 to 85 °C
Number Of Timers
2
Available stocks
Company
Part Number
Manufacturer
Quantity
Price
Company:
Part Number:
P87LPC762FN
Manufacturer:
PHILIPS
Quantity:
512
Part Number:
P87LPC762FN
Manufacturer:
NXP/恩智浦
Quantity:
20 000
Philips Semiconductors
ARL
STR
STP
MASTER
Writing I2CON
Typically, for each bit in an I
ATN = 1. Based on DRDY, ARL, STR, and STP, and on the current
bit position in the message, it may then write I2CON with one or
more of the following bits, or it may read or write the I2DAT register.
CXA
2001 Oct 26
Low power, low price, low pin count (20 pin)
microcontroller with 2 kbyte OTP
“Arbitration Loss” is 1 when transmit Active was set, but
this device lost arbitration to another transmitter.
Transmit Active is cleared when ARL is 1. There are
four separate cases in which ARL is set.
1. If the program sent a 1 or repeated start, but another
device sent a 0, or a stop, so that SDA is 0 at the rising
edge of SCL. (If the other device sent a stop, the setting
of ARL will be followed shortly by STP being set.)
2. If the program sent a 1, but another device sent a
repeated start, and it drove SDA low before SCL
could be driven low. (This type of ARL is always
accompanied by STR = 1.)
3. In master mode, if the program sent a repeated start,
but another device sent a 1, and it drove SCL low
before this device could drive SDA low.
4. In master mode, if the program sent stop, but it could
not be sent because another device sent a 0.
“STaRt” is set to a 1 when an I
detected at a non-idle slave or at a master. (STR is not
set when an idle slave becomes active due to a start
bit; the slave has nothing useful to do until the rising
edge of SCL sets DRDY.)
“SToP” is set to 1 when an I
detected at a non-idle slave or at a master. (STP is not
set for a stop condition at an idle slave.)
“MASTER” is 1 if this device is currently a master on
the I
bus is not busy (i.e., if a start bit hasn’t been
received since reset or a “Timer I” time-out, or if a stop
has been received since the last start). MASTER is
cleared when ARL is set, or after the software writes
MASTRQ = 0 and then XSTP = 1.
Writing a 1 to “Clear Xmit Active” clears the Transmit
Active state. (Reading the I2DAT register also does this.)
2
C. MASTER is set when MASTRQ is 1 and the
2
C message, a service routine waits for
2
C stop condition is
2
C start condition is
14
CSTP
Regarding Transmit Active
Transmit Active is set by writing the I2DAT register, or by writing
I2CON with XSTR = 1 or XSTP = 1. The I
the SDA line low when Transmit Active is set, and the ARL bit will
only be set to 1 when Transmit Active is set. Transmit Active is
cleared by reading the I2DAT register, or by writing I2CON with CXA
= 1. Transmit Active is automatically cleared when ARL is 1.
IDLE
CDR
CARL
CSTR
XSTR
XSTP
Writing 1 to “IDLE” causes a slave’s I
ignore the I
MASTRQ is 1, then a stop condition will cause this
device to become a master).
Writing a 1 to “Clear Data Ready” clears DRDY.
(Reading or writing the I2DAT register also does this.)
Writing a 1 to “Clear Arbitration Loss” clears the ARL bit.
Writing a 1 to “Clear STaRt” clears the STR bit.
Writing a 1 to “Clear SToP” clears the STP bit. Note that
if one or more of DRDY, ARL, STR, or STP is 1, the low
time of SCL is stretched until the service routine
responds by clearing them.
Writing 1s to “Xmit repeated STaRt” and CDR tells the
I
should only be at a master. Note that XSTR need not
and should not be used to send an “initial”
(non-repeated) start; it is sent automatically by the I
hardware. Writing XSTR = 1 includes the effect of
writing I2DAT with XDAT = 1; it sets Transmit Active
and releases SDA to high during the SCL low time.
After SCL goes high, the I
suitable minimum time and then drives SDA low to
make the start condition.
Writing 1s to “Xmit SToP” and CDR tells the I
hardware to send a stop condition. This should only be
done at a master. If there are no more messages to
initiate, the service routine should clear the MASTRQ
bit in I2CFG to 0 before writing XSTP with 1. Writing
XSTP = 1 includes the effect of writing I2DAT with
XDAT = 0; it sets Transmit Active and drives SDA low
during the SCL low time. After SCL goes high, the I
hardware waits for the suitable minimum time and then
releases SDA to high to make the stop condition.
2
C hardware to send a repeated start condition. This
2
C until the next start condition (but if
2
C hardware waits for the
2
C interface will only drive
87LPC762
2
C hardware to
Preliminary data
2
C
2
2
C
C