Display: SPI über I2C verlängern?

Gast #4068687
Lesenswert?
• ▲
▼
Hallo,

folgendes Szenario: Ein TFT-Farbdisplay, welches über SPI angesteuert 
wird, soll in einem Gehäuse untergebracht werden, in welchem sich kein 
Controller befindet. Der Controller befindet sich in einem Gehäuse, ca 
2-3 m entfernt. Da SPI-Leitungen bekanntlich relativ kurz gehalten 
werden sollen, kann ich die Ansteuerung nicht direkt vornehmen. Ich 
möchte also eine Lösung, welche über ein möglichst dünnes Kabel den 
Displayinhalt zuverlässig überträgt. Es sollen keine bewegten Bilder 
oder Videos übertragen werden, wohl aber die Uhrzeit und veränderliche 
Werte. Meine Überlegung ist, einen SPI nach I2C Converter zu benutzen 
und im Displaygehäuse aus dem I2C-Signal wieder das SPI-Signal zu 
generieren. Hat das schon jemand ausprobiert oder gibt es dafür 
vielleicht elegantere oder sogar fertige Lösungen?
#4068699
Lesenswert?
• ▲
▼
@ IQuadratC (Gast)

>Controller befindet. Der Controller befindet sich in einem Gehäuse, ca
>2-3 m entfernt. Da SPI-Leitungen bekanntlich relativ kurz gehalten
>werden sollen, kann ich die Ansteuerung nicht direkt vornehmen.

Doch. Man muss nur ein bisschen das Thema Wellenwiderstand 
berücksichtigen. 3m sind mit SPI machbar.

>Werte. Meine Überlegung ist, einen SPI nach I2C Converter zu benutzen
>und im Displaygehäuse aus dem I2C-Signal wieder das SPI-Signal zu
>generieren.

Aua.

> Hat das schon jemand ausprobiert oder gibt es dafür
>vielleicht elegantere oder sogar fertige Lösungen?

Nimm gleich RS232.
Gast #4068704
Lesenswert?
• ▲
▼
Falk Brunner schrieb:
> Doch. Man muss nur ein bisschen das Thema Wellenwiderstand
> berücksichtigen. 3m sind mit SPI machbar.

Hast Du konkrete Erfahrungen? Welches Kabel sollte benutzt werden? Habe 
eins vergessen: Die Betriebsspannung für das Display soll über das selbe 
Kabel bereitgestellt werden.
#4068718
Lesenswert?
• ▲
▼
@ Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite

>Beib' bei SPI, verwende zur Erhöhung der Störsicherheit differentielle
>Treiber à la RS422 oder LVDS. Das verdoppelt zwar die Leiteranzahl (je
>zwei für Takt und Daten), ist aber, wenn über twisted-pair geführt,
>reichlich robust.

"Ich möchte also eine Lösung, welche über ein möglichst dünnes Kabel den
Displayinhalt zuverlässig überträgt. Es sollen keine bewegten Bilder
oder Videos übertragen werden, wohl aber die Uhrzeit und veränderliche
Werte."

Also Trivialitäten.
#4068725
Lesenswert?
• ▲
▼
@ IQuadratC (Gast)

>> Doch. Man muss nur ein bisschen das Thema Wellenwiderstand
>> berücksichtigen. 3m sind mit SPI machbar.

>Hast Du konkrete Erfahrungen?

Ja.

>Welches Kabel sollte benutzt werden?

Was dir gefällt. Twisted Pair oder Flachband.

>eins vergessen: Die Betriebsspannung für das Display soll über das selbe
>Kabel bereitgestellt werden.

Ja und? Ein einfaches dreiadriges Kabel mit GND, VCC und RS232_DATA 
reicht locker. Ein kleiner uC am TFT, fertig. Dünner geht das Kabel 
nicht.
#4068734
Lesenswert?
• ▲
▼
@ Lothar Miller (lkmiller) (Moderator) Benutzerseite

>I2C ist zudem auch nicht für grössere Entfernungen gedacht. Denn
>ausgeschrieben heißt das "Inter-IC-Bus", also gedacht zur Verbindung von
>ICs auf der Platine...

Ich hatte mal I2C in einem Industriesensor drin, der bis zu 500m 
(fünfhundert Meter) Anschlußlänge hatte . . .
#4068759
Lesenswert?
• ▲
▼
Lothar Miller schrieb:
> I2C ist zudem auch nicht für grössere Entfernungen gedacht. Denn
> ausgeschrieben heißt das "Inter-IC-Bus", also gedacht zur Verbindung von
> ICs auf der Platine...

Deswegen gibts auch extra Repeater, Bus Puffer, ......

@TO: Ich hab sowas schon gemacht, allerdings anderst. Auf der 
Displayplatine ist ein größerer Mega-Proz, der die Verwaltung und 
Steuerung des Displays übernimmt und via I2C über einen eigenen 
Befehlssatz "Auträge" ausführt. In dem Mega sind z.B. über 50 
Festgrafiken/Symbole gespeichert und diese werden über einen Befehl des 
Masters angezeigt. Dafür muß dieser nur 3 Bytes via I2C senden: 
x-Koordinate, y-Koordinate und Symbolnummer. Ähnlich einfach schreibt 
man Texte, zeichnet Linien, Kreise oder was man eben sonst implemetiert. 
Ich arbeite übrigens mit Kabellängen bis 3m (normales USB-Kabel).
#4068765
Lesenswert?
• ▲
▼
Warum verrätst du nichts über die Baudrate der SPI? (Sag' nicht, dass du 
sie nicht kennst - dann kennst du die Aufgabenstellung auch höchstens 
nur zur Hälfte.)

2 - 3m sind nicht tragisch, wenn die Geschwindigkeit nicht zu hoch ist.

Serielle Widerstände hinter den Treiber-Ausgängen, entsprechend den 
Wellenwiderständen der Leitungen, machen das System schon erheblich 
robuster, weil der Empfänger keine Reflektionen mehr sieht.

Die gemeinsame Masse oder kapazitives oder induktives Übersprechen würde 
bei noch größeren Längen das nächste Problem ergeben können. 
Symmetrische Übertragung mit RS-422, wie Rufus schon empfahl, wäre dann 
die Lösung. Ich spreche aber jetzt schon von Längen im km-Bereich oder 
Geschwindigkeiten bei 20 MBit/s (aber nicht beides gleichzeitig).

Als Kabel für hohe Ansprüche kommen Datenkabel mit paarweise verdrillten 
Leitungen in Frage, bei sehr langen Leitungen bzw. Datenraten mit PE- 
(und nicht mit PVC-)Isolation. Für ein paar Meter tun es 
Telefonleitungen, die sind auch paarweise verdrillt.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.