首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >lsusb:仅有1个端点可用

lsusb:仅有1个端点可用
EN

Stack Overflow用户
提问于 2013-03-06 03:18:06
回答 1查看 641关注 0票数 3

我正在尝试通过libusb与设备(没有linux驱动程序)通信。我已经写了很多基本的代码,并在windows上使用USB侦听软件(它有一个驱动程序)来找出我需要发送给它的代码。然而,当我执行"lsusb -v -d 1267:0000“时,只显示了一个端点,如下所示:

代码语言:javascript
复制
Bus 003 Device 005: ID 1267:0000 Logic3 / SpectraVideo plc 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x1267 Logic3 / SpectraVideo plc
  idProduct          0x0000 
  bcdDevice            0.00
  iManufacturer           0 
  iProduct                0 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               8
Device Status:     0x0000
  (Bus Powered)

问题是应该有一个写端点,我可以向下发送数据,但是只显示了0x81端点,据我所知,它是一个读端点(我对此非常陌生)。我是否需要执行某些操作才能访问此端点?

EN

回答 1

Stack Overflow用户

发布于 2013-07-16 23:49:53

你要么还没有声明你的设备(google声明了一个带有libusb的设备),要么你需要以root身份运行,要么你正在处理的设备只有一种报告方法。是的,确实会发生这种情况。

在任何HID设备上,都有三种可能的通信方法:输入、输出和功能报告。但是,根据HID描述符的不同,您的设备可能只支持一个。在这种情况下,我猜它只支持功能报告。幸运的是,这些报告可以进行输入和输出。(这是DigiSpark的描述方式。)

也许这些选项都不起作用,但它们值得一试!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15232261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档