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.

MSP430FR6989: I2C driver for HDC1080

Guru 24520 points

Part Number: MSP430FR6989
Other Parts Discussed in Thread: HDC1080

Hi TI Experts,

I met the following problem. So, please provide your advice in order to resolve this.
[Problem]
Now I read the HDC1080 data from MSP430FR6989 device via I2C interface by using TI-RTOS driver. This sensor need to have a few duration between the specific register and reading operation in order to read the data. But the I2C driver of TI-RTOS could not have that duration.
So, I would like to search the ideas to support this by using TI-RTOS.

If you have any questions, please let me know.
Best regards.
Kaka

  • Hi Kaka,
    Can you tell us specifically where in the I2C driver code you need the delays?
    Thanks,
    Janet
  • Hi Janet,

    Thank you for your response.
    According to the datasheet of HDC1080, MSP430 has need to have a few duration before reading sensor data as below.
    i.e. The data is following.
    "Device Slave address" "0x00"or"0x01" "conversion time(over 6.5ms)" "sensor data"
    ***************
    2. Trigger the measurements by executing a pointer write transaction with the address pointer set to 0x00. Refer to Figure 12.
    3. Wait for the measurements to complete, based on the conversion time (refer to Electrical Characteristics(1) for the conversion time).
    ***************
    Please see the chapter of "8.5.1.3 Device Measurement Configuration".

    Best regards.
    Kaka
  • Hi Kaka,

    You can break up your I2C transactions into two transactions, and do a Task_sleep() between them.  First do the write transaction, setting the readCount to 0, then sleep for 7msecs.  When the task wakes, issue the read transaction, setting the writeCount to 0.

    Best regards,

    Janet