MCP23017 Unterschiedliche Spannungen

Gast #5046230
Lesenswert?

Hallo,

Ich möchte mit MCP23017 Status von 8 Taster auslesen. ich habe 2 
Stromkreise 3.3V und 5V.

1) Darf ich MCP23017 mit der Spannng 3.3V betreiben (VSS/RESET), aber 
als Prüfung ob Taster aktiviert ist 5V vom den anderen Stromkreis an die 
GP Ports anlegen?

2) Oder besser MCP23017 mit der Spannung 5V betreiben, 5V geht durch die 
Taster an GB Ports? Man muss aber beachten, dass MCP23017 als Slave 
Befehle von einem anderen Gerät (STM32F103 - I2C Kommunikation), der 
wieder nur 3.3V betrieben werden kann. Geht die I2C 3.3V <-> 5.5V 
Kommunikation?

Bin leider nicht so erfahren im Lesen von Datenblätter. Gibt es eine 
gute Einführung um alle Begriffe zu verstehen?

Danke im Vorraus.
Gast #5046983
Lesenswert?

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).

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren