Périphérique USB énumération échoue: “descripteur de périphérique de lecture/64, erreur -32”
Je suis l'élaboration d'un ttyACM appareil avec ST microcontrôleur, et avec le même code, mon hôte peut parfois énumérer avec succès (ci-dessous), mais parfois, il viens de vider le message ci-dessous. Ce n'erreur -32 veux dire?
[NE PARVIENNENT PAS À ÉNUMÉRER]
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
[SUCCÈS]
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
Merci beaucoup.
OriginalL'auteur Shan | 2014-03-12
Vous devez vous connecter pour publier un commentaire.
Autant que je sache, le statut de -32 signifie "Broken pipe" (EPIPE). Cela signifie qu'il y a des problèmes de communication usb (protocole). Par exemple usb-appareil ne répond pas correctement pour l'usb-demande, et l'envoi de certaines données qui ne sont pas prévus par l'hôte ou l'envoie pas assez de données. Il y a peut être aussi d'autres raisons.
Le premier message indique qu'il y a des problèmes avec "obtenir le descripteur de périphérique" et "adresse" demande de l'hôte. Ceux qui sont à la base des demandes d'envoi par l'hôte au tout début du processus d'énumération. Vous ne pouvez pas aller plus loin si ces demandes ne peuvent pas être bien desservi par bus usb-appareil.
OriginalL'auteur user2699113
Cette erreur peut être provoquée par l'horloge de la sur-puce de dispositif USB à la mauvaise fréquence. Vérifiez votre horloge configuration de l'arborescence. La fréquence doit être 48MHz. Si c'est un peu hors, il est possible que l'énumération serait parfois réussi et parfois échouer. Si elle est loin, l'énumération échouera toujours. Plusieurs erreurs sont possibles, y compris ceux que vous avez énumérés.
OriginalL'auteur Roger Dahl