USB协议规范文档简介

 
    USB驱动开发必须对USB相关的协议规范有一定程度的了解,理解得越深,遇到的问题就会越少,解决问题的速度也就越快。 工欲善其行,必先利其器。USB协议规范就是USB驱动开发人员的工具。

    在USB官方网站( http://www.usb.org/ )包含了我们必需的所有的USB协议规范。
    USB协议规范文档下载:http://www.usb.org/developers/docs
         - USB2.0
         由于USB2.O目前是主流,USB3.0也开始在使用,但是离广泛使用还有一个过渡期,这里就不介绍。另外,还有无线USB等,也不作介绍。如果感兴趣,可以到USB论坛 http://www.usb.org/ 下载。
 
    USB设备类规范文档下载:http://www.usb.org/developers/devclass_docs#approved
 – USB Mass Storage Class Specification Overview, Rev. 1.2, June 23, 2003
         – USB Mass Storage Class Bulk Only Transport, Rev. 1.0, September 31, 1999
        – USB Mass Storage Class Control/Bulk/Interrupt (CBI) Transport, Rev. 1.1,June 23, 2003
        – USB Mass Storage Class UFI Command Specification, Rev. 1.0, December 14,1998
        – USB Device Class Definition for Printing Devices, Rev. 1.1, January 2000
        – USB Device Class Definition for Human Interface Devices (HID), Rev. 1.11,June 27, 2001
         
        对于USB设备类协议规范,只需要了解大容量存储设备类规范和简单的SCSI命令即可。 即 USB Mass Storage Class Bulk Only Transport:http://www.usb.org/developers/devclass_docs/usbmassbulk_10.pdf 
     
     USB主机控制器规范文档:
        – for EHCI:
        – for OHCI:
        – for UHCI (Search for UHCI from this page)
         http://www.intel.com
        – for UHCI errata on USB bandwidth reclamation, see page 24 in:
      对于主机控制器规范文档,上述的EHCI、OHCI和UHCI都是标准的控制器规范,目前inter还有一种XHCI规范文档,在http://www.usb.org/ 中也有介绍。 由于常用的都是EHCI和OHCI规范,因此,对这两种规范进行理解即可。 当然,在我们的实际开发中,往往会由于条件限制,会采用一些非标准控制器,在采用非标准控制器时,主要是实现HCD驱动,可以参照标准的OHCI或EHCI方式实现。 
    
   上述文档都是英语原文,如果害怕读这些文章,可以在百度搜索相关的中文翻译。其实,只要自己耐心的去慢慢读,你就会慢慢发现,只是开始的时候,稍微会慢一点,越到后面,感觉越顺畅,此时和那些中文翻译比起来,宁愿看原文也不要看翻译。因为翻译和原文之间可能会有差异,会影响自己的理解。

USB协议规范文档简介的更多相关文章

  1. HTML文档简介

    HTML简介 HTML标签 html文档标签: html源代码就好像word文档,有特殊的语法结构定义自己的功能. html文档标签 html标签,其下由两个主要节点标签head.body. head ...

  2. 1.SQLAlchemy文档-简介(中文版)

    Python的SQL工具包和对象关系映射器     SQLAlchemy的是Python的SQL工具包和对象关系映射器,让应用程序开发人员可以使用上SQL的强大功能和灵活性.     它提供了一套完整 ...

  3. Openstack官网文档简介

    OpenStack documentation相关文档见 docs.openstack.org. 主要包含这些方面的文档: Installation Guides Deployment Guides ...

  4. ASP.NET Core 3.0 WebApi中使用Swagger生成API文档简介

    参考地址,官网:https://docs.microsoft.com/zh-cn/aspnet/core/tutorials/getting-started-with-swashbuckle?view ...

  5. 微信开发模式 api 接口文档简介

    微信公众平台分为订阅号和服务号,服务号提供9大接口,需要通过微信认证后才能使用这些接口.认证费用300元.下面是接口的大致介绍: 1. 语音识别:通过语音识别接口,用户发送的语音,将会同时给出语音识别 ...

  6. 【微信开发】微信开发模式 api 接口文档简介

    微信公众平台分为订阅号和服务号,服务号提供9大接口,需要通过微信认证后才能使用这些接口.认证费用300元.下面是接口的大致介绍: 1. 语音识别:通过语音识别接口,用户发送的语音,将会同时给出语音识别 ...

  7. 嵌入式开发之davinci--- 8148/8168/8127 中的添加算饭scd 场景检测 文档简介

    Osd Scd (1)     Introduction over view a)         scene change detection block diagram a)         gr ...

  8. koa文档参考

    koa文档 简介 koa 是由 Express 原班人马打造的,致力于成为一个更小.更富有表现力.更健壮的 Web 框架.使用 koa 编写 web 应用,通过组合不同的 generator,可以免除 ...

  9. Spring Boot 集成 Swagger 生成 RESTful API 文档

    原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...

随机推荐

  1. C# 一个方法如何返回多个值

    通常一个方法只能返回一个值,但是如果在某些时候,我们想要返回多个值,例如某个方法将一个浮点数分割成一个整数和一个小数返回.这个时候我们就要用到out关键字. using System; namespa ...

  2. thinkPHP的几个系统常量

    echo "当前请求:" . __SELF__ . '<br>'; echo "当前分组:" . __MODULE__ . '<br>' ...

  3. setTimeout OR setInterval?

    setTimeout 和setInterval从字面上应该是可以知道其大意的.timeout:延时:interval:间隔: 两者的区别就像是它们自己的英文解释一样:setTimeout是延时执行,并 ...

  4. Play-with-chrome之环境搭建

    前言 浏览器漏洞在 APT 攻击中用的比较多,而且这基本上是用户上网的标配了,所以研究浏览器的漏洞是十分有前景的,我认为.我选择 chrome 浏览器 ( chromium和 chrome之间的关系请 ...

  5. 导出WPS office文档格式的说明

     针对microsoft office的文档格式,WPS office分别提供wps对应doc,et对应xls两种格式,word和excel是办公系统使用的普及度最广的文件格式,而国内的政府行政单 ...

  6. Ext根据条件显示隐藏列

    Ext根据条件显示隐藏列 写在ExtonReady函数里面,并在表格成功渲染之后,可以添加判断是否隐藏或者显示某一列 /* 判断是否显示版本号一列 */ var showVersionFlag = ' ...

  7. leetCode题解 Reverse Words in a String III

    1.题目描述 Given a string, you need to reverse the order of characters in each word within a sentence wh ...

  8. MySQL Group Replication配置

    MySQL Group Replication简述 MySQL 组复制实现了基于复制协议的多主更新(单主模式). 复制组由多个 server成员构成,并且组中的每个 server 成员可以独立地执行事 ...

  9. Jmeter入门--可执行元件

    一.测试片段(Test Fragment) 测试片段元素是控制器上的一种特殊的线程组,它在测试树上与线程组处于一级层级.它与线程组有所不同,因为它不执行,除非它是一个模块控制器或者是被控制器所引用时才 ...

  10. 使用python来建立http服务

    python建立http服务 首先我们的windos上要安装python解释器,然后进入我要想要传递的文件的目录下,从当前的目录下进入cmd 然后通过Python解释器输入 python -m htt ...