Forum: Mikrocontroller und Digitale Elektronik plötzl. Spannungsanstieg bei TCA9548a


von Jürgen (Gast)


Lesenswert?

Hallo,
betreibe an einem Arduino I2C den TCA9548a.
Dieser wird mit 3,3VC-In versorgt.
Da ich diesen auf einer Platine habe werden die an dem MUX 
angeschlossenen I2C-module mit den gleichen 3,3v versorgt.

In dem Mooment wo ich den TCA0548a anstecke, steigt die Spannung von 
3,3V auf 5V an.
ich habe die Verbingen geprüft habe nirgends einen Kurzschluss etc.

was kann das sein?

Ps. die 3.3V bekommt der TCA direkt vom Arduino

Grüße Jürgen

von Jürgen (Gast)


Lesenswert?

Ps.. das mit den 3,§ ist deswegen so dramatisch da ich an dem TCA SHT21 
und BME280 Sensoren habe... diese dürfen nur mit max 3,3V betrieben 
werden
u:u. habe ich deswegen hier schon einige zerstört :(

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Lies mal deine Beschreibung und überlege, welche Informationen da noch 
fehlen könnten...

Wo hast du z.B. 5V im System?
Wie sieht die Versorgung aus?
Und wie steckst du da was an?

Am einfachsten wäre wie üblich ein Schaltplan, die Sprache der 
Elektronik.

: Bearbeitet durch Moderator
von Jürgen (Gast)


Lesenswert?

Ich hoffe es ist einfach nachvollziehbar ohne Schaltplan

Am Adruino habe ich 3,3V sowie 5V... extren habe ich noch ein AC/DC 
Netzteil was auch versch. DC Spannungen liefert von 3,3 bis 24V.

Ist aber eigentlich egal, da der TCA direct seine Versorgungsspannug 
über den Arduino bekommt und hier 3,3V... das kann ich auch messen... 
ich habe auf der Platine auf der der TCA steckt solange 3,3V anliegen 
solange der TCA nicht auf den pfosten steckt. In dem moment wo er drauf 
steckt habe ich sofort 5V

Am TCA sind aktuell nur die Hauptverbindung SCL und SDA vom Arduino 
verbunden


ups... ich habe soeben bemerkt das ich wohl irgendwo auf die SCL-Leitung 
5V bekomme... shit

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Jürgen schrieb:
> Am TCA sind aktuell nur die Hauptverbindung SCL und SDA vom Arduino
> verbunden
Kein GND, keine Vcc?

> Ich hoffe es ist einfach nachvollziehbar ohne Schaltplan
Nein, nicht mal für dich selbst...

: Bearbeitet durch Moderator
von Jürgen (Gast)


Lesenswert?

komisch...
wieso habe ich auf den SDA und SCL Ports des Arduino Mega 2560 4,31 VV 
Spannung?
Ich habe alles abgeschlossen!!!
ich habe hier den blanken MEGA also vorliegen

bei einem zweiten Saint Smart Mega 2560 (der eine ist ein Mega China 
Clone und der andere auch jedoch ein Saint-Smart

beim Saint Smart messe ich 3,96 V
??

wieso?

als Sketch habe ich nur Blink laufen... der Ic" wird also nicht genutzt

von Jürgen (Gast)


Lesenswert?

letzter Post müsste aber nachvollziehbar sein oder?

wenn ich auf dem SDA und SCL Port beider Arduino Megas Spannungen im 
Bereich von ~ 4V messe.,,, wie das?

von Brummbär? (Gast)


Lesenswert?

Ist die Sache so geheim, dass Du keinen Schaltplan liefern kannst, 
sondern immer nur in Prosa eingebettete Informationshappen?

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Weil der Arduino mit 5V läuft. Den Rest machen die Schutzdioden, wenn Du 
die Datenleitungen mit 5V beaufschlagst.

von Jürgen (Gast)


Lesenswert?

Ben B. schrieb:
> Weil der Arduino mit 5V läuft. Den Rest machen die Schutzdioden, wenn Du
> die Datenleitungen mit 5V beaufschlagst.

Bitte um genauere Erklärung

wenn es also normal ist das hier ~ 4v anliegen... ok...

aber wie ist das wenn dann plötzlich am Vc-In des TCA auch 5V anliegen?
ist das auch normal?

Wie schaffe ich es dann das wenn ich an den I2C-Ports SHT Sensoren habe 
und diese nur 3,3V max VC vertragen das diese auch nur ihre 3,3V VC 
bekommen?

von murmeltier (Gast)


Lesenswert?

solange kein Schaltplan vorliegt, werde ich meinen Mittagsschlaf nicht 
unterbrechen!

von Jürgen (Gast)


Angehängte Dateien:

Lesenswert?

hier mal ein Schaltplan

hier sieht man das ich den gleichen 3,3V Anschluss für den TCA verwende 
als auch für das Sensor-Modul... Problem... das Sensor-Modul bekommt 
somit dann 5V auf dem VC-In obwohl eigentlich nur 4´3,3V anliegen 
sollten...
was kann/muss ich hier machen?

weiss nicht ob es genügt den Sensor-Modulen ihre eigen 3,3V spannung zu 
geben... das könnte ich noch da ich ein Netzteil habe was mir seperate 
3,3V gibt... an dem hängt auch der Mega der dort als Versorgungsspannung 
9v bekommt... somit hätten dann auch alle den gleichen GND da nicht 
getrennt

von Jürgen (Gast)


Lesenswert?

murmeltier schrieb:
> solange kein Schaltplan vorliegt, werde ich meinen Mittagsschlaf nicht
> unterbrechen!

siehe oben... habe mir nun fix Fritzing gezogen... hoffe es wird dadurch 
deutlicher

sorry das ich dies nicht gleich machte

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Der Arduino betreibt den I2C-Bus mit 5V.

Der TCAirgendwas besitzt Schutzdioden an den I2C-Pins nach Masse und 
nach Vcc.

Wenn nun die Leitungen des I2C-Bus 5V führen und Vcc nur 3,3V beträgt, 
wird die obere Schutzdiode nach Vcc leitend und es kann ein Strom von 
der I2C-Leitung nach Vcc fließen. Wenn das mehr ist als der 
3,3V-Schaltungsteil benötigt, hebt dieser Strom Vcc an bis die 
Schutzdiode nicht mehr leitet (5V-0.6V Flußspannung).

Edit: Gugel nach Pegelwandler.

: Bearbeitet durch User
von Christian S. (roehrenvorheizer)


Lesenswert?

Hallo,

an SCK und SDA sind doch Pullupwiderstände dran, sofern nicht mit den 
internen Pullups gearbeitet werden soll. Zu welchem + gehen sie?

Wenn der ATmega mit 5V läuft, können auf den Datenleitungen bei 
Programmfehlern 5V erscheinen. Diese kannst Du vor Deinen Sensoren nur 
abfangen, wenn in den Leitungen Widerstände drin sind und Zenerdioden, 
die die Spannung begrenzen.
Und genau über diese Datenleitungen können über die Schutzdioden des 
angeschlossenen Busteilnehmers die 5V zu +3,3V fließen, so daß dort 4,4 
V erscheinen, falls die Quelle dies zuläßt.

Schadensbehaftet lernt man auf die harte Tour....


MfG

von foobar (Gast)


Lesenswert?

Der Arduino Mega 2560 ist nen 5V-Board und hat entsprechend 10k Pull-Ups 
nach 5V an SCL und SDA (RN1).  Die auf 3.3V zu begrenzen (z.B. den RN1 
nach 3V3 zu legen oder die Leitungen mit 20k nach GND zu belasten) mag 
die Peripherie zufriedenstellen, ob der Mega dann aber noch einen 
High-Pegel detektiert, ist Glückssache.

von Jürgen (Gast)


Lesenswert?

Ben B. schrieb:
> Edit: Gugel nach Pegelwandler.

ok... sorry ich bin kein großer Elektrnik-spezíalist
wenn ich einen Schaltplan hätte wie/wo ich was einbauen muss, so kann 
ich das... kein problem. Aber ich müüsste a) wissen welches bauteil ich 
benötige und b( wie es eingebaut werden muss..

so wie ich es grob verstanden habe müsste ich es ja an allen I2c Modulen 
verbauen oder reicht hier einmalig vor dem TCA ? also zw. arduino und 
TCA9548a ?
kann mir das jemand kurz aufzeichnen oder hat jemand einen link dazu?

von Jürgen (Gast)


Lesenswert?

foobar schrieb:
> ob der Mega dann aber noch einen
> High-Pegel detektiert, ist Glückssache.


ok, wie soll man dan n aber am Mega und den dortigen SCL SDA Ports 3,3V 
i2C Sensoren anschliessen? dann müsste ja jeder diese Probleme haben

von Brummbär? (Gast)


Lesenswert?

Jürgen schrieb:
> reicht hier einmalig vor dem TCA ? also zw. arduino und
> TCA9548a ?

Ja
Oder den Arduino auf 3,3V umbauen.

von Michael U. (amiga)


Lesenswert?

Hallo,

Ein 5V Arduino sollte da nahe 5V an SDA und SCK haben, wenn PullUps 
gegen 5V dranhängen, wie es hier normal wäre. Der TCA9548a hat 
5V-tolerante Eingänge und macht damit auch die nötige Pegelwandlung zur 
3,3V Peripherie.

Ich werfe mal die Glaskugel an: auf dem TCA9548a-Board hat der 
Hersteller netterweise (dummerweise...) am SDA/SCK Eingang PullUp gegen 
die 3,3V eingebaut, die gehören in dem Fall aber da nicht hin.

Gruß aus Berlin
Michael

von hinz (Gast)


Lesenswert?

Jürgen schrieb:
> foobar schrieb:
>> ob der Mega dann aber noch einen
>> High-Pegel detektiert, ist Glückssache.
>
> ok, wie soll man dan n aber am Mega und den dortigen SCL SDA Ports 3,3V
> i2C Sensoren anschliessen? dann müsste ja jeder diese Probleme haben

Nö, die anderen verwenden Pegelwandler. Solcherlei gibts für Kleingeld 
im Zehnerpack.

von Jürgen (Gast)


Lesenswert?

Brummbär? schrieb:
> Ja
> Oder den Arduino auf 3,3V umbauen.

das wäre auch eine Idee... aber bei mitrt hängt sehr viel dran.. fast 
alle Pin's sind belegt...incl Ethernetmodul als auch die ganzen 
PWM-pins...
die meisten Module werden vom Netzteil mit Spannung versorgt da ich dort 
den gleichen GND wie am Arduino habe... ich müsste da aber sehr viele 
Teile gegenprüfen was fast einfacher wäre ein Schaltteil einzubauen wenn 
das kein großes hexenwerk ist

habe den conrad um die Ecke müsste nur wissen was...
habe nun im Netz gelesen das welche hier einen levelshifter empfehlen 
und nicht direkt einen pegelwandler... keine ahnung was hier der 
Unterschied ist

von Jürgen (Gast)


Lesenswert?

hinz schrieb:
> Nö, die anderen verwenden Pegelwandler. Solcherlei gibts für Kleingeld
> im Zehnerpack.

ok dann sag mir doch bitte welchen ich benötige... wenn möglich sollte 
es ihn bei Conrad geben da kann ich ihn fix holen

wenn noch jemand da wäre der mir kurz aufzeigt wie das Teil eingebaut 
wird dann bin ich überglücklich...

von hinz (Gast)


Lesenswert?

Jürgen schrieb:
> levelshifter empfehlen
> und nicht direkt einen pegelwandler... keine ahnung was hier der
> Unterschied ist

Englisch vs Deutsch.

von Jürgen (Gast)


Lesenswert?


von Jürgen (Gast)


Lesenswert?

hinz schrieb:
> Englisch vs Deutsch.

guck bitte hier
https://forum.arduino.cc/index.php?topic=366704.0
Post #2
deswegen meine dumme Frage

hier das dotrtige Zitat ==>"Der Pro Mini hat laut Vorgabe "optionale" 
I2C Pullups.

Sind diese vorhanden, darfst du den 3,3V Sensor da nicht anklemmen.
Fehlen diese, sollte das gelingen auch wenn es dann mit den Pegeln knapp 
wird.

Mein Tipp:
Verwende einen Levelshifter."

da ging es zwar um um einen Pro Mini Arduino... aber es ging eben auch 
um das Problem und dort wurde zuerst ein bidirektionaler Pegelwandler 
empfohlen... und dann zum Schluss ein Levelshifter... also scheint 
irgendwo ein unterschied zu sein

von Brummbär? (Gast)


Lesenswert?


von hinz (Gast)


Lesenswert?


von hinz (Gast)


Lesenswert?


von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

> einen levelshifter empfehlen und nicht direkt einen pegelwandler...
atomrofl YMMD!!

von Brummbär? (Gast)


Lesenswert?


von Achim S. (Gast)


Lesenswert?

der TCA9548A, um den es hier geht, ist bereits der Levelshifter (oder 
Pegelwandler), den der TO braucht. Es gibt keinen Grund, warum er einen 
weiteren einsetzen sollte.

Michael U. schrieb:
> Ich werfe mal die Glaskugel an: auf dem TCA9548a-Board hat der
> Hersteller netterweise (dummerweise...) am SDA/SCK Eingang PullUp gegen
> die 3,3V eingebaut, die gehören in dem Fall aber da nicht hin.

das könnte passen. Und es geht sogar dank Google ohne Glaskugel: hier 
das Schaltbild des boards:

https://learn.adafruit.com/assets/27693

Das Modul hat auf der Rückseite Lötbrücken, über die SCA und SDL auf 
10kOhm Pullups gegen Vin gebrückt werden können. Wenn das geschieht, 
werden die 3,3V über die Pullups gegen 5V gezogen und steigen 
entsprechend an.

Also müssen die Lötbrücken in dieser Anwendung geöffnet sein. Die 
Beschriftung auf der Rückseite des boards lautet "cut to disable pullp".

von hinz (Gast)


Lesenswert?

Achim S. schrieb:
> der TCA9548A, um den es hier geht, ist bereits der Levelshifter
> (oder
> Pegelwandler), den der TO braucht. Es gibt keinen Grund, warum er einen
> weiteren einsetzen sollte.

Stimmt:

"Allows Voltage-Level Translation Between 1.8-V,
2.5-V, 3.3-V, and 5-V Buses"

von Roland F. (rhf)


Lesenswert?

Hallo,
ist es richtig das die Adressleitungen des Bausteins "in der Luft 
hängen"?

rhf

von Michael U. (amiga)


Lesenswert?

Hallo,

Achim S. schrieb:
> das könnte passen. Und es geht sogar dank Google ohne Glaskugel: hier
> das Schaltbild des boards:

ich hatte nur kurz ins Datenblatt geschaut, weil ich den IC nicht 
kannte.
Zum Schaltplan suchen hatte ich ehrlich gesagt keine Lust, das hätte ja 
auch einer der Poster zuvor schon machen können.

Danke Dir aber, ich merke mir das IC mal, falls ich sowas mal suche.

Gruß aus Berlin
Michael

von hinz (Gast)


Lesenswert?

Roland F. schrieb:
> Hallo,
> ist es richtig das die Adressleitungen des Bausteins "in der Luft
> hängen"?

Nein:

"Address input 0. Connect directly to VCC or ground"

von Achim S. (Gast)


Lesenswert?

Roland F. schrieb:
> Hallo,
> ist es richtig das die Adressleitungen des Bausteins "in der Luft
> hängen"?

wirf doch einfach mal einen Blick in das Schaltbild des boards, das ich 
dir oben verlinkt habe. Die Adressleitungen hängen nicht in der Luft, 
die haben auf deinem board ein definiertes Potential.

von Jürgen (Gast)


Lesenswert?

Achim S. schrieb:
> Das Modul hat auf der Rückseite Lötbrücken, über die SCA und SDL auf
> 10kOhm Pullups gegen Vin gebrückt werden können. Wenn das geschieht,
> werden die 3,3V über die Pullups gegen 5V gezogen und steigen
> entsprechend an.
>
> Also müssen die Lötbrücken in dieser Anwendung geöffnet sein. Die
> Beschriftung auf der Rückseite des boards lautet "cut to disable pullp".

wow... sorry
war nicht da und soeben beim Conrad... anscheinend mein Glückstag mit 
Euch und dem Conrad-Verkäufer
er meinte

Nehme zwei Relais, schalte damit beide kanäle (SDA, SCL) nach ca 1 oder 
2 Sekunden nach dem Start des Arduinos so vermeidet man schonmal das 
beim Hochfahren des Arduinos die 5V auf die Kanäle kommen.
Dann soll ich im Programm den SDA und SCL Pin des Megas auf 3,3V 
setzen... das kann man wohl in der Setup-routine
somit wäre das Problem gelöst

Die Setup-Routine reicht deshalb nicht aus, da beim Booten des Arduinos 
stets ganz kurz die 5V auf den SDA und SCL Kanal kommen und das reicht 
halt um meine sensoren zu zerstören


Deine Version mit den Lötbrücken und diese zu entfernen wäre wohl am 
leichtesten und saubersten...
das versuche ich gleich mal

Vielen Dank.. melde mich dann bei Erfolg

von Jürgen (Gast)


Lesenswert?

Achim S. schrieb:
> lso müssen die Lötbrücken in dieser Anwendung geöffnet sein. Die
> Beschriftung auf der Rückseite des boards lautet "cut to disable pullp".

das Board habe ich leider nicht... habe nur einen billigen 
china-Clone... das müsste mit dem doch auch gehen oder?

welche soll ich dann hier entfernen?
ich habe das
https://www.ebay.de/itm/ZPA9548A-I2C-IIC-Multiplexer-Breakout-Board-8-Kanal-Erweiterungsplatine-ZP/123583316206?_trkparms=aid%3D555018%26algo%3DPL.SIM%26ao%3D2%26asc%3D20160908110712%26meid%3D53978fd5072b488282b5ac80bf6909a7%26pid%3D100677%26rk%3D2%26rkt%3D30%26sd%3D172419916831%26itm%3D123583316206&_trksid=p2385738.c100677.m4598

von Manfred (Gast)


Angehängte Dateien:

Lesenswert?

Jürgen schrieb:
> hier mal ein Schaltplan

Das ist kein Schaltplan, sondern Malerei aus dem Kindergarten.

hinz schrieb:
>> ist bereits der Levelshifter (oder Pegelwandler)
> Stimmt:
> "Allows Voltage-Level Translation Between 1.8-V,
> 2.5-V, 3.3-V, and 5-V Buses"

Wenn ich das richtig sehe, gehört der TCA9548 mit der selben Spannung 
wie der µC versorgt, also 5 Volt.

Die 3,3V ergeben sich dann mit den Pullups auf dessen Ausgängen?

von Achim S. (Gast)


Lesenswert?

Jürgen schrieb:
> das Board habe ich leider nicht... habe nur einen billigen
> china-Clone... das müsste mit dem doch auch gehen oder?

Da musst du dir die Rückseite der Platine anschauen, die auf den ebay 
Fotos nicht zu sehen ist. Folge den Leitungen SDA und SCL und schau, 
wo/wie die mit den Pullups verbunden sind. Trenne diese Verbindung auf - 
ohne dabei die Verbindung zum IC zu unterbrechen.

Manfred schrieb:
> Wenn ich das richtig sehe, gehört der TCA9548 mit der selben Spannung
> wie der µC versorgt, also 5 Volt.
>
> Die 3,3V ergeben sich dann mit den Pullups auf dessen Ausgängen?

Wenn man ihn mit 5V versorgt, dann gehen bis zu 3,6V an den IOs durch 
(siehe Switch Output voltage in Tabelle 7.5 des Datenblatts). Wenn man 
die Versorgung auf 3,3V legt, dann lassen die IOs nur bis zu 2,8V durch, 
der volle Pegel wird dann jeweils durch die externen Pullups erreicht.

von Einer K. (Gast)


Lesenswert?

Achim S. schrieb:
> Trenne diese Verbindung auf -
> ohne dabei die Verbindung zum IC zu unterbrechen.
Geht nicht. (habe das Board vor mir)
Die Pullup müssten in dem Fall runter

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.