37.5.12 I2CxBTO
I2C Bus Time-Out Register(1)
Note:
- It is recommended to write
this register only when the module is Idle (MMA =
0
or SMA =0
) or when the module is clock stretching (CSTR =1
or MDR =1
). - When TOBY32 is set (TOBY32 =
1
) and the LFINTOSC, MFINTOSC, or SOSC is selected as the BTO clock source, the time-out time (TOTIME) will be approximately in milliseconds.
Name: | I2CxBTO |
Address: | 0x029C |
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | |
TOREC | TOBY32 | TOTIME[5:0] | |||||||
Access | R/W | R/W | R/W | R/W | R/W | R/W | R/W | R/W | |
Reset | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Bit 7 – TOREC Time-Out Recovery Selection
Value | Description |
---|---|
1 | A BTO event will reset the I2C module and set BTOIF |
0 | A BTO event will set BTOIF, but will not reset the I2C module |
Bit 6 – TOBY32 Time-Out Prescaler Extension Enable(2)
Value | Description |
---|---|
1 | BTO time = TOTIME * TBTOCLK |
0 | BTO time = TOTIME * TBTOCLK * 32 |
Bits 5:0 – TOTIME[5:0] Time-Out Time Selection
Value | Name | Description |
---|---|---|
n | TOBY32 = 1 | Time-out is TOTIME periods of the prescaled BTO clock (TOTIME = n * TBTOCLK) |
n | TOBY32 = 0 | Time-out is TOTIME periods of the prescaled BTO clock multiplied by 32 (TOTIME = n * TBTOCLK * 32) |