Forum: Mikrocontroller und Digitale Elektronik I2C,SMB im Mix als Multimaster


von Stefan N. (mainframesk)


Lesenswert?

Hallo,

und zwar habe ich folgendes vor. Ich würde gerne zwei getrennte SMB 
miteinander verbinden. Das sind 2 Akkus die mit ihrem Laderegler 
kommunizieren wobei der Akku Master ist.
Die Verbindung soll IIC sein und die beiden SMBs miteinander verbinden, 
wobei zusätzlich noch ein Master dazukommt der die Akku-Master auslesen 
können soll.
Im Bus befinden sich auch noch mehrere Slave, wie z.B. die Laderegler.
Habt ihr nen Tip, Erfahrung und geht das überhaupt gut mit einem 
Multimastersystem, gemixt aus SMB und IIC?

Viele Grüße und Danke fürs Antworten.

von Route_66 (Gast)


Lesenswert?

Aus Erfahrung sage ich: Dem Inschenöör is nix zu schwöör! D.h. machbar 
ist meist Alles - Deine Kenntnisse und Fähigkeiten sind immer das 
begrenzenden Element. Nun kenne ich diese nicht, und kann nur auf Grund 
deiner spärlichen Informationen und Formulierungen raten. Aber was immer 
gilt: ohne richtige Frage bekommst Du nur ...Antworten.

von Guido Körber (Gast)


Lesenswert?

Das geht nicht, da die Laderegler und Akkus feste Adressen haben und 
zwei mal die gleiche Adresse belegen ist ja wohl ungesund, oder?

von Stefan N. (mainframesk)


Lesenswert?

Ups.... dann werd ich mich mal etwas genauer fassen ohne dabei eine 
Skizze verwenden zu müssen.

Ich habe zwei getrennte SMB mit jeweils einem Master (Akku) und einem 
Slave (Laderegler). Diese beiden Busse möchte ich mit einem zusätzlichen 
Master (FPGA,IC,...) über IIC verbinden, da die Infos aus dem Akku noch 
einer höheren Instanz zugeführt werden soll.
Meine Frage war:
Hat schon jemand Erfahrung gesammelt ob ein SMB und IIC mit mehreren 
Mastern als Multimaster-System zusammenschaltbar ist.
(Mal abgesehen von Pegelanpassungen)
Vielleicht könnte ich ja gewisse Fehler vermeiden. Muss ebenfalls erst 
mal prüfen ob alle Master auch Multimaster können.

Viele Grüße

von Guido Körber (Gast)


Lesenswert?

Nochmal: Die Akkus und Laderegler haben festgelegte Adressen, die von 
der "Smart Battery Specification" definiert sind. Wenn Du also die 
beiden Busse miteinander verbindest hast Du zwei Akkus und zwei 
Laderegler, die jeweils auf der gleichen Adresse liegen. Das hat nichts 
mit Multimaster zu tun, sondern mit Adresskollision.

Der abfragende Master muss zwei getrennte SMBs haben, sonst geht da 
nichts.

Kannst mir das durchaus glauben, habe gerade einen SMB Ladecontroller 
mit USB Interface entwickelt...

von Stefan N. (mainframesk)


Lesenswert?

Sorry... war der vorherige Eintrag war 12:08 und ich 12:11...

Für mich stellt sich als Lösung, um die beiden Ladekreise zu trennen, 
ein IIC Mux aus der PCA954x -Reihe dar. Sollte eigentlich funktionieren. 
Hoffentlich spielt dann SMB und IIC zusammen.

von chris (Gast)


Lesenswert?

Ev. wenn du eines rumliegen hast, kannst auch ein 4066 nemen, um zwei
Busse an einen Master anzuschließen.

von Guido Körber (Gast)


Lesenswert?

Nö, SMB und IIC spielen nicht unbedingt zusammen, es gibt auf dem SMB 
ein paar Details die mit normalen IIC Mastern nicht unbedingt 
zusammenspielen.

Der IIC Muxer sollte allerdings schon hinhauen.

von chris (Gast)


Lesenswert?

Achtung, die Levels von SMB sowie I2C sind unterschiedlich, lieber 
analogen muxer nehmen.

von Guido Körber (Gast)


Lesenswert?

Mal ganz dumm gefragt: Was soll das denn werden?

Wie gesagt habe ich ja gerade damit zu tun gehabt, vielleicht habe ich 
die Lösung ja im Schubfach.

von Stefan N. (mainframesk)


Lesenswert?

Ich hab zwei getrennte Systeme die jeweils einen Laderegler besitzen und 
einen Akku. Dazwischen ist weniger als 1m I2C Strippe. Das System mit 
FPGA ist Host und das andere Slave. Der FPGA soll seinen eigenen 
Akkustatus auslesen und den Slave steuern und auch dessen Akkustatus 
auslesen. Die Akkus und Laderegler sind komplett gleich.

von Guido Körber (Gast)


Lesenswert?

OK, nicht meine Baustelle, bei mir hängt meist alles irgendwo am USB.

Wie gesagt, dass mit dem Muxer könnte klappen, aber auf jeden Fall das 
I2C Protokoll mal im Detail mit SMB vergleichen, es gibt da ein paar 
kleine aber signifikante Unterschiede.

von Stefan N. (mainframesk)


Lesenswert?

Naja... nicht so schlimm :), trotzdem vielen Dank.

Mittlerweile kann ich schon was senden. Leider macht die Batterie aber 
nicht das was ich will.
Gesendet wird im Modus "Repeated Start Condition". Mein Master (FPGA) 
schickt die Adresse der Batterie und das Write Bit. Es kommt ein akn 
zurück. Jetzt wird aber die SCL Leitung von der Batterie auf Low gezogen 
und nix geht mehr. Vielleicht irgendeine Timing Geschichte, Clock 
Stretching oder ähnliches.
Vielleicht hast du ja schon ähnliches erlebt.

Gruß

von Guido Körber (Gast)


Lesenswert?

Ja, das ist der Clock Stretching Handshake, musst halt warten bis SCL 
wieder auf High geht. Bei SMB kann dass bei jedem Takt passieren.

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.