Hallo, ich verwende die STM32_USB-Host-Device_Lib_V2.1.0 zusammen mit dem STM32F207ZG-SK Eval Board. Ich habe den MSC (Mass Storage Class) Beipielcode (Host) angepasst, so dass ich mit einem CDC Device kommunizieren kann. Die Enumeration funktioniert und ich kann die Deskriptoren Device Descriptor, Configuration Descriptor, Interface Descriptor und den Endpoint Descriptor auslesen. Nach der Enumeration möchte ich mit dem Senden von Daten beginnen. Dazu nutze ich: status = USBH_BulkSendData (pdev, USBH_CDC_XferParam.pOutBuffer, USBH__XferParam.Out_Packet_Length, hc_num_out); Das funktioniert oft und mit URB_Status = HCD_GetURB_State(pdev , hc_num_out); erhalte ich auch URB_Status = URB_DONE. In einigen Fällen erhalte ich jedoch URB_Status = URB_NOTREADY und ich kann nicht herausfinden warum. Habe ich evtl. vergessen einige Parameter einzustellen bevor ich USBH_BulkSendData() benutze? Vielen Dank, Stefan
Nach welcher USB-Spezifikation arbeiten die STM32, OHCI? Könntest du mir dann sagen welcher ConditionCode sich hinter URB_NOTREADY verbirgt? Ich habe ähnliche Probleme allerdings mit einem LPC, vielleicht hat es ja die selbe Ursache.
Die USB Lib ist USB2.0 konform. Ob OHCI unterstütz wird, weiß ich leider nicht. Hinter URB_NOTREADY verbirgt sich die Rückmeldung vom Host Controller Treiber, das eine NAK condition aufgetreten ist. Laut USB Beschreibung kann dies bedeuten, dass der Empfänger keine Daten aufnehmen kann oder der Sender nicht senden kann bzw. keine Daten zum Senden hat.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.