Motorola MCF5282 ユーザーズマニュアル

ページ / 816
24-4
MCF5282 User’s Manual
MOTOROLA
 
I
2
C Protocol  
The slave whose address matches that sent by the master pulls SDA low at the ninth 
serial clock (D) to return an acknowledge bit.
3. Data transfer—When successful slave addressing is achieved, the data transfer can 
proceed (E) on a byte-by-byte basis in the direction specified by the R/W bit sent 
by the calling master. 
Data can be changed only while SCL is low and must be held stable while SCL is 
high, as Figure 24-2 shows. SCL is pulsed once for each data bit, with the msb being 
sent first. The receiving device must acknowledge each byte by pulling SDA low at 
the ninth clock; therefore, a data byte transfer takes nine clock pulses.
If it does not acknowledge the master, the slave receiver must leave SDA high. The 
master can then generate a STOP signal to abort the data transfer or generate a 
START signal (repeated start, shown in Figure 24-3) to start a new calling sequence. 
If the master receiver does not acknowledge the slave transmitter after a byte 
transmission, it means end-of-data to the slave. The slave releases SDA for the 
master to generate a STOP or START signal.
4. STOP signal—The master can terminate communication by generating a STOP 
signal to free the bus. A STOP signal is defined as a low-to-high transition of SDA 
while SCL is at logical high (F). Note that a master can generate a STOP even if the 
slave has made an acknowledgment, at which point the slave must release the bus.
Instead of signaling a STOP, the master can repeat the START signal, followed by a calling
command, (A in Figure 24-3). A repeated START occurs when a START signal is
generated without first generating a STOP signal to end the communication.
Figure 24-3. Repeated START
The master uses a repeated START to communicate with another slave or with the same
slave in a different mode (transmit/receive mode) without releasing the bus.
24.4.1 Arbitration Procedure
If multiple devices simultaneously request the bus, the bus clock is determined by a
synchronization procedure in which the low period equals the longest clock-low period
among the devices and the high period equals the shortest. A data arbitration procedure
SCL
1
2
3
4
5
6
7
8
1
2
5
6
7
8
3
4
AD7 AD6 AD5 AD4 AD3 AD2 AD1 R/W
AD7 AD6 AD5 AD4 AD3 AD2 AD1 R/W
9
9
XX
New Calling Address
R/W No 
Stop 
ACK 
Bit
STOP
Signal
Repeated
START
Signal
ACK
Bit
R/W
Calling Address
START
SDA
msb
lsb
msb
lsb
Signal
A