yanggl
驱动牛犊
驱动牛犊
  • 注册日期2001-04-19
  • 最后登录2010-08-30
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望11点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:6399回复:13

再问USB设备加载驱动前的,win98的工作过程

楼主#
更多 发布于:2001-05-28 16:21
各位高手,请问安装USB设备驱动程序前,WIN98会做那些工作,特别是PNP枚举过程是如何进行的?

最新喜欢:

hanwlhanwl
IC
rayyang2000
管理员
管理员
  • 注册日期2001-03-23
  • 最后登录2012-09-13
  • 粉丝3
  • 关注0
  • 积分1036分
  • 威望925点
  • 贡献值3点
  • 好评度823点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-05-29 19:04
我记得前面有人回答过了,你找一下。
天天coding-debugging中----超稀饭memory dump file ======================================================== [b]Windows Device Driver Development and Consulting Service[/b] [color=blue][url]http://www.ybwork.com[/url][/color] ========================================================
davy
驱动牛犊
驱动牛犊
  • 注册日期2001-04-24
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-06-07 17:51
如果你懂英文的话,看看下面一段文字

Typical enumeration steps:
1. The host computer sends a SETUP packet followed by a DATA packet to USB address 0 requesting the Device descriptor.
2. The USB Controller decodes the request and retrieves its Device descriptor from the program memory space.
3. The host computer performs a control read sequence and the USB Controller responds by sending the Device descriptor over
the USB bus.
4. After receiving the descriptor, the host computer sends a SETUP packet followed by a DATA packet to address 0 assigning a
new USB address to the device.
5. The USB Controller stores the new address in its USB Device Address Register after the no-data control sequence completes.
6. The host sends a request for the Device descriptor using the new USB address.
7. The USB Controller decodes the request and retrieves the Device descriptor from the program memory.
8. The host performs a control read sequence and the USB Controller responds by sending its Device descriptor over the USB bus.
9. The host generates control reads to the USB Controller to request the Configuration and Report descriptors.
10.The USB Controller retrieves the descriptors from its program space and returns the data to the host over the USB.
11.Enumeration is complete after the host has received all the descriptors.
davy gaw
yanggl
驱动牛犊
驱动牛犊
  • 注册日期2001-04-19
  • 最后登录2010-08-30
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望11点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2001-06-08 10:32
Thanks ,我基本明白英文的意思,这是一般步骤,对WIN98而言,其实现这个过程的过程是如何的,特别是WIN98在这些过程中,发出了那些令牌?这是比较具体的细节,我在另一个贴子把我跟踪的过程贴出了,兄弟能解释一下!
IC
nigx
驱动巨牛
驱动巨牛
  • 注册日期2001-04-29
  • 最后登录2018-06-02
  • 粉丝0
  • 关注0
  • 积分14166分
  • 威望71910点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2001-06-08 20:16
其实,你给出的不全面 ,最全面的应当包括98检测主机

HUB的端口开始(包括使能)等一列操作,才会对外设的操作(你给出的)。
nigx
驱动巨牛
驱动巨牛
  • 注册日期2001-04-29
  • 最后登录2018-06-02
  • 粉丝0
  • 关注0
  • 积分14166分
  • 威望71910点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2001-06-08 20:21

  你想知道的是我最不想说的!!!!!!

用的是PDIUSBD12芯片 否???


----天下本没有程序员,只是想知道的人多了,也就有了驱动开发网!!!!!!!!

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

3 外设再一次接收到GetDescriptor请求。主机分析描述符的信息。主机操作系统根据描述符信息寻找相应的设备驱动程序。
4 操作系统会继续发出GetConfiguration请求,读取设备的配置信息。要把外设的各个端点的配置情形回送到主机中。如果有多个配置信息,有多次请求发生。
5 在设备能通讯前,主机给外设一个SetConfiguration请求,主机根据整个系统的USB使用情况确认设备的哪一个配置有效,告诉其怎样工作,设备收到后调整有关配置,使设备能合理使用。
经过上面的调试后,USB外设可以发送和接收数据,设备如果不立即使用则会进入挂起状态,直到使用。
small
驱动牛犊
驱动牛犊
  • 注册日期2003-10-02
  • 最后登录2005-03-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-04-01 22:00
够厉害的
lingxscn
驱动牛犊
驱动牛犊
  • 注册日期2003-08-25
  • 最后登录2004-09-04
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-05-26 14:47
谢谢nigx.
ms3d_duck
驱动牛犊
驱动牛犊
  • 注册日期2004-04-23
  • 最后登录2005-03-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-05-26 22:02
我现在知道端点发送数据时,一般是将要发的数据放在一个缓存区中,然后通过设置一些控制寄存器,串行接口引擎(SIE)就会将该数据按照USB协议标准发送。(至少Cypress的片子是如是做的)

想请问一下,在端点接收数据时,是不是SIE也会将发送过来的数自动置入对应端点的缓存,然后发生端点的中断,用于读取数据?

这样理解对吗?请做过实际电路的高手回答!
llinux
驱动牛犊
驱动牛犊
  • 注册日期2003-05-31
  • 最后登录2011-06-21
  • 粉丝0
  • 关注0
  • 积分17分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-06-24 18:07
谢谢
qiuhua
驱动牛犊
驱动牛犊
  • 注册日期2004-04-19
  • 最后登录2007-11-20
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望3点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2004-08-10 10:05
厉害
wuhao
驱动小牛
驱动小牛
  • 注册日期2002-06-14
  • 最后登录2005-02-02
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2005-02-02 10:43
实验电路的高手!
tony221
驱动牛犊
驱动牛犊
  • 注册日期2001-12-03
  • 最后登录2013-04-16
  • 粉丝0
  • 关注0
  • 积分187分
  • 威望61点
  • 贡献值0点
  • 好评度16点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2005-02-22 21:15
mark
qiuzhenqing
驱动牛犊
驱动牛犊
  • 注册日期2006-07-13
  • 最后登录2009-11-09
  • 粉丝0
  • 关注0
  • 积分610分
  • 威望62点
  • 贡献值0点
  • 好评度61点
  • 原创分1分
  • 专家分0分
13楼#
发布于:2007-08-30 15:43
受教 不过SetConfiguration 是驱动发的
游客

返回顶部