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
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 :(
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.
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
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...
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
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?
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?
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
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
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.
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
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.
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?
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
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
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.
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
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...
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
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".
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"
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
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"
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.
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
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?
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.
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