2021-02-05 03:24 PM
Hello,
my STM32 is running with 1.8V and is connected via I2C to another chip. The I2C has an level of 3.5V (connected via pullup to 3.5). I now have communication problems. Is there any limitation for maximum voltage for the high level of I2C on STM32 so that that could be the reason for not working?
Best regards
Fabian
2021-02-06 01:28 AM
No MCU, no pins mentioned...
6.3.1 General operating conditions
I/O input voltage
TT_xx I/O: -0.3 .. VDDIOx+0.3 V
2021-02-06 02:06 AM
MCU -> STM32L476RGTx
Pins -> PB8 -> I2C_SCL1 ; PB9 ->I2C_SDA1
Pins -> PB10 -> I2C_SCL2 ; PB11 ->I2C_SDA2
Yes, I know that these pins are five volt tolerant, and according to data sheet everything should be fine.
But maybe I thought there is on some page some note that this combination is not allowed (MCU (1.8V) - I2C (3.5V)). So that there is maybe an upper level for the high threshold which is under 5V when controller is on 1.8V. Pullup resistors by the way have 2.2k pullup resistors.
2021-02-06 03:27 AM
If PB8 are FT pins, drive them as open drain with pullups to 3.5 Volt. Check the levels with a scop if things don't work.