Forum: Mikrocontroller und Digitale Elektronik Highspeed SPI und LAN


von Hacki (Gast)


Lesenswert?

Hallo,

ich habe da ein Problem, oder Herausforderung und hoffe auf Eure Hilfe.

Ich möchte gerne alle 140µs 4 x 32-Bit Werte mittels SPI einlesen
und diese dann an einen PC weiterleiten.

Ich hatte an LAN gedacht, da ich nicht abschätzen kann ob USB dies 
verkraftet.

Was wäre das Mittel der Wahl um dies mit vertretbarem Aufwand zu 
realisieren.

Bei der Speed und (USB/LAN) fallen AVR's wohl aus.
Ginge es mit Rasberry oder STM32F4 Discovery?

Hat jemand schon eine ähnliche Herausforderung gemeistert?

Grüße
Jürgen

von Programmierer (Gast)


Lesenswert?

Das sind ja weniger als 1MBit/Sec. USB low Spend kann 1.2 MBit, Full 
Speed 12 MBit, High Speed 480 MBit, SuperSpeed 5000 MBit. Reicht das zum 
Abschätzen?
Protokolloverhead muss man noch abziehen.
Der STM32F4 kann das locker per USB. Beim Discovery brauchst dafür nicht 
mal zusätzliche Hardware.

von Falk B. (falk)


Lesenswert?

@ Hacki (Gast)

>Ich möchte gerne alle 140µs 4 x 32-Bit Werte mittels SPI einlesen
>und diese dann an einen PC weiterleiten.

Macht 120 kB/s.

>Ich hatte an LAN gedacht, da ich nicht abschätzen kann ob USB dies
>verkraftet.

USB Full Speed macht 12 Mbit/s brutto, macht ~ 1MB/s netto.
Sollte reichen. Zur Not gibt es USB High Speed mit 480 Mbit/s.

>Was wäre das Mittel der Wahl um dies mit vertretbarem Aufwand zu
>realisieren.

Ein Board mit SPI und LAN.

>Bei der Speed und (USB/LAN) fallen AVR's wohl aus.

Wird sportlich, aber ggf. machbar.

>Ginge es mit Rasberry oder STM32F4 Discovery?

Ja.

von c-hater (Gast)


Lesenswert?

Hacki schrieb:

> Ich möchte gerne alle 140µs 4 x 32-Bit Werte mittels SPI einlesen
> und diese dann an einen PC weiterleiten.

Also knapp 1MBit/s bzw. 125kByte/s. Das ist nix, weswegen man graue 
Haare kriegen müßte.

> Ich hatte an LAN gedacht, da ich nicht abschätzen kann ob USB dies
> verkraftet.

USB mit LowSpeed wäre zu langsam, um das zuverlässig zu transportieren. 
Aber ab FullSpeed sollte es keine Probleme bereiten. LAN geht natürlich 
ebenfalls.

> Bei der Speed und (USB/LAN) fallen AVR's wohl aus.

Nö. Solche Datenraten schaffen die noch problemlos. Wenn der PC eine 
vernünftige RS232-Schnittstelle hat, könnte man das notfalls sogar noch 
per USART abwickeln. Ansonsten halt USB FullSpeed mit entsprechenden 
AVRs oder über USB bzw. LAN-Adapter-ICs.

Ich persönlich würde auf LAN mit IP/UDP setzen.

von Hacki (Gast)


Lesenswert?

Hallo,

Dankeschön für die Antworten.

Der Übertragungsrate war ich mir schon bewußt, aber nicht was die 
einzelnen Boards so können.

Z.B. Rasberry, kann dieses SPI-Slave Mode (hatte ich vergessen zu 
erwähnen).
Oder das Disco-Board kann der USB Full-Speed.

Ich suche nach einem Board das die 4 32 bitwerte alle 140uS im 
Slavemodus (nur mithören) per SPI empfängt und dann zum PC Überträgt.

Mit dem Disco-Board hatte ich mich einmal kurz beschäftigt.
Aber ehrlich gesagt finde ich das ganze Handling, ich sag mal sperrig,
Verglichen mit einem AVR.

Beim Rasberry wird doch unter Linux geproggt, oder?

Gruß
Jürgen

von Programmierer (Gast)


Lesenswert?

Hacki schrieb:
> Oder das Disco-Board kann der USB Full-Speed.
Ja, ohne zusätzliche Hardware.

von Hacki (Gast)


Lesenswert?

Vielen Dank,
dann werde ich die Sache mal mit dem Disco F4 angehen.

Grüße
Jürgen

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.