cancel
Showing results for 
Search instead for 
Did you mean: 

Adding 5V external pull up in STM32 MCU i2c port

Posted on July 11, 2018 at 11:49

Hi,

I am using the MCU STM32F439 in my Project. We are using I2C which connect other slaves with 5V logical level.

But the STM32F439 says the I2C port in the STM MCU is not a 'true OPEN Drain' port. Can connect an 5V external pull ups to the STM MCU's I2C Port. Will that damage the internal circuitry(like internal PMOS) even after disabling the internal pull ups?

Will the internal pullup circuits be totally disconnected if the internal pull ups in the I2C port is disabled?

Thanks in advance.

Best regards,

A.Mohankumar

2 REPLIES 2
Posted on July 11, 2018 at 22:53

But the STM32F439 says the I2C port in the STM MCU is not a 'true OPEN Drain' port.

Where exactly does it say this?

Which pins?

JW

[EDIT] I have found it in the datasheet:

The SDA and SCL I/O requirements are met with the following restrictions: the SDA and

SCL I/O pins are not “true�? open-drain. When configured as open-drain, the PMOS

connected between the I/O pin and V DD is disabled, but is still present. Refer to

Section 5.3.16: I/O port characteristics for more details on the I2C I/O characteristics.

This is indeed a rather cryptic statement, and I see nothing in the referred IO characteristics which would impose any limitation of using five-volt tolerant pins with 5V pullups in open-drain mode (absolute max states that one should not exceed VDD+4.0V on 5V-tolerant pins, but with the minimum possible VDD of 1.8V this won't happen). And all I2C pins on 'F439 are 5V tolerant (FT).

It still applies that the internal pullup must not be switched on.

I wouldn't be surprised if this is only a blindly copy/pasted statement from DS of parts, which have non-5V-tolerant I2C pins - there,

I may be wrong of course, and it would be nice to hear somebody from ST to comment.

A somewhat related thread, although it does not answer directly this particular question:

https://community.st.com/message/93904

 
STOne-32
ST Employee
Posted on July 13, 2018 at 02:27

Hi ,

you can connect our I2C pins to an external pull-up to 5 Volts bus. All of our I2C pins are 5 Volts tolerant!  However we can not support hot/plug and when VDD is below Min value of 1.8 V as example. So VDD should be present first and then to connect to the 5 Volts bus via external pull-up.

Cheers,

STOne-32