Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Erich > > Ich hattes das Problem auch mal. Damals habe ich noch keine C-Control verwendet sondern der I2C > Master war auf einer PC-Interface Karte. Ich denke nur über kleinere Widerstände lässt sich das > Problem nicht lösen. Der I2C-Bus ist nicht für grosse Distanzen gemacht und kann keine > Übertragungsfehler entdecken oder korrigieren. > > Meine Anwendung war/ist nicht sehr zeitkritisch. Ich hatte eigentlich nur folgende Komponenten > angeschlossen: > - Schalter/Taster > - Anzeigeelemente (Led's) > - Relais > > Ich habe es damals wie folgt gelöst: > > Die Empfangsroutine für den I2C-Bus hat die gleichen Daten mehrfach gelesen. Erst wenn min. zwei > nacheinanderfolgende Bytes den gleichen Wert aufwiesen, wurden sie als gültige Daten akzeptiert. > > Beim Senden war es etwas komplizierter: Zuerst wurde das gewünschte Byte an den I2C Baustein > übertragen und danach über die Empfangsroutine gleich wieder eingelesen. Falls der gesendete > Wert nicht dem empfangenen Wert entsprach, so wurde das Byte nochmals an den Baustein > übertragen. Falls nötig wurde dies mehrfach wiederholt. > > Danach hatte ich nie mehr Probleme mit der Übertragung. Viele Relais sind genügend träge, so > dass man problemlos ein paar falsche Bits korrigieren kann, ohne dass ein angeschlossenes > Gerät bereits darauf reagiert. Ok, das Verfahren lässt sich sicher noch optimieren und ein > 100%-iger Schutz ist es auch nicht. > > Meine Software hat damals gezählt wie oft solche Fehler auftreten. Während ca. 2-3 Stunden (es > handelt sich da um eine Theatersaalsteuerung) gab es so um die 2-10 Übertragungsfehler, die etwas > ungewolltes (z.B. Vorhang schliessen) bewirkt hätten. > > Inzwischen habe ich es aber anders gelöst. die I2C Komponenten sind sehr nahe an der CControl > (< 1m). Grössere Strecken überbrücke ich mit dem CAN-Bus. Dazu gibt es 3 Schaltschränke mit > je einer C-Control-Station und sehr viel I/O über I2C. > > Meine erste Lösung funktioniert gut für I/O Bausteine aber für Speicher, D/A-Wandler und viele > andere Bausteine sowie zeitkritische Anwendungen klappt das nicht. > > Mich würde es interessieren, was andere so für Erfahrungen mit dem I2C-Bus gemacht haben? > > Gruss > Christian > > >