Der 89C51ed2 hat keine Hardwareunterstüzung für den I2C-Bus.
Du kannst den Bus aber in Software nachbilden.
Dazu benutzt du einfach zwei freie Controllerpins als SDA und SCL.
Ich habe mal etwas geschrieben um I2C-Slaves an einen solchen Controller anschließen zu können. Ist aber in Assembler geschrieben.
Und es sind eigentlich bloß Codschnipsel um Start- und Stop-bedingungen zu erzeugen, Daten zu senden und zu empfangen. Um damit den LM75 ansprechen zu können mußt du die "Schnipsel" in der entsprechenden Reihenfolge aufrufen.
Fals du trozdem interesse daran hast meld dich bei mir.