This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMP275: TMP275 I2C question

Part Number: TMP275

Hi Team,

I aksed TMP275 I2C quetion in below e2e but I have additional question so could you hlep?

[Question 1]
TMP275 reqires conversion time for conversion result.
if we READ before finishing conversion time, what is the output data?
- ramdum data? or
- FFFF or 0000? or
- send ACK and stop sequence?

[Question 2]
if we send ACK instead of NACK at the end of read from slave's register, how TMPS275 behaves?

Regards,
Kai

  • Dear Kai - 

    Following a power up or reset, the TMP275 temperature register will contain zeros until first conversion is complete. After conversions are started, this register will always contain the most recent measurement value.

    With regards to the MCU sending ACK vs, NACK on last byte  - this is a condition that should not exist in your system, if it does, you should fix the firmware bug you are describing. The MCU or MPU is always in complete control of the I2C bus. The MCU sends address of device and then (in the case you describe) would clock out the exact number of data bytes requested. Once the MCU "sees" all the bits it asked for have come in, it should send a NACK to indicate to the TMP275 that the transfer is complete and then a STOP.

    See image below from I2C spec