ST USB Host Driver, STM32F401 - Probleme mit sauberer Deinitialisierung?

OP #4469882
Lesenswert?

Hallo Zusammen,

ich versuche mich gerade am ST USB Host Driver in seiner neuen 
HAL-Version. Irgendwie ist das Teil alles andere als Robust. Überrascht 
mich auch wenig, da kaum Rückgabewerte überprüft werden.

Nun zu meinem Problem:

Ich initalisiere beim Einstecken des USB-Geräts sauber mit dem 
Init-Callback die Pipes - was im ersten Durchlauf auch sauber 
funktioniert.

Folgende Aufrufe:
 - USBH_FindInterface (...)
 - USBH_SelectInterface (...)
 - USBH_OpenPipe (...)

Stecke ich das USB-Device ab, wird das deinit-Callback aufgerufen. Im 
wesentlichen folgende Methoden

 - USBH_ClosePipe (...)
 - USBH_FreePipe (...)

Auf Nullpointer wird überall geprüft.

Das an- und abstecken geht ein/zweimal gut, dann hängt die ganze Kiste 
fest.

Man sieht das er im Hintergrund noch versucht, den 
HAL_HCD_Connect_Callback aufzurufen, diese wird aber nicht mehr an die 
USB Host Lib durchgereicht (ergo keine Klassen-Callbacks mehr 
aufgerufen).

Kenn wer von euch dieses Problem? Muss ich wirklich immer die ganze USB 
Host Lib neu starten? :-/
#4640941
Lesenswert?

Hallo Holger,

ich habe hier das gleiche Problem. Mit MSC USB Sticks. Ein paar mal 
funktioniert das ganze und dann erkennt er die Sticks nicht mehr.

Hast du eine Lösung gefunden

>Kenn wer von euch dieses Problem? Muss ich wirklich immer die ganze USB
>Host Lib neu starten? :-/


Wie machst du das?


Gruß
Falko

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren