Skip to main content
projnikdroid
Associate II
April 8, 2014
Question

I2C SDA, SCL held high

  • April 8, 2014
  • 4 replies
  • 1697 views
Posted on April 08, 2014 at 15:37

 I m working on STM32F303. I have interfaced I2C2 to EEPROM and DS3231 with pullups on SDA and SCL..

Issue:

After Reset, SDA and SCL line is held high (it only happens ocassionally)..

While I2C works properly, i can access both(EEROM and DS3231)
    This topic has been closed for replies.

    4 replies

    Tesla DeLorean
    Guru
    April 8, 2014
    Posted on April 08, 2014 at 15:59

    The pins are pulled high, the idle state of I2C is high, the problem is what?

    Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..
    projnikdroid
    Associate II
    April 8, 2014
    Posted on April 08, 2014 at 16:03

    I2C not responding... i guess it cant communicate with any of the above(some times)..

    After Reset, at times it works, or not.(works)

    projnikdroid
    Associate II
    April 8, 2014
    Posted on April 08, 2014 at 16:06

    I2C not responding... i guess it cant communicate with any of the above(some times)..

    After Reset, at times it works, or not.(it works : I2C works (i can read data) ) else it hangs, in debugging it shows STOPF and NACKF bit set in ISR Reg

    Tesla DeLorean
    Guru
    April 8, 2014
    Posted on April 08, 2014 at 16:20

    The I2C implementation on the STM32's is UGLY, there are conditions depending on how (order) you bring up the pins, that the peripheral will see a LOW pin and enter a BUSY mode. Is that what you're talking about? What status is the peripheral reporting in this condition?

    Also chips hung on the I2C bus often don't have a RESET, if they get hung in an odd state you might need to clock them out manually.

    Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..