The Device ID is a 24-bit (3-byte) read-only value containing the following fields:
- 12 bits: Manufacturer identifier (unique per
manufacturer, for example, TI)
- 9 bits: Part number (assigned by the
manufacturer)
- 3 bits: Die revision (assigned by the
manufacturer)
The Device ID is hardwired and accessible using the following procedure:
- Send a START command.
- The controller transmits the Reserved Device ID
I²C address (1111 1000) with R/W = 0 (write).
- The controller sends the target device address,
with the LSB as “don’t care.” Only the matching device acknowledges.
- Issue a Repeated START condition.
- A STOP command followed
by a START command resets the target state machine and the Device ID
read cannot be performed. Also, a STOP command or a Re-START command
followed by an access to another target device resets the target state
machine and the Device ID Read cannot be performed.
- The controller sends the Reserved Device ID I²C
address (1111 1001) with R/W = 1 (read).
- The device transmits the Device ID in the
following order: •
- First byte + 4 MSBs of
second byte: Manufacturer ID (12 bits)
- 4 LSBs of second byte + 5
MSBs of third byte: Part Identification (9 bits)
- 3 LSBs of third byte: Die
Revision (3 bits)
- The controller completes the read by sending a
NACK after the last byte, resetting the device’s internal state machine and then
issuing a STOP command.
If the controller sends additional acknowledgments after the third byte, the device restarts the data sequence from the first byte.