Hallo,
die Angaben, die Du suchst sind meist in einer Tabelle im Datenblatt.
Dabei muss man zwischen
- "Absolut Maximum Ratings" : Sachen, die das Bauteil überlebt, ohne
Rücksicht darauf, was es währenddessen tut oder was man machen muss,
damit es sich wieder wie beschrieben verhält.
- "Operating Conditions" : Das Bauteil funktioniert wie beschrieben.
unterscheiden.
Wir suchen also nach Eingangspegel für Low und High....
Low 0...0,2*VDD
High 0,8*VDD...VDD
Die Adresseingänge für I2C spielen ja gerade keine Rolle, da die
vermutlich auf feste Pegel gelegt werden.
Beim Takt, gibt es noch eine Kleinigkeit in der Tabelle : bei 3,3 V ist
nicht der volle Takt möglich, sondern nur 400 kHz.
Also mit 5V betreiben und 3,3 V Signale auswerten : sogar ohne
worst-case-Betrachtung der Toleranzen kommt das Eingangssignal nicht
über die 4 Volt, die für eine sichere Erkennung des High-Pegels
gefordert werden.
Mit 3,3 V betreiben und 5 V Signale direkt auswerten : geht auch nicht,
weil Maximalwert für High ist VDD.
Mit 3,3 V betreiben, Pullups nach 3,3 V an den Eingängen und Dioden von
Eingang nach Signal (mit Anode zum Eingang hin) : geht auch nicht, da
selbst wenn Signal bis 0 Volt runter geht für Low, über die Diode so ca.
0,7 Volt am Eingangspin übrig bleiben. Und das ist mehr als die 0,66
Volt, die ein Low maximal haben sollte.
Mit 3,3 V betreiben, Pullups nach 3,3 Volt und Open-Collector-Ausgänge
eines vorgeschalteten ICs kann funktionieren.
Mit 5 V betreiben, Pegelwandlung auf I2C Seite : nicht ganz so einfach,
weil die I2C Signale bidirektional sind. Es gibt da eine Schaltung mit
Transistoren, die ich jetzt nicht im Kopf habe. Vorteil wäre, dass nur 2
Signale angepasst werden müssen und das IC den vollen Takt könnte (wenn
die Transistoren hinterher kommen).