class USB_HID -- USB ヒューマンインターフェイスデバイス(HID)

USB_HID クラスは OpenMV Cam の USB ヒューマンインターフェイスデバイス(HID)インターフェイスを表します。マウスやキーボードなどのペリフェラルをエミュレートするために使用できます。

USB_HID オブジェクトを構築する前に、HID を含むモード(例えば 'VCP+HID')で pyb.usb_mode() を呼び出してください。これによりホスト上で USB HID クラスが列挙されます。usb_mode に渡すレポートディスクリプタがデバイスクラスを選択します。事前に構築済みのタプルは pyb.hid_mouse および pyb.hid_keyboard として利用できます。

例 -- マウスの左クリックを送信してから 5 ピクセル右に移動させる:

import pyb

pyb.usb_mode("VCP+HID", hid=pyb.hid_mouse)
hid = pyb.USB_HID()

# report layout: (buttons, dx, dy, wheel)
hid.send((1, 0, 0, 0))   # press left button
hid.send((0, 0, 0, 0))   # release
hid.send((0, 5, 0, 0))   # move +5 in X

コンストラクタ

class pyb.USB_HID

新しい USB_HID オブジェクトを作成します。HID インターフェイスは 1 つしかないため、コンストラクタはシングルトンオブジェクトを返します。

メソッド

send(data: Tuple[int, ...] | List[int] | bytes | bytearray) None

HID 入力レポートを USB ホストに送信します。

data は整数のタプル/リスト、または使用中のレポートディスクリプタに依存するレイアウトを持つ bytes ライクなバッファです。組み込みのマウスディスクリプタの場合、レポートは (buttons, dx, dy, wheel) です。キーボードディスクリプタの場合は (modifiers, 0, key1, key2, key3, key4, key5, key6) です。pyb.hid_mouse および pyb.hid_keyboard を参照してください。

recv(data: int | bytearray, *, timeout: int = 5000) bytes | int

USB ホストから HID 出力レポート(例えばキーボードの LED 状態)を受信します。レポートがすでにバッファされている場合は即座に返します。

  • dataint(新しいバッファに読み込むバイト数)または受信したバイトで満たす可変バッファのいずれかです。

  • timeout はレポートを待つ最大時間(ミリ秒)です。

data が整数の場合は新しい bytes オブジェクトが返されます。そうでない場合は data に書き込まれたバイト数が返されます。