I²C-Pegelwandler zieht niedrige Seite hoch

OP #1965773
Lesenswert?

Hi,

ich verwende den bekannten I²C-Pegelwandler aus der Appnote von Philips 
(z.B. http://ics.nxp.com/support/documents/interface/pdf/an97055.pdf).

Meine 3V-Seite wird von einem normalen LP2950-3.0 Spannungsregler 
versorgt und ist relativ schwach belastet (ein paar 74er, die nicht viel 
zu tun haben).

Mein Problem ist nun, daß die 5V-Seite die 3V-Seite auf 5V zieht.

Ich habe mal die 3V-Seite belastet und so ermittelt, daß der 
Pegelwandler zwischen den Seiten einen Widerstand von nur 2,7 kOhm 
bietet. Ich finde das relativ wenig und frage mich:

1. Muß das so oder hab ich was falschgemacht?

2. Geht mir irgendwas auf der 3V-Seite kaputt? Ich habe da diverse ICs 
die laut Datenblatt ausdrücklich nicht 5V-tolerant sind und nicht zu 
vergessen den Spannungsregler.

Grüße,
André
Angehängte Dateien:
OP #1966942
Lesenswert?

Klaus De lisson schrieb:
> Hast vielleicht bei den FET S und D vertauscht ?

Nee, dann müßte die Library vom Target schon falsch sein, was sie aber 
nicht ist, hab ich eben nochmal überprüft.
Außerdem wäre dann die Isolation zwischen den beiden Seiten vermutlich 
nochmal deutlich schlechter... wenn ich den 3V-Kreis mit etwa 5mA 
belaste, stimmt ja die Spannung und der 5V-Kreis bleibt dabei unberührt.
#1966973
Lesenswert?

nun..  es war ja nur spontane Idee.
Andererseits frage ich mich, ob man die Schaltung überhaupt benötigt.
Da I2C ja mit Pullups arbeitet und nicht aktiv Spannung auf die Leitung 
setzt,
würde ich einfach die Pullups gegen 3,3 laufen lassen.
Auch das 5 V  System wird das dann noch erkennen.

Gruss Klaus

p.s.
und bei deiner Schaltung dürfte die UGS Threshold essentiell sein.
.. hier also die Frage : "richtige Mosfet ?)
#1967192
Lesenswert?

Hmmmm , meine Antwort soll aussehen, wie ein Honigmaul.
Ich hoffe, dass ein Hmmmm dazu reicht.

.. aber
ist es nicht so, dass der I2C doch ein recht einfaches und gemütliches
System ist, welches sich sogar darüber freuen könnte,
wenn die Flanken nicht zu steil sind.

Ich weiss ja jetzt auch nicht , ob du dein Project für dich,
oder für eine kommerzielle Geschichte verwenden willst.

Im privaten Bereich würde ich halt von den Pegelwandlern absehen,
da hier nur zusätzliche fehlerquellen entstehen können.

Dein Text war ja :
"Mein Problem ist nun, daß die 5V-Seite die 3V-Seite auf 5V zieht"

Wie hast du das denn gemessen ?
Wenn das Transmission Gate aktiv wird, muss ja zwangsläufig mal
temporör ne Verbindung entstehen

gruss Klaus
#1967334
Lesenswert?

Hallo,

ich habe auch Probleme mit genau dieser Schaltung. Als FET haben wir 
einen 2N7002.
Mein Problem: gelegentlich kommt das ACK von der 3V-Seite (Slave, grün) 
nicht auf die 5V-Seite (Master, blau) durch. Meistens klappt es aber.

Ich vermute, dass der Prozessor da seltsame Dinge tut, wenn die 
Spannungen auf SCK und SDA nicht ganz eindeutig sind.
Zunächst hatte ich auch das Problem, dass der SCK-Takt immer niedriger 
war als laut Teilerfaktor. Das lag daran, dass der Prozessor den 
Entstör-C an SCK (330pF) als clock-stretching interpretiert hat.
Das wurde durch Entfernung der Cs besser, richtig rund läuft die 
Schnittstelle aber erst, seitdem ich den Pegelwandler entfernt habe.

Mit nur einem Pullup gegen 3,3V kommt aber kein einziger Takt aus dem 
Prozessor (Fujitsu MB96340-Serie), wahrscheinlich ist das für den 
Prozessor wieder dauer-clock-streching.
Wenn zusätzlich der interne Pullup (ca. 50k) vom Prozessor an ist, 
ergibt sich High = 3,5 V, was offenbar für beide Seiten o.k. ist.

Gruß

Paul
Angehängte Dateien:
Gast #1967396
Lesenswert?

Hallo,

die Firma Sparkfun

www.sparkfun.com

bietet einen Logic Level Converter sku: BOB-08745 an. Hiew wird ein 
BSS138 eingesetzt. Schreib doch mal die Leute an, welche Erfahrungen die 
haben ! Die sind hilfsbereit und antworten gerne. Das Board verwenden 
wir in Zusammenhang mit einer I2C Real-Time-Clock und es geht 
fehlerfrei.

Gruß
OP #2031718
Lesenswert?

OMG, epic fail! Habe gerade festgestellt, daß ich ins falsche Fach 
gelangt hab und überall BC857 bestückt habe, wo eigentlich BSN20 sein 
sollten.

Es könnte allerdings sein, daß ich ganz am Anfang die richtigen bestückt 
hatte (die dann aber nicht funktionierten). Ich weiß es nicht, denn ich 
hab keine BSN20 mehr und hab nun BSH108 genommen (die eh bessere Werte 
haben). Jetzt funktionierts super.

Warum es mit den bipolaren PNP tatsächlich einigermaßen funktioniert 
hat, da kann jemand anderes drüber nachdenken. ;) Gute Nacht.

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