User Manual

Application Note
SMBus communication with MLX90614
390119061402 Page 9 of 32 Jan-2008
Rev 004
acknowledge a byte, the receiver must pull the SDA line LOW during the HIGH period of the
clock pulse according to the SMBus timing specifications. A receiver that wishes to NACK a byte
must let the SDA line remain HIGH during the acknowledge clock pulse. A SMBus device must
always acknowledge (ACK) its own address.
A SMBus slave device may decide to NACK a byte other than the address byte in the following
situations:
The slave device is busy performing a real time task, or data requested are not available.
The master upon detection of the NACK condition must generate a STOP condition to abort the
transfer. Note that as an alternative, the slave device can extend the clock LOW period within
the limits of the specifications in order to complete its tasks and continue the transfer.
The slave device detects an invalid command or invalid data. In this case the slave
device must NACK the received byte. The master upon detection of this condition must generate
a STOP condition and retry the transaction.
If a master-receiver is involved in the transaction it must signal the end of data to the
slave-transmitter by generating an NACK on the last byte that was clocked out by the slave. The
slave-transmitter must release the data line to allow the master to generate a STOP condition.