Hello,
A customer is trying to interface a CC2642R to a MAX86150 but they need I2C Repeated Start for this device. Do we have any example code for this function?
Thanks,
Nick
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.
Hello,
A customer is trying to interface a CC2642R to a MAX86150 but they need I2C Repeated Start for this device. Do we have any example code for this function?
Thanks,
Nick
Hi Nicholas,
Could you elaborate on this? Our I2C driver use repeated start when appropriate, is this not enough for them?
Hello,
I think this may just be an issue of not knowing the feature exists already. Can you point me to a section of the datasheet/technical reference manual that talks about this?
Thanks,
Nick
Hi Nicholas,
It is covered by chapter 23 in the TRM (http://www.ti.com/lit/pdf/swcu185). Figure 23-9 for example shows a I2C master transmit with repeated start.
Thanks for the reference. I do see the the I2C repeated start logic in Tables 23-9 and and 23-10. This issue is how to call this logic using the TI-RTOS I2C driver API. I'm coding on a CC2642 (die Rev E) using TI-RTOS v3.2. To do an I2C exchange, I'm at this level of the API already talking with two I2C devices.
Hi Steve,
The I2C driver you use is part of the SimpleLink SDK drivers. These are high lever driver and will handle repeated start as needed depending on your transaction. This means there is nothing you can/need to do on a API lever in order to perform "repeated start". If you want to you can locate and look at the driver source (<SDK>/source/ti/drivers/i2c/I2CCC26XX.c) to see how it operates.
Is the Maxim IC not conforming with the I2C standard in regards to how repeated starts is used? As Maxim refers to it as "Standard I2C interface" I would assume you can simply run with the I2C driver as is (not needing to think about repeated starts etc).