Pegelwandler 3,3-5V an I2C

Gast #2338169
Lesenswert?

Hallo Leute,
wir wollen 3,3V-Geräte über einen Pegelwandler (MOD-1003 von 'embedded 
adventures) an einem 5V-AVR betreiben (I2C/TWI). Eines dieser Geräte 
funktioniert (ohne Probleme?) direkt am 5V-I2C-Bus. I2C-start 
funktioniert und er bekommt ein ACK. Hinter dem Pegelwandler 
funktioniert das aber nicht. Wir haben das mit einem logic-level-sniffer 
überprüft, die Übersetzung scheint zu funktionieren (sieht zumindest in 
der Grafik gleich aus). Anfangs hatten wir einen zu hohen Low-Pegel 
vermutet und pull-downs an SDA und SCL gelegt, aber es gab keine 
Veränderung (immer ein NACK).
So, wir sind etwas überfragt, die Pegel scheinen zu stimmen, der 
Pegelwandler scheint auch korrekt zu 'übersetzen', zumindest ein Gerät 
ist über die 5V-Seite ansprechbar und antwortet auch, aber eben nicht 
hinter dem Pegelwandler. Woran kann das liegen?
(Firma: HELMGENS Engineering LLC) #2338180
Lesenswert?

Hallo PePo,

ich kenne den Pegelwandler jetzt nicht und kann auch kein Datenblatt 
finden.
Aber ist der Bidirectional und wenn ja - "Auto-Bidirectional"???
Ich hatte mal einen von TI, der hatte einen Eingan, mit dem man die 
Richtung steuern konnte/musste....

LG aus Addis Ababa

Klaus
(Firma: HELMGENS Engineering LLC) #2338185
Lesenswert?

...einen hab ich noch....

Hast Du mal das Timing geprueft....lege mal "beide Seiten" uebereinander 
am Logic-Analyzer...
Also Primaere Seite 2 Kanaele und Sekundaere Seite 2 weitere Kanaele und 
dann schau mal....

sind dort Verzoegerungen? Beides pruefen SDA und SCK....


Und abermals einen LG aus Addis
Gast #2338215
Lesenswert?

Man könnte ohne Pegelwandler auskommen. Wenn ich die Anforderung richtig 
verstehe, sind alle Slaves 3,3V Geräte. Nur der AVR liegt an 5V. Wenn 
seine Eingänge auch bei der Verwendung mit I2C TTL kompatibel sind, 
sollten sie ein High bei 2,4V erkennen. Man könnte also die Pullups von 
SDA und SCL auf 3,3V legen und der Bus sollte ohne Pegelwandler 
funktionieren.

MfG Klaus
Gast #2338334
Lesenswert?

Vielen Dank für die Anregungen!
- Pegelwandler ist bidirektional und bringt auch gleich 3,3V mit
http://www.embeddedadventures.com/datasheets/MOD-1003_hw_v1_1.pdf
laut Datenblatt: anschließen und um nichts weiter kümmern (mmhhh..)
- Oszi wäre die nächste Anschaffung
- Pegel liegen übereinander (s. Anhang, vielleicht seht Ihr da mehr als 
wir), so timing scheint zu stimmen

Wir haben ein bißchen Code gebastelt, womit er alle I2C Adressen 
nacheinander abfragt. Manchmal erkennt er auch einen oder zwei der sechs 
Adressen. Aber das ist völlig wahllos.

- ohne level shifter wird das wohl schwierig, da wir auch noch ein 5V 
Gerät am selben Bus betreiben wollen; aber wir wären erst mal froh, wenn 
wir das eine 3,3V Gerät zum Antworten bringen.

Freundlichst PePo
Angehängte Dateien:
Gast #2338602
Lesenswert?

PePo schrieb:
> - ohne level shifter wird das wohl schwierig, da wir auch noch ein 5V
> Gerät am selben Bus betreiben wollen

Wenn auch das ein High bei weniger als 3V erkennt, sollte auch das 
gehen. Bei vielen Busteilnehmern sollte man die Pullups an die untere 
Grenze dimensionieren.

MfG Klaus
Gast #2339302
Lesenswert?

Hallo,
der Pegelwandler war das Problem. Wenn der -- egal auf welchem der 4 
Kanäle -- Kontakt mit SCLK hat, bringt er den Bus durcheinander. Egal, 
ob da ein 3,3V Gerät dran ist oder SDA angeschlossen ist oder nicht. Wir 
nutzen den nun als Konstantspannungsquelle und die Geräte laufen auch 
alle am Bus.
Vielen Dank noch mal für die Anregungen!
MfG

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