Hello, we are using an STM32F429 running the KEIL RTOS. There some TCN75A temperature sensors connected to I2C3 and some other stuff connected out board. Now we've got the problem that sometimes the sensors hung up which leads to the main program gets stuck in a while-loop in "I2C_STM32F4xx.c" in "I2C_MasterTransmit" where it checks if the interface is busy. So I guess one of the sensors or both keep the bus in a faulty state and the bus seems to be busy. I couldn't find any timeout function in the context of this driver to abort the transmission or build a workaround in the upper program level.
From the file header: * $Date: 30. May 2016 * $Revision: V2.6 * * Driver: Driver_I2C1, Driver_I2C2, Driver_I2C3
Could you please help me!
Best regards, Rahul
Did you try "I2C_Cmd" to get rid of the fault? You may also try disabling and enabling the peripheral clock.