wxbfly
驱动牛犊
驱动牛犊
  • 注册日期2003-06-16
  • 最后登录2012-02-17
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
阅读:1922回复:7

初学有点不明白:D12共有三个端点,但每个端点都可以输入和输出,那么在电脑端的接口描述符中究竟有几个pipe?

楼主#
更多 发布于:2003-07-10 17:22
我使用bulkusb.sys驱动程序,假如我想对第三个端点进行读写(如果按三个端点计算),那么我的CreateFile的文件名中应该添加pipe4和pipe5呢还是pipe3呢?

最新喜欢:

chenleechenle...
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-10-21 10:14
控制端点0在描述符中是没有的,因此USBD_INTERFACE_INFORMATION 的pipe信息里也没有端点0的内容,里面的pipe[0]对应的是你设备描述符中的第一个端点信息,例如:如果你在固件方的描述符中第一个端点是1in,那么pipe[0]对应的就是1in的信息。
wxbfly
驱动牛犊
驱动牛犊
  • 注册日期2003-06-16
  • 最后登录2012-02-17
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-07-11 14:38
噢,我终于明白了。看了在固件端的端点描述符后就知道了。

jinghuiren兄,谢谢你的回答。对了,d12有三个端点。端点0用作控制端点(输入及输出),1和2用作传输用(分别有输入及输出)。那么在返回给pc机的接口描述符中,端点0存在吗?也就是说在
USBD_INTERFACE_INFORMATION 结构中的Pipes[0]及Pipes[1]对应于端点0还是端点1?

不好意思,硬件由他人开发,我只好先写通讯动态库部分。感谢大家的热心帮助。
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-07-11 13:11
你可以看你的endpoint 描述符呀,里面有关端点3的描述符是几个,如果一个是03,一个是83,那就说明端点3有两个,一个是in,一个是out,分别占用不同的fifo地址,如果在一个interface里只有一个03或者只有一个83,那就说明端点3只有一个,既可以配置成in也可以位out,但同一个interface里只能配置为其中之一。
wxbfly
驱动牛犊
驱动牛犊
  • 注册日期2003-06-16
  • 最后登录2012-02-17
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-07-11 09:10
 再顶
wxbfly
驱动牛犊
驱动牛犊
  • 注册日期2003-06-16
  • 最后登录2012-02-17
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-07-10 18:14
我知道,我所说的pipe04及pipe05这些其实在驱动程序中支持的,它们被附加至设备名的后面,所以才有此说。

我现在搞不清的就是:端点3可以输入也可以输出,在周立功所写的书上已经将此端点分为端点索引4和5,我现在搞不清在电脑读出接口描述符后,此端点在描述符中究竟占有几个管道?是两个还是一个?
flycat0101
驱动小牛
驱动小牛
  • 注册日期2002-06-24
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望22点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2003-07-10 17:46
究竟有几个pipe,这要根据从usb设备读取底描述符得知
至于要向某个端点读写数据也要根据端点描述符进行
因为端点支持哪一种传输方式也是在描述符中规定的
我思,故我在
lvwj
驱动老牛
驱动老牛
  • 注册日期2001-08-21
  • 最后登录2021-01-31
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望181点
  • 贡献值0点
  • 好评度52点
  • 原创分0分
  • 专家分0分
  • 社区居民
7楼#
发布于:2003-07-10 17:39
文件名应该是设备接口名,而不是 pipexxx

具体是那个pipe,你可以通过察看 pipe 的 endpoint 地址来看。第三个端口一般来说地址是 0x3(out) or 0x83(in)
www.bjjcz.com
游客

返回顶部