I2c problem on LPC2148

armi2clpcpullup

I have problem with getting my LPC2148 to work with i2c devices. LPC is on 3.3v bus and i2c devices are on 5v bus with pull-up of 3k6 ohm on either 3.3v or 5v (jumper selection).
What im experiencing is that measuring SCL with oscilloscope i see that frequency of the square signal is ok (5us high and 5us lower).

The problem is that low is not really low. High level is 3.0v and Low is 2.2v. Well of course communication is not working …

i2c level

Schematic is quite simple. uC is connected to i2c devices with Rp on pin2 of "jumper selection" High. pin 1 is 5v and pin3 is 3.3v. No matter what i do with jumper i get the same signal output. What am i doing wrong ?

Best Answer

  • Check you pull up resistor value. It is really 3k6 or 3R6 by mistake.
  • Is the Pin of your MCU configured properly ( alternate function, no internal pull-ups enabled ?)
  • Is there a short to Vcc somewhere on the board ?
  • Are the MCU pin 5V complient ?
  • Are you using internal i2c module of the mcu? because open drain pins are necessary here.