36.6.3.6.2 Hardware Actions in Client Mode

Table 36-6. Interrupt Request Conditions for Valid SERCOM I2C Client Configurations
Direction

CTRLB.
SMEN

CTRLC.
DATA32B

LENGTH.
LENEN

Condition
Host Write000
  • INTFLAG.DRDY = 1 if Rx FIFO is full
  • INTFLAG.RXFF = 1 if Rx FIFO threshold is reached or length transaction is completed
010
011
100
110
111
Host Read000
  • INTFLAG.DRDY = 1 if Tx FIFO is empty and SCL hold
  • INTFLAG.TXFE = 1 if Tx FIFO is empty or Tx FIFO threshold is reached
010
011
100
110
111
Table 36-7. Bus Actions for Valid SERCOM I2C Client Configurations
Direction

CTRLB.
  SMEN

CTRLC.
DATA32B

LENGTH.
LENEN

Actions
Host Write000
  • Byte mode operation
  • SCL stretched if RX FIFO is full
010
  • 32-bit mode operation
  • SCL stretched if RX FIFO is full
  • ACK/NACK each 4th byte, depending on Acknowledge Action (CTRLB.ACKACT)
  • ACK all other bytes
011
  • 32-bit mode operation with length control
  • SCL stretched if RX FIFO is full
  • ACK/NACK last byte of the frame, depending on Acknowledge Action (CTRLB.ACKACT)
  • ACK all other bytes
100
  • SCL stretched if RX FIFO is full
  • ACK all bytes received
110
  • 32-bit mode operation
  • SCL stretched if RX FIFO is full
  • ACK/NACK each 4th byte, depending on Acknowledge Action (CTRLB.ACKACT)
  • ACK all other bytes
111
  • 32-bit mode operation with length control
  • SCL stretched if RX FIFO is full
  • ACK/NACK last byte of the frame, depending on Acknowledge Action (CTRLB.ACKACT)
  • ACK all other bytes
Host Read000
  • SCL stretched if TX FIFO is empty
010
  • SCL stretched if TX FIFO is empty
011
  • SCL stretched if TX FIFO is empty and length transaction is not completed
100
  • SCL stretched if TX FIFO is empty
110
  • SCL stretched if TX FIFO is empty
111
  • SCL stretched if TX FIFO is empty and length transaction is not completed