前提・実現したいこと
USB通信にて、コントロール転送の送受信ができていることが確認できているが。
挙動として問題ないかを確認したい。
例:GET_STATUSの転送をした際に、0xXXの値が返ってきているが正しいかの判断ができない
デバイスマネージャー等からGET_STATUSで取得した値が問題ないかの答え合わせする方法はありませんでしょうか
該当のソースコード
int function() { int ret; /* 返り値 */ unsigned char buf[8]; /* バッファ */ uint8_t bmRequestType = LIBUSB_ENDPOINT_IN | LIBUSB_REQUEST_TYPE_STANDARD | LIBUSB_RECIPIENT_DEVICE; uint8_t bRequest = LIBUSB_REQUEST_GET_STATUS; uint16_t wValue = 0; uint16_t wIndex = 0; uint16_t wLength = 8; /* コントロール転送 */ ret = libusb_control_transfer(s_handle,bmRequestType, bRequest, wValue, wIndex, buf, wLength, 2000); return ret; }
試したこと
上記コードに対してbuf[0]=0x03の結果が返ってきていることを確認しているが、結果の妥当性が不明である。
引数の値については下記などを参照して作成
https://wiki.onakasuita.org/pukiwiki/?USB%2F%E3%83%AA%E3%82%AF%E3%82%A8%E3%82%B9%E3%83%88
補足情報(FW/ツールのバージョンなど)
・Windows10
・libusb-1.0
libusb_control_transfer()によるコントロール転送
回答1件
あなたの回答
tips
プレビュー