第7章_USB接口祥解.ppt

  1. 1、本文档共100页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章_USB接口祥解.ppt

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 查询注册表,查询所有的hid设备,找出所需设备的接口 用找到的接口打开hid设备,设备操作被io管理器转化成irp包交给设备驱动程序,使用系统自带的驱动程序HIDUSB.SYS。 Hidusb.sys将irp转化成URB块提交给USBD总线驱动程序,USBD控制主机控制器执行操作 IO管理器 ReadFile() HIDUSB.SYS IRP USBD.SYS URP 主控制器 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 数据流程: 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * * * 设备描述符 (Device Descriptor) 设备描述符的长度为18字节,它描述设备的基本信息。一个USB设备只能有一个设备描述符。USB设备描述符的数据结构略。 配置描述符 (Configuration Descriptor) 配置描述符描述设备某一种配置的信息,它包括配置有几个接口,每个接口的端点如何安排等。当主机要求获得某个配置描述符时,设备返回和此配置相关的接口描述符和端点描述符。配置描述符的数据结构略。 接口描述符 (Interface Descriptor) 接口描述符描述一个接口的信息。主机不能要求单独获得某个接口描述符或端点描述符。它们只能和配置描述符一起被主机获得。 端点描述符 (Endpoint Descriptor) 除了端点0外,一个接口中用到的所有端点都有自己的端点描述符。 7.5 USB传输管理 7.5.1 USB信息转换过程 客户软件 USB 驱动器 主机控制器 驱动器 事务 主机控制器 USB IRP 传输 包 USBD 界面 HCD 界面 事务 事务表 事务 事务 事务 客户软件 USB 驱动器 主机控制器 驱动器 事务 主机控制器 USB IRP 传输 包 USBD 界面 HCD 界面 事务 事务表 事务 事务 事务 (1)客户软件 又叫做客户驱动程序,他是通过IO请求包(IRP)将请求发送给USB驱动程序. 客户软件决定某个应用应该用何种传送类型。软件知道它用来操作应用的管道(接口)的存在;客户知道总线访问和带宽的限制,并且遵守它们。 有些客户通过操作系统提供的另一些设备级接口来操作USB功能,而不直接进行USBD的调用(calls)。但总要有一些低级的客户进行直接的USBD 的调用(calls),以便将IRP传给USBD。所有这些提交的IRP必须遵守管道建立时定下的带宽限制。 (2)USB驱动(USBD) USB驱动程序知道目标设备的特性,也知道如何通过USB和设备进行通信。USB的特性是由USB的驱动程序检测,这是在设备的配置过程中通过分析设备描述符得到的! 当从USB客户程序收到一个IRP时,USB把该请求组织成若干个专门的事务处理,这些事务处理将在一系列一毫秒的时间片中执行。USB驱动程序Setup事务处理,基础是:对USB设备的了解,对上层客户程序的了解,对USB限制能力的了解! 根据操作环境的不同,USB驱动程序可以捆绑在操作系统中,也可以作为模块加载! USBD的结构图 命令接口 管道接口 服务 流,消息管道 设置管理 设备数据访问 设备总线管理 能量控制 HCD HC (3)主控制器驱动(HCD) HCD接受USB驱动程序递交过来的事务,它将安排事务处理在USB上广播。方法是建立一系列的事务处理列表! 每个事务列表(即是时间片列表)由几个将要进行的事务处理组成!将在一毫秒内执行!(USB控制器以毫秒为单位执行这些事务处理!) 要注意的是:USB客户的请求的一次快速传输可能被作为一系列的事务处理执行!这种安排取决与多种因素:事务的类型,设备指定的传输请求以及其他事务的处理状况! USb主控制器通过他的根集线器初始化事务处理!每个时间片都从一个时间片起始(SOF)事务处理开始,随后是包含在当前列表中的所有事务处理的广播! 5.IRPS、传输、时间片、数据包的关系图 USB客户程序 事务1-0 IRP请求包1 事务1-1 IRP请求包2 事务2-0 事务2-1 事务1-2 事务2-2 事务2-3 时间片1 时间片2 时间片3 H C D U S B D 事务1-0 事务2-0 事务1-0 事务2-0 事务1-

文档评论(0)

love + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档