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.

TMS320F28035: I2C SDA Line is being pulled

Part Number: TMS320F28035
Other Parts Discussed in Thread: C2000WARE

Hello,

I am using a TMS320F28035 Microcontroller's I2C as a master. There are 2 Slave devices connected 1. EEPROM (M24M02-DR) and 2. Accelerometer (LSM9DS1). There is no issue with the I2C communication when there is only EEPROM as a slave. When I also connect the Accelerometer, the SDA line is being pulled low. 

To solve the above problem, I want to send clock pulses on the SCL line, configuring the SCL line as GPIO. The accelerometer datasheet says the Clock high time = 0.6 usec and Clock low time = 1.3 usec in the fast mode (400KHz). To generate the clock, I am setting and clearing the GPIO pin with delays in between. The delay is generated by DELAY_US(); function. But this does not seem to generate the clock in the way I expected. I see a much lower frequency.

Can you please help me with where I am doing wrong? And the slave (Accelerometer) does not release the SDA line even after doing so...

Thanks,

Shalini Addepalli