Bräuchte man nicht für mehr als einem I2C Gerät einen Multiplexer, da es wir hier über eine Bus Topologie sprechen? (+Nur eine 0x68 Adresse)
Ich verstehe deine Frage nicht! Befürchte, dass du das wichtigste KO Kriterium unterschlagen hast. Denn dass um 120 Adressen zur Verfügung stehen (ein paar sind reserviert) solltest du wissen. Ansonsten ist ein Ausschlag gebender Punkt der maximale Sink Strom, welcher nicht überschritten werden darf.
Captain Bone Spurs schrieb: > Bräuchte man nicht für mehr als einem I2C Gerät einen Multiplexer, > da es wir hier über eine Bus Topologie sprechen? (+Nur eine 0x68 > Adresse) Beliebig viele. Schliesslich könnte ein device auf dem Bus mehrere 'Schwänze' des Busses umschalten. Da gibt es dann kein limit. Captain Bone Spurs schrieb: > Bräuchte man nicht für mehr als einem I2C Gerät einen Multiplexer, da es > wir hier über eine Bus Topologie sprechen? (+Nur eine 0x68 Adresse) Nein, es sei denn, du hast deine I2C Devices so schlecht ausgewählt, dass mehrere dieselben Adressen tragen. Dann brauchst du halt noch Select-Leitungen bzw. zusätzliche externe Logik wenn die Devices keinen Deselect erlauben.
Den I²C Master kann man auch relativ leicht in Software mit je 2 normalen GPIOs implementieren. Damit liessen sich recht viele Geräte anschließen - selbst wenn die auf eine einzige Adresse festgenagelt sind.
Ich habe schon oft die 0x48er Adresse genommen. Die geht auch.
Jim M. schrieb: > Den I²C Master kann man auch relativ leicht in Software mit je 2 > normalen GPIOs implementieren. Wenn der das Protokoll vollständig umsetzen soll, also insbesondere auch clock-stretching durch die Slaves korrekt berücksichtigen soll, dann ist das nicht mehr so ganz trivial sondern im Gegenteil eine ganz ordentliche Herausforderung.
Und es braucht 2 statt eines Pins.
c-hater schrieb: > > Wenn der das Protokoll vollständig umsetzen soll, also insbesondere auch > clock-stretching durch die Slaves korrekt berücksichtigen soll, dann ist > das nicht mehr so ganz trivial sondern im Gegenteil eine ganz > ordentliche Herausforderung. Ich hatte schon über ein Dutzend verschiedene Slaves. Alle brauchten kein Clock-Stretching. Das ist in der freien Wildbahn eher selten. Mit normalen Slaves kann man aufs Clock-Stretching verzichten und GPIO bitbangen. Dann wählt man eben einen Slave aus, der das nicht macht. Für Standardaufgaben kann man unter vielen Modellen wählen.
Captain Bone Spurs schrieb: > Bräuchte man nicht für mehr als einem I2C Gerät einen Multiplexer Normalerweise nicht, weil es ein Bus ist. Wie viele Teilnehmer am Bus hängen können hängt von vielen Faktoren ab: - Gewählte Übertragungsrate - Die kürzeste erforderliche Flanken-Steilheit der Bus-Teilnehmer - Die "stärke" der Ausgangstreiber vom schwächsten Bus-Teilnhemer - Die Kapazität/Länge der Leitungen Diese Punkte sind in der I²C Spezifikation näher erläutert: https://www.nxp.com/docs/en/user-guide/UM10204.pdf Figure 3 zeigt den typischen Anwendungsfall
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.