ZHCS916I March 2009 – December 2018 TMP112
Accessing a particular register on the TMP112 family is accomplished by writing the appropriate value to the pointer register. The value for the pointer register is the first byte transferred after the slave address byte with the R/W bit low. Every write operation to the TMP112 family requires a value for the pointer register (see Figure 11).
When reading from the TMP112 family, the last value stored in the pointer register by a write operation is used to determine which register is read by a read operation. To change the register pointer for a read operation, a new value must be written to the pointer register. This action is accomplished by issuing a slave-address byte with the R/W bit low, followed by the pointer register byte. No additional data are required. The master can then generate a START condition and send the slave address byte with the R/W bit high to initiate the read command. See Figure 12 for details of this sequence. If repeated reads from the same register are desired, continuously sending the pointer register bytes is not necessary because the TMP112 family retains the pointer register value until the value is changed by the next write operation.
Register bytes are sent with the most significant byte first, followed by the least significant byte.