3 start and stop bus states, Start and stop bus states -4, Start and stop bit definitions -4 – Intel PXA255 User Manual

Page 334

Advertising
background image

9-4

Intel® PXA255 Processor Developer’s Manual

I

2

C Bus Interface Unit

When the I

2

C unit receives an address that matches the 7-bit address found in the I

2

C Slave

Address Register (ISAR) or the general call address (see

Section 9.4.8

), the interface either

remains in slave-receive mode or transitions to slave-transmit mode. The Read/Write bit (R/nW)
determines which mode the interface enters. The R/nW bit is the least significant bit of the byte

containing the slave address. If the R/nW bit is low, the master that initiated the transaction intends

write data and the I

2

C unit remains in slave-receive mode. If the R/nW is high, the master that

initiated the transaction intends to read data and the I

2

C unit transitions to slave-transmit mode.

Section 9.4.7

further defines slave operation.

When the I

2

C unit initiates a read or write on the I

2

C bus, it transitions from the default slave-

receive mode to the master-transmit mode. If the transaction is a write, the I

2

C unit remains in

master-transmit mode after the address transfer is completed. If the transaction is a read, the I

2

C

unit transmits the start address, then transitions to master-receive mode.

Section 9.4.6

further

defines master operation.

9.3.3

Start and Stop Bus States

The I

2

C bus specification defines a transaction START, used at the beginning of a transfer, and a

transaction STOP bus state, used at the end of a transfer. A START condition occurs if a high to

low transition takes place on the SDA line when SCL is high. A STOP condition occurs if a low to

high transition takes place on the SDA line when SCL is high.

The I

2

C unit uses the ICR[START] and ICR[STOP] bits to:

Initiate an additional byte transfer

Initiate a START condition on the I

2

C bus

Enable Data Chaining (repeated START)

Initiate a STOP condition on the I

2

C bus

Table 9-4

defines the START and STOP bits in the ICR.

Table 9-4. START and STOP Bit Definitions

STOP

bit

STAR

T bit

Condition

Notes

0

0

No START or STOP

I

2

C unit sends a no START or STOP condition. Used when

multiple data bytes need to be transferred.

0

1

START Condition and
Repeated START

I

2

C unit sends a START condition and transmit the 8-bit IDBR’s

contents. The IDBR must contain the 7-bit address and the R/nW
bit before a START is initiated.
For a Repeated Start, the IDBR contains the target slave address
and the R/nW bit. This allows a master to make multiple transfers
to different slaves without giving up the bus.
The interface stays in master-transmit mode for writes and
transitions to master-receive mode for reads.

1

X

STOP Condition

In master-transmit mode, the I

2

C unit transmits the 8-bit IDBR and

sends a STOP condition on the I

2

C bus.

In master-receive mode, the ICR[ACKNAK] must be changed to a
negative ACK (see

Section 9.4.3

). The I

2

C unit transmits the NAK

bit, receives the data byte in the IDBR, and sends a STOP
condition on the I

2

C bus.

Advertising