Da hast du vollkommen recht, im Prinzip sind es 5 Bussysteme. Alle münden aber un einem zentalren Bus und das ist Plicht. Das ganze soll variabel auf einem Bus aufgebaut werden können.
Da hast du vollkommen recht, im Prinzip sind es 5 Bussysteme. Alle münden aber un einem zentalren Bus und das ist Plicht. Das ganze soll variabel auf einem Bus aufgebaut werden können.
Hallo,
wie oft müssen die Sensoren abgefragt werden und mit welcher Frequenz soll SCL getaktet werden?
Die Auslastung des Busses sollte im Voraus berechnet werden.
Bei zu hoher Abtastraten oder zu vielen Slaves wird der Bus zum Flaschenhals.
Wie viele Sensoren sollen maximal am Bus hängen?
Und noch viel wichtiger: Wie lange wird die Busleitung (??? cm).
Grüße, Bernhard
"Im Leben geht es nicht darum, gute Karten zu haben, sondern auch mit einem schlechten Blatt gut zu spielen." R.L. Stevenson
Hallo,
die Sensorden befinen sich auf einem Stück von ca 20cm Busleitung.
Die Clock soll im Optialfall mit 400kHz getacktet sein. (mindestens 100kHz)
Das ganze wurde schon einmal grob berechntet, der Bus ist auf alle fälle nicht der Flaschenhals. Das Problem ist momentan nur die Addressierung
finde auch, dass der Multiplexer die einfachere Variante ist ... und ganz nebenbei: die mit den wenigsten I2C BussenWenn Du mit dem Controller die Maskierung übernehmen willst, brauchst Du einen, der 2 I2C's zur Verfügung stellt. An einen kommt der Sensor - denn der kann ja nur I2C und über den zweiten kommuniert der Controller als Slave. Das ist also weit ENTFERNT VON EINEM I2C. Und ja, es müssen in diesem Szenario 2 getrennt Busse pro Controller sein, da Du ja sonst wieder in das Adress-Dilema kommst, wenn alle Sensoren am gleichen Bus hängen. Bei Verwendung eines Multiplexers hängen alle am GLEICHEN I2C ... welche Lösung ist denn da jetzt wohl näher an Deiner Ausgangs-Frage-Stellung?
Um nicht einen Controller mit zwei I2C Bussen verwenden zu müssen, könnte man die Controller untereinander auch über einen anderen Bus wie z. B. 1Wire kommunizieren lassen ... allerdings brauchst Du dann am Ende der Signalkette wieder einen Controller, der aus 1Wire I2C macht:
Sensor --> I2C --> Slave-Controller --> 1Wire -|
Sensor --> I2C --> Slave-Controller --> 1Wire --> Master-Controller --> I2C --> Rest Deines Projektes
Sensor --> I2C --> Slave-Controller --> 1Wire -|
NXP hat eine ganze Familie von I2C Switches und Multiplexer. Die sind z.B. dafür gemacht, mehrere Devices mit gleichen Adressen an einem Master zu betreiben
MfG Klebwax
Strom fließt auch durch krumme Drähte !
Lesezeichen