|
|
|
|
|
|
|
|
|
D7 Direction de transfert de
phase de données 0 = Hôte vers l'appareil 1 = Appareil vers Hôte D6..5 Type 0 =00= Standard 1 =01= Classe 2 =10= Constructeur 3 =11= Réservé D4..0 Destinataire 0 = Appareil 1 = Interface 2 = Terminaison 3 = Autre 4..31 = Reservé |
|
|
|
|
Requête |
|
|
|
|
Valeur |
|
|
|
|
Index |
|
|
|
|
Nombres d'octets à transférer s'il y a une phase de données |
La requête GetStatus dirigée vers l'appareil retournera 2 octets pendant l'étage de données suivant le format : |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Si D0 est à 1, ceci indique que l'appareil est auto alimenté. S'il est à 0, l'appareil est alimenté par le bus. Si D1 est à 1, l'activation à distance de l'appareil est validée et ce dernier peut réveiller l'hôte pendant le mode veille. Le bit d'activation à distance peut être positionné par les requêtes SetFeature et ClearFeature grâce à un sélecteur de fonction de DEVICE_REMOTE_WAKEUP(0x01). Les requêtes Clear Feature et Set Feature peuvent être utilisées pour positionner des fonctions booléennes. Quand le destinataire désigné est l'appareil, les 2 seuls sélecteurs de fonctions disponibles sont DEVICE_REMOTE_WAKEUP et TEST_MODE. Test mode permet à l'appareil de présenter diverses conditions. A leur égard, des précisions supplémentaires sont fournies dans la spécification USB, version 2.0. Set Address est utilisé pendant l'énumération pour attribuer une adresse unique à l'appareil USB. L'adresse est précisée dans wValue et peut valoir au maximum 127. Cette requête est unique dans le sens ou l'appareil ne positionnera pas son adresse tant que la phase d'état ne sera pas achevé (voir transfert de commande). Toutes les autres requêtes doivent être terminées avant la phase d'état. Set Descriptor/Get Descriptor est utilisé pour renvoyer le descripteur indiqué dans wValue. Une requête pour le descripteur de configuration retournera le descripteur d'appareil et, tous les descripteurs d'interfaces et de terminaisons dans la même requête.
Get Configuration/Set Configuration est utilisé pour demander ou positionner la configuration de l'appareil actuel. Dans le cas d'une requête GetConfiguration, un octet sera renvoyé pendant la phase de donnée indiquant l'état de l'appareil. Une valeur zéro signifie que l'appareil n'est pas configuré et une valeur différente de zéro indique que l'appareil est configuré. SetConfiguration est utilisé pour valider un appareil. Il doit contenir la valeur de bConfigurationValue du descripteur de configuration voulu dans l'octet de poids faible de wValue pour sélectionner quelle configuration valider. Les Requêtes d'Interface standard La spécification actuelle définit 5 requêtes d'interface standard qui sont détaillées dans le tableau ci-dessous : Il est intéressant de noter que, seules 2 requêtes donnent quelque chose de compréhensible. |
wIndex est normalement utilisé pour préciser l'interface de référence pour des requêtes liées à l'interface. Voir son format dans le schéma ci-dessous. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Get Status est utilisé pour retourner l'état de l'interface. Une telle requête à l'interface doit renvoyer 2 octets de valeur 0x00, 0x00. ( Les 2 octets sont réservés pour une utilisation future). Les requêtes ClearFeature et SetFeature peuvent être utilisées pour positionner des fonctions booléennes. Quand le destinataire désigné est l'interface, la spécification USB actuelle révision 2 précise qu'il n'y a pas de fonctions d'interface. Get Interface et Set Interface règle le positionnement de l'interface de remplacement qui est décrit plus en détails dans le descripteur d'interface. Les Requêtes de terminaisons standard Les requêtes de terminaisons standard sont au nombre de 4, listées ci-dessous : |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Le champ wIndex est normalement utilisé pour préciser la terminaison de référence et la direction pour les requêtes liées à la terminaison. Voir son format dans le schéma ci-dessous. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GetStatus renvoie 2 octets indiquant l'état (Arrêté/Bloqué) d'une terminaison. Le format des 2 octets renvoyés est illustré ci-dessous. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ClearFeature et SetFeature sont utilisés pour positionner les fonctions de la terminaison. Le standard défini actuellement un sélecteur de fonction de terminaison : ENDPOINT_HALT (0x00) qui permet à l'hôte de bloquer et d'effacer une terminaison. Seules les terminaisons autres que la terminaison par défaut sont conseillées pour avoir cette fonctionnalité. Une requête SynchFrame est utilisée pour rapporter une trame de synchronisation de terminaison. |
Ce document vous a plu, alors il est possible de le
télécharger au format PDF CHAPITRE
6 ![]()
|
![]() Accueil |
![]() Sommaire |
![]() |