lxglxg
驱动牛犊
驱动牛犊
  • 注册日期2002-12-16
  • 最后登录2009-08-20
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望50点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:681回复:1

各位,第一次发贴子,希望大家支持???

楼主#
更多 发布于:2003-04-11 12:43
问题如下:
   我现在想知道一点:

  在usb设备媒举过程中,驱动再做什么?
  媒举的过程是驱动做的吗?

  我在驱动的代码中发现一个问题,在
驱动的 adddevice函数中,发现有一些区设备描述符,取设备
端口号,还有一些其它的等等?

  是什么意思? :(
lxglxg
驱动牛犊
驱动牛犊
  • 注册日期2002-12-16
  • 最后登录2009-08-20
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望50点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-04-11 12:49
这是大侠写的没举过程:

1 第一次接收到主机的GetDescriptor请求中断响应,主机要求外设发送设备描述符,确定外设缺省管道控制端点的每次数据包大小。通过控制端点回送设备描述符,第一次只需要保证设备描述符中前8个字节发送正确。
2 主机发送SetAddree请求到USB 设备,给USB设备分配唯一的地址。这时外设被分配唯一地址,此时的USB设备成为被主机承认的合理外设,可以进行正常的数据传送。

3 外设再一次接收到GetDescriptor请求。主机分析描述符的信息。主机操作系统根据描述符信息寻找相应的设备驱动程序。
4 操作系统会继续发出GetConfiguration请求,读取设备的配置信息。要把外设的各个端点的配置情形回送到主机中。如果有多个配置信息,有多次请求发生。
5 在设备能通讯前,主机给外设一个SetConfiguration请求,主机根据整个系统的USB使用情况确认设备的哪一个配置有效,告诉其怎样工作,设备收到后调整有关配置,使设备能合理使用。
经过上面的调试后,USB外设可以发送和接收数据,设备如果不立即使用则会进入挂起状态,直到使用。

我的理解是否正确:
上面的1,2,在什么时候做的?有无驱动参与?

上面的3,4,5在什么时候做的?有无驱动参与?
  :(
游客

返回顶部