I2C,SMB im Mix als Multimaster

OP #1421423
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.
Gast
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.
OP
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
Gast
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...
OP
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.
Gast
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.
Gast
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.
OP
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.
Gast
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.
OP
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ß

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.