klasa USB_HID – USB uređaj za interakciju s čovjekom (HID)¶
Klasa USB_HID predstavlja sučelje USB uređaja za interakciju s čovjekom (HID) na OpenMV Cam. Može se koristiti za emuliranje periferije poput miša ili tipkovnice.
Prije konstruiranja USB_HID objekta pozovite pyb.usb_mode() s načinom rada koji uključuje HID (npr. 'VCP+HID') – time se nabraja USB HID klasa na hostu. Deskriptor izvješća proslijeđen funkciji usb_mode odabire klasu uređaja; unaprijed izgrađene n-torke dostupne su kao pyb.hid_mouse i pyb.hid_keyboard.
Primjer – pošaljite lijevi klik miša, a zatim ga pomaknite 5 piksela udesno:
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
Konstruktori¶
- class pyb.USB_HID¶
Stvara novi USB_HID objekt. Postoji samo jedno HID sučelje, pa konstruktor vraća singleton objekt.
Metode¶
- send(data: Tuple[int, ...] | List[int] | bytes | bytearray) None¶
Šalje HID ulazno izvješće USB hostu.
dataje n-torka/lista cijelih brojeva ilibytes-oliki međuspremnik čiji raspored ovisi o deskriptoru izvješća koji se koristi. Za ugrađeni deskriptor miša izvješće je(buttons, dx, dy, wheel); za deskriptor tipkovnice je(modifiers, 0, key1, key2, key3, key4, key5, key6). Pogledajtepyb.hid_mouseipyb.hid_keyboard.
- recv(data: int | bytearray, *, timeout: int = 5000) bytes | int¶
Prima HID izlazno izvješće od USB hosta (npr. stanje LED dioda tipkovnice). Vraća se odmah ako je izvješće već u međuspremniku.
dataje iliint(broj bajtova za čitanje u novi međuspremnik) ili promjenjivi međuspremnik koji se popunjava primljenim bajtovima.timeoutje maksimalno vrijeme u milisekundama za čekanje na izvješće.
Ako je
datacijeli broj, vraća se novibytesobjekt; inače se vraća broj bajtova zapisanih udata.