USB开发中使用到的一些结构体


typedef struct _USBD_INTERFACE_INFORMATION {//配置设备时所使用到的用于描述接口信息的结构体
  USHORT                Length;//本结构体长度
  UCHAR                 InterfaceNumber;//指定设备定义的接口索引标识符
  UCHAR                 AlternateSetting;//指示本接口该使用可选设置中的哪一个的设备定义索引标识符
  UCHAR                 Class;//类代码
  UCHAR                 SubClass;//子类代码
  UCHAR                 Protocol;//协议代码
  UCHAR                 Reserved;//保留字符
  USBD_INTERFACE_HANDLE InterfaceHandle;//包含了主机控制器驱动定义的访问接口的句柄,这个句柄是可见的。
  ULONG                 NumberOfPipes;//指定接口有多少个管道,即有多少个端点。
  USBD_PIPE_INFORMATION Pipes[1];//指向一个USBD_PIPE_INFORMATION结构体的第一个成员的指针。
} USBD_INTERFACE_INFORMATION, *PUSBD_INTERFACE_INFORMATION;

 


typedef struct _USBD_PIPE_INFORMATION {//用于客户驱动程序保存指定接口的管道信息

  USHORT           MaximumPacketSize;//指出管道能够处理的最大字节数
  UCHAR            EndpointAddress;//为管道指定总线地址
  UCHAR            Interval;//访问间隔,与接口中端点描述符中指定的访问间隔对应,只适用于中断和等时传输管道,用于数据传输速率的确定。
  USBD_PIPE_TYPE   PipeType;//指定管道类型,有控制类型,等时类型,批传输类型,中断传输类型。
  USBD_PIPE_HANDLE PipeHandle;//指定指向批量和中断传输管道的指针,这个指针在客户驱动选择配置时由主机控制器返回。
  ULONG            MaximumTransferSize;//指定传输所需要的最大字节数
  ULONG            PipeFlags;//指定管道可配置属性的值
} USBD_PIPE_INFORMATION, *PUSBD_PIPE_INFORMATION;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值