beautypg.com

Freescale Semiconductor MCF5480 User Manual

Page 860

background image

MCF548x Reference Manual, Rev. 3

28-6

Freescale Semiconductor

7

6

5

4

3

2

1

0

R

ICF

IAAS

IBB

IAL

0

SRW

IIF

RXAK

W

Reset

1

0

0

0

0

0

0

1

Reg

Addr

MBAR + 0x8F0C

Figure 28-5. I

2

C Status Register (I2SR)

Table 28-6. I2SR Field Descriptions

Bits

Name

Description

7

ICF

Data transferring bit. While one byte of data is transferred, ICF is cleared.
0 Transfer in progress
1 Transfer complete. Set by the falling edge of the ninth clock of a byte transfer.

6

IAAS I

2

C addressed as a slave bit. The CPU is interrupted if I2CR[IIEN] is set. Next, the CPU must check

SRW and set its TX/RX mode accordingly. Writing to I2CR clears this bit.
0 Not addressed.
1 Addressed as a slave. Set when its own address (I2ADR) matches the calling address.

5

IBB I

2

C bus busy bit. Indicates the status of the bus.

0 Bus is idle. If a STOP signal is detected, IBB is cleared.
1 Bus is busy. When START is detected, IBB is set.

4

IAL

Arbitration lost. Set by hardware in the following circumstances. (IAL must be cleared by software by
writing zero to it.)
• SDA sampled low when the master drives high during an address or data-transmit cycle.
• SDA sampled low when the master drives high during the acknowledge bit of a data-receive cycle.
• A start cycle is attempted when the bus is busy.
• A repeated start cycle is requested in slave mode.
• A stop condition is detected when the master did not request it.

3

Reserved, should be cleared.

2

SRW

Slave read/write. When IAAS is set, SRW indicates the value of the R/W command bit of the calling
address sent from the master. SRW is valid only when a complete transfer has occurred, no other
transfers have been initiated, and the I

2

C module is a slave and has an address match.

0 Slave receive, master writing to slave (on the SDA signal).
1 Slave transmit, master reading from slave (on the SDA signal).

1

IIF

I

2

C interrupt. Must be cleared by software by writing a zero to it in the interrupt routine.

0 No I

2

C interrupt pending

1 An interrupt is pending, which causes a processor interrupt request (if IIEN = 1). Set when one of

the following occurs:

• Complete one byte transfer (set at the falling edge of the ninth clock)
• Reception of a calling address that matches its own specific address in slave-receive mode
• Arbitration lost

0

RXAK

Received acknowledge. The value of SDA during the acknowledge bit of a bus cycle.
0 An acknowledge signal was received after the completion of 8-bit data transmission on the bus
1 No acknowledge signal was detected at the ninth clock.

This manual is related to the following products: