1
\$\begingroup\$

I use this logic level converter for I2C.

What would happen if the user programms the pin of the microcontroller on the low side accidentally as a "normal" output and the pin on the high side as an input or in I2C mode? Wouldn't this produce a short circuit through the body diode when the output becomes high? Can you think of a combination between low and high side beeing attached to a microcontroller that could produce a short circuit?

enter image description here

\$\endgroup\$
2
  • 2
    \$\begingroup\$ an input would be high impedance ... configuring HV1 as input would put it into a HI-Z state \$\endgroup\$
    – jsotola
    Commented Jan 16, 2023 at 3:53
  • 1
    \$\begingroup\$ Yes, if both sides are configured as outputs, and LV (as a "normal" push-pull) drives high while HV drives low, then a "lot" of current will flow through the MOSFET body diode. \$\endgroup\$
    – brhans
    Commented Jan 16, 2023 at 4:57

1 Answer 1

0
\$\begingroup\$

CMOS inputs have a very high impedance, so this case would be harmless. (In fact, when you know that none of the I²C slaves implements clock stretching, the SCL line is unidirectional, and you could configure the master's SCL output as a push/pull output.)

You can get problems when you connect an output that is driving high to another output that is driving low.

With this level shifter, this could happen either through the body diode, or when LV1 is sufficiently below the gate voltage to activate the transistor.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.