Bonjour,

Je développe un firmware USB sur mon PIC 18F4550 et je suis devant un point bloquant lors de l'énumération de mon périphérique. J'utilise le logiciel wireShark pour suivre les échanges de paquets USB entre l'ordinateur et mon périphérique. Toutes mes actions USB sont déclenchées par interruption.
Voici le début des opérations :
- réception d'un getDeviceDescriptor à l'adresse 0
- réponse par le deviceDescriptor à l'adresse 0 => succès
- réception d'un reset -> execution du reset
- réception d'un setAdresse (xx) à l'adresse 0
- réponse par une donnée vide à l'adresse 0 - attente de la complétion de la réponse (pour être sûr que la réponse se fait à l'adresse 0) => succès
- j'écris l'adresse du périphérique dans le registre d'adresse : UADDR = xx
- réception d'un getDeviceDescriptor à l'adresse xx
- réponse par le deviceDescriptor à l'adresse xx (car UADDR vaut maintenant xx) => erreur ! "malformed packet"

Je pense qu'il y a un problème lorsque je configure l'adresse du périphérique, mais où ... j'ai comparé à plusieurs codes sources, mais je pêche.
Quelqu'un a-t-il des éléments de réponse ?

Merci