
As shown in Table 16.16, I2C mode is entered when bits SMD2 to SMD0 in the UiMR register are set to 010b (I2C mode) and the IICM bit in the UiSMR register to 1 (I2C mode). Because an SDAi transmit output passes
through a delay circuit, output signal from the SDAi pin changes after the SCLi pin level becomes low (“L”)
and stabilizes.
Table 16.16
Functions in I2C Mode (1)
i = 0 to 4
NOTE:
1.
Use the following procedures to change an interrupt source.
(a) Disable an interrupt of corresponding interrupt number.
(b) Change an interrupt source.
(c) Set the IR bit of a corresponding interrupt number to 0 (interrupt not requested).
(d) Set bits ILVL2 to ILVL0 of a corresponding interrupt number.
Function
I2C Mode (SMD2 to SMD0 = 010b, IICM = 1)
IICM2 = 0
(NACK/ACK interrupt)
IICM2 = 1
(UART transmit/receive interrupt)
CKPH = 0
(no clock delay)
CKPH = 1
(clock delay)
CKPH = 0
(no clock delay)
CKPH = 1
(clock delay)
Interrupt source for
Start condition or stop condition detection
Interrupt source for
numbers 17, 19, 33, 35,
No acknowledgement detection (NACKi) -
at the rising edge of 9th bit of SCLi
UARTi transmit
operation - at the
rising edge of 9th bit
of SCLi
UARTi transmit
operation - at the
next falling edge after
the 9th bit of SCLi
Interrupt source for
numbers 18, 20, 34, 36,
Acknowledgement detection (ACKi) -
at the rising edge of 9th bit of SCLi
UARTi receive operation - at the falling edge
of 9th bit of SCLi
Data transfer timing
from the UART receive
shift register to the UiRB
register
At rising edge of 9th bit of SCLi
Falling edge of 9th bit
of SCLi
Falling edge and
rising edge of 9th bit
of SCLi
UARTi transmit output
delay
Delay
Functions of P6_3,
P6_7, P7_0, P9_2,
P9_6
SDAi input and output
Functions of P6_2,
P6_6, P7_1, P9_1,
P9_7
SCLi input and output
Noise filter width
200 ns