R01UH0092EJ0110 Rev.1.10
Page 565 of 807
Jul 31, 2012
M16C/64C Group
25. Multi-master I
2
C-bus Interface
25.3.5
Start Condition Overlap Protect
The I
2
C interface generates a start condition by setting registers S10 and S00 by a program. The bus
system must be free before setting these registers. Check whether the bus is free with the BB bit in the
S10 register by a program before setting the registers.
However, even after confirming that the bus is free, other master devices may generate a start
condition before setting registers S10 and S00. In this case, when the I
2
C interface detects a start
condition, the BB bit becomes 1 (bus busy) and the start condition overlap protect function is activated.
The start condition overlap protect function operates as follows:
•
The multi-master I
2
C-bus interface does not enter start condition standby state even if the S10
register is set to E0h.
•
If the I
2
C interface is in a start condition standby state, exit the state.
•
A start condition trigger is not generated even if a data is written to the S00 register by program.
•
Bits MST and TRX in the S10 register become 0 (slave receive mode).
•
The AL bit in the S10 register becomes 1 (arbitration lost detected).
Figure 25.10 shows the Start Condition Overlap Protect Operation.
Figure 25.10 Start Condition Overlap Protect Operation
The following is an example of the start condition overlap protect operation if a start condition is generated
by an external device in the start condition standby state.
BB bit in the S10 register
SCLMM
SDAMM
Start condition set by an external device
Bus free
Bus busy
Start condition overlap protect operates
Check that the BB bit is 0 (bus free)
by a program
Enter a start condition standby
state by a program
Start condition standby state exited
Start condition trigger generation disabled
AL bit becomes 1
AL bit in the S10 register
MST bit in the S10 register
TRX bit in the S10 register
1.5 fVIIC cycles
Содержание M16C Series
Страница 846: ...M16C 64C Group R01UH0092EJ0110...