SLOS877C October 2014 – April 2021 TMP451-Q1
PRODUCTION DATA
Accessing a particular register on the TMP451-Q1 device 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 TMP451-Q1 device requires a value for the pointer register (see Figure 7-4).
When reading from the TMP451-Q1 device 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 which register is read for a read operation, a new value must be written to the pointer register. This transaction 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 7-5 for details of this sequence.
If repeated reads from the same register are desired, it is not necessary to continually send the pointer register bytes, because the TMP451-Q1 retains the pointer register value until it is changed by the next write operation. The register bytes are sent MSB first, followed by the LSB.
Read operations should be terminated by issuing a not-acknowledge command at the end of the last byte to be read. For single-byte operation, the master must leave the SDA line high during the acknowledge time of the first byte that is read from the slave.