USB-Gerät-enumeration schlägt fehl: "device descriptor read/64, error -32"
Entwickle ich ein ttyACM-device mit ST-mikrocontroller, und mit dem gleichen code, mein host konnte manchmal zählt es erfolgreich (unten), aber manchmal ist es einfach nur dump die untenstehende Nachricht. Was bedeutet der Fehler -32 bedeuten?
[FAIL AUFLISTEN]
usb 1-2.1: new full speed USB device number 62 using ehci_hcd
usb 1-2.1: device descriptor read/64, error -32
usb 1-2.1: device descriptor read/64, error -32
usb 1-2.1: new full speed USB device number 63 using ehci_hcd
usb 1-2.1: device descriptor read/64, error -32
usb 1-2.1: device descriptor read/64, error -32
usb 1-2.1: new full speed USB device number 64 using ehci_hcd
usb 1-2.1: device not accepting address 64, error -32
usb 1-2.1: new full speed USB device number 65 using ehci_hcd
usb 1-2.1: device not accepting address 65, error -32
hub 1-2:1.0: unable to enumerate USB device on port 1
[ERFOLG]
usb 1-3.1: new full speed USB device number 45 using ehci_hcd
usb 1-3.1: New USB device found, idVendor=0483, idProduct=5740
usb 1-3.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-3.1: Product: ChibiOS/RT Virtual COM Port
usb 1-3.1: Manufacturer: HelloWord
usb 1-3.1: SerialNumber: 262
usb 1-3.1: configuration #1 chosen from 1 choice
cdc_acm 1-3.1:1.0: This device cannot do calls on its own. It is not a modem.
cdc_acm 1-3.1:1.0: ttyACM0: USB ACM device
Vielen Dank.
InformationsquelleAutor Shan | 2014-03-12
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
AFAIK status -32 bedeutet "Broken pipe" (EPIPE). Es bedeutet, dass es Probleme mit der usb-Kommunikation (Protokoll). Zum Beispiel usb-Gerät nicht richtig beantworten für die usb-Anforderung, und sendet einige Daten, die nicht erwartet werden, die von host schickt oder nicht genügend Daten. Es kann auch andere Gründe.
Die erste Meldung sagt, dass es Probleme gibt mit "get device descriptor" und "set address" Anfragen vom host. Das sind grundlegende Anforderungen zu senden, die von host an den Anfang der enumeration-Prozess. Sie können nicht weiter gehen, wenn diese Anfragen nicht erfolgreich bedient von usb-Gerät.
InformationsquelleAutor user2699113
Dieser Fehler kann verursacht werden, durch die Taktung der on-chip-USB-Gerät an die falsche Frequenz. Überprüfen Sie Ihre Uhr Baum-Konfiguration. Die Frequenz sollte 48MHz. Wenn es leicht aus, ist es möglich, die Aufzählung würde manchmal erfolgreich und manchmal nicht. Wenn es Weg ist, die Aufzählung wird immer scheitern. Verschiedene Fehler sind möglich, einschließlich die, die Sie aufgelistet.
InformationsquelleAutor Roger Dahl