
CHAPTER 16 SERIAL INTERFACE IICA
User’s Manual U19780EJ2V0UD
467
(2) Master operation in multi-master system
Figure 16-29. Master Operation in Multi-Master System (1/3)
IICWL, IICWH
←
XXH
IICAF0
←
0XH
Setting STCEN and IICRSV
Setting port
SPT0 = 1
SVA0
←
XXH
SPIE0 = 1
START
Slave operation
Slave operation
Releases the bus for a specific period.
Bus status is
being checked.
Yes
Checking bus status
Note
Master operation
starts?
Enables reserving
communication.
Disables reserving
communication.
SPD0 = 1?
STCEN = 1?
IICRSV = 0?
A
Selects a transfer clock.
Sets a local address.
Sets a start condition.
(Communication start request)
(No communication start request)
•
Waiting to be specified as a slave by other master
•
Waiting for a communication start request (depends on user program)
Prepares for starting
communication
(generates a stop condition).
Waits for detection
of the stop condition.
No
Yes
Yes
No
INTIICA0
interrupt occurs?
INTIICA0
interrupt occurs?
Yes
No
Yes
No
SPD0 = 1?
Yes
No
Slave operation
No
INTIICA0
interrupt occurs?
Yes
No
1
B
SPIE0 = 0
Yes
No
Waits for a communication request.
Waits for a communication
Initial setting
IICACTL0
←
1XX111XXB
IICE0 = 1
IICACTL0
←
0XX111XXB
ACKE0 = WTIM0 = SPIE0 = 1
Setting of the port used alternatively as the pin to be used.
First, set the port to input mode and the output latch to 0 (see
16.3 (7) Port mode register 6 (PM6)
).
Setting port
Set the port from input mode to output mode and enable the output of the I
2
C bus
(see
16.3 (7) Port mode register 6 (PM6)
).
Note
Confirm that the bus is released (CLD0 bit = 1, DAD0 bit = 1) for a specific period (for example, for a period
of one frame). If the SDAA0 pin is constantly at low level, decide whether to release the I
2
C bus (SCLA0
and SDAA0 pins = high level) in conformance with the specifications of the product that is communicating.