Associate III
September 14, 2022
Solved
I2C using DMA intermittently stalls
- September 14, 2022
- 2 replies
- 1212 views
Hi All,
I have a STM32H7 master communicating with I2C to 4 STM32F0 slaves. The I2C uses DMA but intermittently stalls when the master is transmitting to a slave. It sends the address and the first data byte successfully (acknowledged), but then fails to transmit the second data byte and the clock is held low. No errors are returned, but the driver waits indefinitely for the transmission to complete (which it never does). There is a screenshot of the bus stalling attached.
Note, the I2C buffers have been located in non-cached memory and is accessible by DMA.
Is anyone aware of any issues with transmitting I2C using DMA?
Kind Regards
David

