ZHCSH87B September 2017 – February 2020 TMP461-SP
PRODUCTION DATA.
Accessing a particular register on the TMP461-SP 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 TMP461-SP device requires a value for the pointer register (see Figure 15).
When reading from the TMP461-SP 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 16 for details of this sequence.
If repeated reads from the same register are desired, continually sending the pointer register bytes is not necessary because the TMP461-SP 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. However, to mitigate effects of single-event upsets and single-event functional interrupts, it is recommended that appropriate value be written to the pointer register each time a read operation is performed. Relying on the last value stored in the pointer register may increase the probability of a failed read due to a single event upset.
Terminate read operations by issuing a not-acknowledge command at the end of the last byte to be read. For a 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.