Forum: PC Hard- und Software 3 serielle Schnittstellen am Paspberry Pi


von R. F. (inet_surfer88)


Lesenswert?

Hallo,

ich will an einem Raspberry PI insgesamt 3 Geräte mit serieller 
Schnittstelle ansteuern. Eine serielle hat der RPI an Bord (über 
Pegelwandler an der GPIO). 2 weitere könnte ich über 
USB-auf-RS232-Adapter realisieren. Da das ganze in einem Gehäuse 
eingebaut werden soll wären die Adapter nicht ideal.

Hat jemand eine Idee wie man das besser lösen könnte. Es wäre auch eine 
Art "Umschalter" möglich, da nicht alle Schnittstellen gleichzeitig, 
sondern nacheinander angesprochen werden. Von Vorteil wäre eine 
Betriebsfertige Platine.

Übe rIdeen wäre ich dankbar, habe bisher noch nichts passendes gefunden. 
Die bisher gefundenen RS232-Umschalter waren einfach zu gross.

von Stefan F. (Gast)


Lesenswert?

Kaufe Dir für 2 Euro ein Blue-Pill Board (aka STM32F103C8T6 Minimum 
System Development Board) und lade da dieses Programmbeispiel von Niklas 
Gürtler drauf:

http://stefanfrings.de/stm32/vcp_test.zip

Dann hast du einen 3-Fach USB-UART für ganz keines Geld.

Um die Firmware auf das Board zu laden, brauchst du einen ST-Link 
Adapter oder einen USB-UART Adapter. Anleitung: 
http://stefanfrings.de/stm32/index.html#proginterfaces

Nachtrag: Oder soll es wirklich RS232, also mit +/- 12V Pegeln sein? 
Dann sind zwei gewöhnliche USB Adapter wohl doch besser.

von guest (Gast)


Lesenswert?

Wenn die 3 Geräte sebst programiert sind ginge Daisy Chaining.

Ansonsten diverse Möglichkeiten zum selber basteln:
https://www.raspberrypi.org/forums/viewtopic.php?t=2006

Oder fertig z.B.:
https://www.tindie.com/products/aauer1/raspberry-pi-dual-serial-port-extension/
https://www.waveshare.com/serial-expansion-hat.htm

Wenn die 3 Geräte sebst programiert sind ginge auch Daisy Chaining.

von georg (Gast)


Lesenswert?

R. F. schrieb:
> Es wäre auch eine
> Art "Umschalter" möglich, da nicht alle Schnittstellen gleichzeitig,
> sondern nacheinander angesprochen werden

Kann man machen, aber das wird nicht annähernd so billig wie 2 
USB-Adapter aus China. Die kann man mit Kabelbindern auf einer 
Lochrasterplatine befestigen und mit einem 9pol Flachbandkabel bis zur 
Gehäusewand verlängern.

Georg

von Gerd E. (robberknight)


Lesenswert?

Schau Dir mal die SC16IS750 von NXP an. Die kannst Du per I2C oder SPI 
an den 40-Pin-Header des RasPi hängen und damit mehr UART-Schnittstellen 
bekommen. Fertige Treiber für die Dinger sind im Kernel vorhanden, Du 
musst einfach nur den DeviceTree erweitern.

Wenn Du RS232 statt TTL-Level brauchst, dann halt noch die 
entsprechenden Wandler dazu.

: Bearbeitet durch User
von guest (Gast)


Lesenswert?

Gerd E. schrieb:
> Schau Dir mal die SC16IS750 von NXP an.

Besser den SC16IS752 oder SC16IS762, dann braucht man auch nur einen 
Chip. Fertige Module hab ich oben schon verlinkt

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Noch 'ne Möglichkeit wäre ein FT4232H, der stellt als ein USB-Device 
gleich vier Schnittstellen zur Verfügung, die dann auch eindeutig 
zugeordnet werden können.

"China-Module" damit sind allerdings rar.

von R. F. (inet_surfer88)


Lesenswert?

Danke für die vielen Vorschläge. Die werde ich mir die nächsten Tage in 
Ruhe anschauen und überlegen, wie ich es realisiere. Werde mich dann 
nochmals melden.

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Beim Arduino würde man es mit sog. "Soft Serial" versuchen.

Das sollte der Raspi eigentlich auch können. Wenn man in Google als 
Suchbegriff "softserial raspberry" eingibt, kommen viel Treffer.

SoftSerial macht beliebige GPIO-Pärchen per Software zu RX/TX. Evtl. 
geht nicht gleichzeitg Senden u. Empfangen (Interrupt-Konflikte, 
zumindest beim Arduino), aber so anspruchsvoll scheint das Projekt der 
TO nicht zu sein.

von Stefan F. (Gast)


Lesenswert?

Softserial setzt schnelles Interrupthandling und präzises Timing voraus. 
Das übliche Linux auf dem Rasberry Pi ist dazu eher schlecht geeignet.

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Stefanus F. schrieb:
> Softserial setzt schnelles Interrupthandling und präzises Timing
> voraus.
> Das übliche Linux auf dem Rasberry Pi ist dazu eher schlecht geeignet.

Sicher auch ne Frage der Bitrate. Wenn dem TO z.B. 9600 genügen ...

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.