Forum: Mikrocontroller und Digitale Elektronik SPI über RS-485


von Sibi111 (Gast)


Lesenswert?

Hallo zusammen,

ich hänge gerade an folgendem Problem:
Ich habe zwei Microcontroller (TI Hercules TMS570LC4357) die ich per SPI 
miteinander verbinden will. Die SPI-Signale sollen zunächst von TTL mit 
einem Line Driver (TI SN75LBC175A) auf RS-485 konvertiert werden, und 
anschließend mit einem Line Receiver (TI SN75LBC174A) wieder zurück auf 
TTL.

Hier bin ich mir allerdings nicht sicher was die ausgewählten Line 
Driver und Receiver angeht da TTL ja 3,3V verwendet. Laut dem Datenblatt 
sollte es ja kein Problem sein den Line Driver mit 3,3V anzusteuern. Wie 
verhält es sich aber mit der Gegenrichtung? Der Output am Line Receiver 
liegt ja bei Nom 4.8V, was ja über der TTL Spezifikation liegt.
Ist das ein Problem oder benötige ich hier noch zusätzlich einen 
Widerstand?

Haltet ihr die Auswahl der Driver/Receiver generell für sinnvoll? Bin 
für jeden Input offen.

Vielen Dank schon einmal im Vorraus! :)

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Nimm doch 3.3V Line-Driver. Auf der 485-Seite sind sie mit 5V-Treibern 
kompatibel.

von Jim M. (turboj)


Lesenswert?

Um den MISO zu nutzen brauchst Du aber auch einen Treiber "falsch" 
herum, das geht mit den o.g. Bausteinen nicht.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Standard 485-Treiber sind umschaltbar im Halbduplexbetrieb.

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Sibi111 schrieb:
> Bin für jeden Input offen.
ich meine, man kan so was mache, ist aber hinreichend umständlich.
Bist du aber sicher, dass es nur so, mit SPI per RS485 geht?

Welche Bedingungen hast du (Leitungslängen, Datenraten, Störfestigkeit 
usw.)?
Gruß Öletronika

von Mehmet K. (mkmk)


Lesenswert?

Wie es bei TI ist, weiss ich nicht. Bei den STM32 ist es aber so, dass 
viele der Pins 5V-tolerant sind. Weshalb ich z.Bsp. einen ST485B mit 5V 
betreibe und es direkt an die MCU anschliessen kann.
Vermute mal, dass dies auch bei TI so sein wird.

von Sibi111 (Gast)


Lesenswert?

Vielen Dank schonmal für euren Input.
Ich werd mich dann gleich mal im Handbuch schlau machen ob die 
Interfaces auch für 5V ausgelegt sind bzw ob ich 3,3V Bauteile finde die 
schnell genug sind.

Klar, ist auf jeden Fall umständlich ;) Hat primär den Hintergrund dass 
von einem "Master"-Board aus eine Sternstruktur aufgebaut werden soll, 
das heißt ein SPI MoSi muss hier bis zu 3 MoSi antreiben - deswegen ist 
es für mich aus dem Bauch raus die sauberere Lösung wenn hier nochmal 
vernünftige Treiber davor geschalten sind. Die Übertragung war hier nur 
in eine Richtung geplant als Broadcasts, deswegen der 
HalbDuplex-Baustein.

An die Leitungslänge gibt es nur geringe Anforderungen, jedoch mehr an 
die Geschwindigkeit. Hier würde ich gerne soviel wie möglich raus holen. 
20 MBit/s wären zunächst mal ein Ziel an das ich mich orientieren will - 
wenn mehr drinnen ist, umso besser ;)

Übertragungen würde ich zusätzlich gerne mit einer LED anzeigen. Hierzu 
sollte man dann am besten auch nochmal einen Line Receiver + Widerstand 
davor schalten oder?

Ich sege

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Sibi111 schrieb:
> Klar, ist auf jeden Fall umständlich ;) Hat primär den Hintergrund dass
> von einem "Master"-Board aus eine Sternstruktur aufgebaut werden soll,
RS485 ist ein Linienbus und muss für hohe Datenraten sehr sauber 
terminiert werden. Eine Sternstruktur ist da schon mal problematisch.
Was anderes ist es, wenn der MoSi vom Master über 3 getrennte Treiber 
als je eine Line zu einem Slave läuft.

> das heißt ein SPI MoSi muss hier bis zu 3 MoSi antreiben - deswegen ist
> es für mich aus dem Bauch raus die sauberere Lösung wenn hier nochmal
> vernünftige Treiber davor geschalten sind.
"Vernünftige Treiber" heißt aber nicht notwendigerweise RS485. Dieser 
ist mit seinen differenziellen Leitungen für höchste Störsicherheit 
konzipiert.
Man kann aber auch eine unsymetrische Leitung für hohe Datenraten 
tauglich machen und sauber terminieren.

> An die Leitungslänge gibt es nur geringe Anforderungen,
Und was ist jetzt diese geringe Anforderung???
10cm oder 1m oder 5m???

> jedoch mehr an die Geschwindigkeit.
> 20 MBit/s wären zunächst mal ein Ziel
Das ist für kurze Leitungen (einige 10cm) kein so großes Problem.

> Übertragungen würde ich zusätzlich gerne mit einer LED anzeigen. Hierzu
> sollte man dann am besten auch nochmal einen Line Receiver + Widerstand
> davor schalten oder?
Wenn man eh leistungsfähige Treiber einsetzt, dann kann man die LED mit 
Vorwiderstand auch in die Terminierung mit einbeziehen.
Separate Treiber für die LED sind natürlich auch möglich.
Gruß Öletronika

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.