Forum: Mikrocontroller und Digitale Elektronik USB Host mit STM32: SOF? Low Speed?


von Jens (Gast)


Lesenswert?

Ich benutze einen STM32F7 als USB Host und verwende das eingebaute Full 
Speed Interface.

Bei der Einrichtung mit CubeMX bin ich auf den optionalen SOF-Pin 
gestoßen und frage mich, wozu der dienen soll. Laut AN4879 kann SOF als 
Synchronisation für den intern generierten USB-Takt verwendet werden, 
aber selbst da verstehe ich nicht, wieso das ein Pin ist. Was schließt 
man dort an?

Außerdem frage ich mich, ob es irgendwelche Vorteile hat, das Full Speed 
Interface nur mit Low Speed zu benutzen? Vielleicht wären bspw. die 
Anforderungen an die Taktgenauigkeit nicht so hoch, und es könnte auf 
den HSE verzichtet werden?

von Dr. Sommer (Gast)


Lesenswert?

Jens schrieb:
> Was schließt man dort an?

Audio Hardware, welche sich auf den SOF-Takt von 1 kHz synchronisiert...

Jens schrieb:
> Außerdem frage ich mich, ob es irgendwelche Vorteile hat, das Full Speed
> Interface nur mit Low Speed zu benutzen?

Ja, damit kannst du dann Low Speed Geräte wie Mäuse ansprechen.

von Dr. Sommer (Gast)


Lesenswert?

Dr. Sommer schrieb:
> Ja, damit kannst du dann Low Speed Geräte wie Mäuse ansprechen.

PS: Jeder Host muss aber auch Full Speed können, denn es gibt FS-Only 
Geräte (wie die Device Seite des STM32 USB).

von Jens (Gast)


Lesenswert?

Dr. Sommer schrieb:
> Audio Hardware, welche sich auf den SOF-Takt von 1 kHz synchronisiert...

Prima, dann kann das weg.

> Ja, damit [LS] kannst du dann Low Speed Geräte wie Mäuse ansprechen.

Ja, es geht um eine USB-Maus. Aber an dem Aufbau ändert sich dann wohl 
nix?!

von Jens (Gast)


Lesenswert?

Dr. Sommer schrieb:
> PS: Jeder Host muss aber auch Full Speed können, denn es gibt FS-Only
> Geräte (wie die Device Seite des STM32 USB).

Hmm ... Kann denn der ST-USB-Code automatisch die Geschwindigkeit der 
angeschlossenen Gerätes erkennen, oder muß man sich auf LS oder FS 
festlegen? Kann ich mir fast nicht vorstellen.

von Jim M. (turboj)


Lesenswert?

Jens schrieb:
> Hmm ... Kann denn der ST-USB-Code automatisch die Geschwindigkeit der
> angeschlossenen Gerätes erkenne

Der Host erkennt die Geschwindigkeit am Pullup. Pullup an D+ ist Full 
Speed, Pullup an D- ist Low Speed (IIRC). Kein Pullup = Kein USB Gerät 
angeschlossen.

Daher muss USB Host immer beides unterstützen.

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.