Am facing the issues in reading the data.
Slave Address + W = 0x80
Slave Address + R = 0x81
Am doing the following procedure to read the temperature or humidity data from the output register using the I2C interface:
1) point the output register you want to read in order to trigger the start of the measurement
Start | Slave Address + W | ACK | Address | ACK | STOP
2) wait the conversion time (in case of T + RH at highest resolution the conversion time is 15msec typical and 20msec max) - Tried both and between time
3) read the output data
Start | Slave Address + R | ACK | Data | ACK | Data | NACK | STOP
Status register of I2C in my micro-controller are updating with valid states(valid acknowledge). These valid states(acknowledge) indicates the writing and reading procedure is correct (as my observation).
But while reading the data after Slave Address + R | ACK , no data is receiving in the buffer, the status register of I2C value is 0XF8 (No relevant state information available).
The the required valid state should be 0x50, but the status is updating with 0xF8.
1. Suggest me where am going wrong?
2. How to read the temperature and Humidity in single shot?