UM11029
All information provided in this document is subject to legal disclaimers.
© NXP Semiconductors N.V. 2017. All rights reserved.
User manual
Rev. 1.0 — 16 June 2017
333 of 515
NXP Semiconductors
UM11029
Chapter 19: LPC84x I2C0/1/2/3
For a 400 kHz bit rate, the pins can be configured in standard mode in the IOCON block.
See
Table 206 “PIO0_11 register (PIO0_11, address 0x4004 401C) bit description”
and
Table 207 “PIO0_10 register (PIO0_10, address 0x4004 4020) bit description”
The transmission of the address and data bits is controlled by the state of the
SLVPENDING status bit. Whenever the status is Slave pending, the slave can
acknowledge (“ack”) or send or receive an address and data. The received data or the
data to be sent to the master are available in the SLVDAT register. After sending and
receiving data, continue to the next step of the transmission protocol by writing to the
SLVCTL register.
19.3.2.1 Slave read from master
Configure the I2C as slave with address x:
•
Set the SLVEN bit to 1 in the CFG register. See
•
Write the slave address x to the address 0 match register. See
Read data from the master:
1. Wait for the pending status to be set (SLVPENDING = 1) by polling the STAT register.
2. Acknowledge (“ack”) the address by setting SLVCONTINUE = 1 in the slave control
register. See
.
3. Wait for the pending status to be set (SLVPENDING = 1) by polling the STAT register.
4. Read 8 bits of data from the SLVDAT register. See
.
5. Acknowledge (“ack”) the data by setting SLVCONTINUE = 1 in the slave control
register. See
.