Bidirektionale Pegelwandlung für I2C 3V3<->5V

Gast #4678543
Hi,

ich würde gerne für eine I2C Anwendung 3.3V von einem Raspberry Pi auf 
5V bidirektional wandeln, auf Transistorbasis.

BSS138 ist ein heißer Kandidat, der dazu verwendet oft verwendet wird.

Kennt ihr eventuell Alternativen zum BSS138, welche der heimische Conrad 
vielleicht vor Ort hat?

Maximale Geschwindigkeit auf dem Bus sind 1MHz.

Viele Grüße
Gast #4678560
Also 1N4148 gibt's dort allemal :-)

Ich würd mich ja mit einem vergleichbaren N-Channel Mode Field Effect 
Transistor zufrieden geben.

Unabhängig davon, dass ich den BSS138 bestellen werde hätte ich hald 
gerne vorübergehend etwas vergleichbares, mit dem ich derweil arbeiten 
kann.

Viele Grüße
#4678683
Der BSS138 ist halt gängiger als seine Alternativen. Falls beim C 
irgendeine solche Alternative herumliegt, lässt sich nicht vorhersagen, 
welche.

Du brauchst einen Transistor, der bei 3,3 V gut durchschaltet, d.h., 
VGS(th) sollte nicht größer als ca. 1,5 V sein.
Gast #4678699
Ralf schrieb:
> ich hald
> gerne vorübergehend etwas vergleichbares, mit dem ich derweil arbeiten
> kann.

In der Elektrobucht gibts reichlich Levelschifter für ca 3Euronen, mit 
je 4 solcher Transistoren.
Die reichen doch sicherlich als Übergangslösung.
Gast #4679197
Also der BS170 funktioniert wunderbar!

Kann ich - zumindest bis 1MHz getestet - als perfekten I2C Wandler 
empfehlen. Kommt dankbarerweise auch im bedrahteten TO92 und nicht im 
SOT23 Gehäuse
#4679361
Ralf schrieb:
> Also der BS170 funktioniert wunderbar!

V_GS(th) Maximum: 3 Volt, damit eher ungeeignet - 1mA ist für typische 
I²C Pullups zu wenig.

Den müsste man vorher ausmessen - bei 2.1 (typisch) bis 0.8 V_GSth(min) 
würde das schon funktionieren. Man muss halt gleich 5 kaufen damit einer 
halbwegs sicher funktioniert - und hoffen das nicht die ganze Charge am 
oberen Rand des Datenblatts liegt.
#4679487
Ich glaube der 2n7002 ist ziemlich vergleichbar und bei conrad 
verfügbar. Ich benutze den jetzt sogar lieber als meine BSS138 weil ich 
mir da mal viel von bei einer großen online Plattform besorgt habe.

Ne nicht transistorbasierte alternative wäre evtl. ein TXS0104. Der kann 
2 MBPs in open drain applikationen.
Gast #4679920
Danke für die Tips.

@Jim: Mag sein, aber er lief ohne Fehler über Stunden auf 1MHz I2C.

@Thomas: Die Teile hab ich schon gesehen, die Pullups von 10K sind für 
1MHz aber falsch dimensioniert, die müsste man austauschen. Dann kann 
mans auch gleich direkt selber machen.

Fazit: Ich werd's mittelfristig gegen BSS138 austauschen, derweil 
erfüllt der BS170 seinen Zweck. Danke für die Tips!
Gast #4682835
Ralf schrieb:
> ich würde gerne für eine I2C Anwendung 3.3V von einem Raspberry Pi auf
> 5V bidirektional wandeln, auf Transistorbasis.
Eine Suche im Internet findet jede Menge, auch mit bipolaren 
Transistoren.

Ich tue es mir nicht an, der TXS0108E ist fertige Arbeit. Vom Chinesen 
als fertiges Platinchen unter 70 cent: 
http://www.aliexpress.com/item/Free-shipping-3-3V-5V-TXS0108E-8-Channel-Logic-Level-Converter-Convert-TTL-Bi-directional-Mutual/32413364906.html
Gast #5290816
Rufus Τ. F. schrieb:
> NXP stellt dafür den PCA9517 her. Warum man sich das dann mühsam diskret
> zusammenfrickeln muss, entzieht sich etwas meinem Verständnis.
>
> http://www.nxp.com/documents/data_sheet/PCA9517.pdf

Ist sicher die stabilste Variante. Der "Trick" mit dem Mosfet ist 
zumindest für 3.3 V Systeme voll funktionsfähig (Consumer)! Wird die 
Spannung noch kleiner, ist ein integrierter Pegelwandler natürlich 
sinnvoll.

Der IC ist natürlich teurer, aber dafür auch gleich ein Repeater, und 
vor allem unter allen Umständen (welche dann natürlich spezifiziert 
sind) funktionsfähig. Beim Mosfet ist Vth stark temperaturabhängig. 
Könnte bei Bastelprojekten welche nicht nur bei Raumtemperatur verwendet 
werden auf die Füße fallen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.