The I2C includes three hardware
SCL low time-outs which allow a time-out to occur for SMBus SCL low time-out, host extend
time-out, and client extend time-out. This allows for SMBus functionality These time-outs
are driven by the GCLK_SERCOM_SLOW clock. The GCLK_SERCOM_SLOW clock is used to accurately
time the time-out and must be configured to use a 32KHz oscillator. The I2C
interface also allows for a SMBus compatible SDA hold time.
- TTIMEOUT: SCL low time of 25..35ms – Measured for a
single SCL low period. It is enabled by CTRLA.LOWTOUTEN.
- TLOW:SEXT: Cumulative clock low extend time of 25 ms –
Measured as the cumulative SCL low extend time by a client device in a single message
from the initial START to the STOP. It is enabled by CTRLA.SEXTTOEN.
- TLOW:MEXT: Cumulative clock low extend time of 10 ms –
Measured as the cumulative SCL low extend time by the host device within a single byte
from START-to-ACK, ACK-to-ACK, or ACK-to-STOP. It is enabled by CTRLA.MEXTTOEN.