Address Buffers

The I2C module has two address buffer registers, I2CxADB0 and I2CxADB1, which can be used as address receive buffers in Client mode, address transmit buffers in Host mode, or both address transmit and address receive buffers in 7-bit Multi-Host mode (see the table below). The address buffers are enabled/disabled via the Address Buffer Disable (ABD) bit.

When the ABD bit is cleared (ABD = 0), the buffers are enabled, which means:

When the ABD bit is set (ABD = 1), the buffers are disabled, which means:

Table 1. Address Buffer Direction
Mode I2CxADB0 I2CxADB1
Client (7-bit) RX Unused
Client (10-bit) RX (address low byte) RX (address high byte)
Host (7-bit) Unused TX
Host (10-bit) TX (address low byte) TX (address high byte)
Multi-Host (7-bit) RX TX