I2C EEPROM über lange Leitungen?

Gast #1900447
Lesenswert?

Hallo Forum,
Ich habe die Aufgabenstellung ein I2C-EEPROM zu verwenden. Mir ist es 
bereits gelungen, in das EEPROM zu schreiben und aus ihm zu lesen. 
Funktioniert einwandfrei. Nun muss ich aber das EEPROM abseits der 
uC-Platine platzieren. Es werden so ca. 500mm 12pol. Flachbandkabel 
dazwischen sein. Das Blöde ist nur, dass auf einigen Leitungen des 
Kabels die Ausgänge eines LED-Treibers an LEDs geführt werden. Der 
Treiber arbeitet mit einer Frequenz von ca. 200kHz und der Strom, der da 
in Summe drüber geht, beträgt um die 2A (bei ca. 35V Flussspannung) - 
das Ganze natürlich PWM-dimmbar (mit ca. 500Hz).
Jetzt habe ich natürlich starke Bedenken, dass die LED-Treiber-Leitungen 
meine I2C-Datenleitung stören. Was kann ich tun, um Störungen zu 
vermeiden? Gibt es irgendwelche Zusatzbeschaltungen, um den I2C-Bus 
unempfindlicher gegen Störungen zu machen? Was macht man bei so einem 
Problem?

Vielen Dank für eure Tipps!!!


mfg
Andy
Gast #1900460
Lesenswert?

Probiers erstmal

Andy schrieb:
> Hallo Forum,
> Ich habe die Aufgabenstellung ein I2C-EEPROM zu verwenden.

In welchem Umfeld? Schule, Hobby Berufliche ...

> Mir ist es
> bereits gelungen, in das EEPROM zu schreiben und aus ihm zu lesen.
> Funktioniert einwandfrei.

Da wird der Rest einfach.

> Nun muss ich aber das EEPROM abseits der
> uC-Platine platzieren. Es werden so ca. 500mm 12pol. Flachbandkabel
> dazwischen sein.

Versuch erstmal nur mit Eeprom.

> Das Blöde ist nur, dass auf einigen Leitungen des
> Kabels die Ausgänge eines LED-Treibers an LEDs geführt werden. Der
> Treiber arbeitet mit einer Frequenz von ca. 200kHz und der Strom, der da
> in Summe drüber geht, beträgt um die 2A (bei ca. 35V Flussspannung) -
> das Ganze natürlich PWM-dimmbar (mit ca. 500Hz).
> Jetzt habe ich natürlich starke Bedenken, dass die LED-Treiber-Leitungen
> meine I2C-Datenleitung stören.

Kann sein muss aber nicht

> Was kann ich tun, um Störungen zu
> vermeiden?

Masseleitungen zwischen den beiden Funktionen, geschirmtes IDC Kabel 
verdrilltes IDC Kabel niederohmige I2C Abschlusswiderstände am Eeprom, 
kleine Datenrate, usw. usf.

> Gibt es irgendwelche Zusatzbeschaltungen, um den I2C-Bus
> unempfindlicher gegen Störungen zu machen? Was macht man bei so einem
> Problem?

s.o.

>
> Vielen Dank für eure Tipps!!!
>
>
> mfg
> Andy

Gruß zurück

G-XIV
#1900497
Lesenswert?

I2C ist in gestörten Umgebungen eigentlich die falsche Wahl. Bei SPI hat 
man sehr viel mehr Möglichkeiten, wie z.B. mit RS232 oder 422-Treibern 
zu arbeiten. Dafür brauchst Du aber mindestens eine Ader mehr.

Wie groß muss das EEPROM sein? Eine Idee wäre ein Attiny 13A oder 25, 
den Du seriell ansteuerst (und damit die üblichen Treiberbausteine 
verwenden kannst), und der auch als Datenspeicher dient. Bei wenig Daten 
kannst Du das interne EEPROM verwenden, wenn es mehr werden, müßtest Du 
eine EEPROM-Emulation im internen Flash aufbauen.

fchk
#1900725
Lesenswert?

>I2C ist in gestörten Umgebungen eigentlich die falsche Wahl. Bei SPI hat
>man sehr viel mehr Möglichkeiten, wie z.B. mit RS232 oder 422-Treibern
>zu arbeiten.
I²C kann man auch über RS485 oder CAN laufen lassen.
Der Vorteil mit 2 Leitung auszukommen entfällt dann natürlich.
#1900734
Lesenswert?

Etwas sehr ungünstig wäre es, die 2A an der Quelle per PWM zu schalten, 
die entsprechenden Transienten ungebremst über das Kabel zu jagen und 
dafür keinen separaten Massepin vorzusehen.

Auf jeden Fall sollte also die Masse der 2A-Seite am Ziel von der 
I2C-Masse getrennt bleiben.

Nützlich: Die LED-PWM am Ziel zu schalten und dort per Drossel 
(L/C-Glied) in der 2A-Versorgung die Transienten aus dem Kabel zu 
verscheuchen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren