Bidirektional reicht nicht, die I2C Leitungen sind Open Collector und werden in beiden Richtungen getrieben. Deine beiden Beispiele sind für I2C gänzlich ungeeignet.
Versuch einfach mal, ob dein ATmega128 mit einem I2C Bus klarkommt, bei dem die Pullups an 3,3V gehen. Das ist die einfachste (und kleinste) Lösung.
MfG Klebwax
Lesezeichen