The I
2C Specification reserves the address
0x00
as the General Call address. The General Call address is used to address all slave
modules connected to the bus at the same time. When a master issues a General Call, all
slave devices should, in theory, respond with an
ACK. The
General Call Enable (
GCEN) bit determines whether slave hardware will respond to a
General Call address. When GCEN is set (GCEN =
1), slave hardware will
respond to a General Call with an
ACK, and when GCEN is clear
(GCEN =
0), the General Call is ignored, and the slave responds with a
NACK.
When the module receives a General Call, the
ADRIF bit is set and the address is stored in
I2CxADB0. If the
ADRIE bit is set, the module will generate an interrupt and
stretch the clock after the 8th falling edge of SCL. This allows the slave to determine
the acknowledgement response to return to the master (see figure below).
Important: When using the General
Call addressing feature, loading the I2CxADR0/1/2/3 registers with the
0x00 address is not recommended. Additionally, slave hardware only
supports General Call addressing in 7-bit Addressing modes.
Figure 1. General Call Addressing