2018-07-11 02:49 AM
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
2018-07-11 01:53 PM
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 PMOSconnected between the I/O pin and V DD is disabled, but is still present. Refer toSection 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:
2018-07-12 05:27 PM
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