User Tools

Site Tools


Sidebar

Home



Expressions


About

Functions

  abs()
  acos()
  and()
  array_clear()
  array_copy()
  array_crc16()
  array_crc32()
  array_delete()
  array_getdata16()
  array_getdata32()
  array_getdata64()
  array_getdataflt32()
  array_getdataflt64()
  array_getdata()
  array_getstring()
  array_insert()
  array_isvalid()
  array_new()
  array_printdata()
  array_printstring()
  array_remove()
  array_resize()
  array_setdata16()
  array_setdata32()
  array_setdata64()
  array_setdataflt32()
  array_setdataflt64()
  array_setdata()
  array_setstring()
  array_size()
  asin()
  atan2()
  atan()
  beep()
  bin()
  bit()
  cam_color()
  cam_grab()
  cam_load()
  cam_rect()
  ceil()
  centerex()
  center()
  chr()
  clear()
  close()
  cmdlist()
  cmd()
  cos()
  crc16()
  crc32()
  datetime()
  date()
  day()
  debug()
  dec()
  defnz()
  def()
  deg2rad()
  dlg_new()
  dlg_show()
  dlg_delete()
  dlg_addimage()
  dlg_addlabel()
  dlg_addcheckbox()
  dlg_addinput()
  eq()
  estop()
  exec()
  exists()
  exit()
  exp10()
  exp2()
  exp()
  extout1()
  extout2()
  e()
  file_append()
  file_close()
  file_delete()
  file_flush()
  file_open()
  flood()
  floor()
  for()
  getparam()
  ge()
  gt()
  hex()
  hour()
  if()
  inc()
  isnum()
  isuiready()
  jog()
  land()
  le()
  lnand()
  lnor()
  lnot()
  log10()
  log2()
  log()
  lor()
  lt()
  lxnor()
  lxor()
  match()
  max()
  md5_f()
  md5()
  midiin_channel()
  midiin_ctrl()
  midiin_note()
  midiin_prog()
  midi_ctrl()
  midi_isplaying()
  midi_noteOff()
  midi_noteOn()
  midi_play()
  midi_prog()
  midi_stop()
  millisec()
  minute()
  min()
  mist()
  mmtosetunit()
  mmtounit()
  month()
  msg()
  msgex()
  nand()
  nan()
  ne()
  nop()
  nor()
  notexists()
  not()
  open()
  or()
  outpwm()
  out()
  pause()
  pi()
  pk_analog()
  pk_digital()
  pow()
  print()
  pythr()
  py()
  rad2deg()
  rand()
  remparam()
  return()
  rgb2hue()
  rgb2lum()
  rgb2name()
  rgb2sat()
  roundup()
  round()
  rubik()
  second()
  serial_addlistener()
  serial_close()
  serial_config()
  serial_info()
  serial_list()
  serial_open()
  serial_readarray()
  serial_readdata()
  serial_readflush()
  serial_read()
  serial_remlistener()
  serial_writearray()
  serial_writedata16()
  serial_writedata32()
  serial_writedata()
  serial_writeflush()
  serial_write()
  setparam()
  settings()
  setunittomm()
  setunit()
  sha256_f()
  sha256()
  shl()
  shr()
  sign()
  sin()
  siren()
  sleep()
  sound_isplaying()
  sound_load()
  sound_play()
  sound_stop()
  sound_unload()
  spindle()
  sqrt()
  sqr()
  startcode()
  startfn()
  start()
  status()
  stop()
  strlen()
  str()
  tan()
  tomachineuv()
  tomachinexy()
  tomachine()
  toworkuv()
  toworkxy()
  towork()
  trunc()
  unittomm()
  url()
  usb_addlistener()
  usb_close()
  usb_info()
  usb_list()
  usb_open()
  usb_readarray()
  usb_readdata()
  usb_read()
  usb_remlistener()
  usb_writearray()
  usb_writedata()
  usb_write()
  xnor()
  xor()
  year()

Operators

Events

expr:functions:func-usb_addlistener

usb_addlistener()

Adds USB listener, which reads data from USB device and saves it in array. Each time device sends new data, array data is refreshed and callback function is executed.

Syntax

usb_addlistener(path, callback, hnd, size);

Parameters

path USB device path.
callback Callback function name. Callback function arguments are:
arg1 - path
arg2 - array handle
arg3 - length
hnd Array handle.
size Number of bytes to read. Special values are:
0 - USB packet size.
-1 - USB packets are read without interruption, data is read until buffer is full.
Return Value Number listeners.

Examples

hnd = array_new();
usb = "\\?\hid#vid_045e&pid_028e&ig_00#8&3b73941c&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}";
usb_addlistener(usb, "#On_USB_Event", hnd, 14); 
 
#On_USB_Event
result = array_getdata(.arg2,11);

result:

255

See also

expr/functions/func-usb_addlistener.txt · Last modified: 2023/02/15 15:01 by 127.0.0.1

Page Tools