USBでは、Endpoint 0を使って行う以下のような標準のリクエストを定義しています。リクエストとしてはこれ以外にClass毎に決められているClassリクエストとベンダ毎に規定できるベンダリクエストが存在します。

Classについて

 

リクエスト名 対象 概要
Get_Status Device, Endpoint Device:Self-PoweredとRemote Wakeup読み取り, Endpoint:Halt読み取り
Clear_Feature Device, Endpoint Device:Remote Wakeup クリア, Endpoint:Halt解除(DATA PID=0)
Set_Feature Device, Endpoint Device:Remote Wakeup or Test mode設定, Endpoint:Halt設定
Get_Descriptor Device, Config., String, Device_qualifier, Other_speed_Config. 対象Descriptorの読み取り
Set_Descriptor Device, Config., String 対象Descriptorの変更(Option)
Get_Configuration Device 現行設定のConfiguration値の読み取り
Set_Configuration Device Configuration値の設定
Get_Interface Interface 対象Interfaceの現行設定のAlternative Setting値の読み取り
Set_Interface Interface 対象InterfaceのAlternative Setting値の設定
Set_Address Device USBアドレスの設定
Synch_Frame Endpoint Frame同期のデータ読み取り

USB2.0となって追加されたUSBの標準リクエストは特にありませんが、Get Descriptorの拡張として、high-Speed capable deviceがChirp handshakeに失敗した場合に本来のスピード能力で動作させるために使うDevice_qualifierとOther_speed_configuration、さらにUSB2.0トランシーバの特性をチェックするSet Feature TEST_MODEが追加されています。

Chirp handshakeについて

  • カタログポータル