精华内容
下载资源
问答
  • usb转ide驱动是老式的台式机或者笔记本电脑的外设驱动程序,现在绝大多数的win98用户,在使用USB存储设备时需要安装厂家的驱动程序,很方便。而这款驱动可以让您的旧IDE硬盘继续发挥余热!
  • 欧姆龙usb驱动是一款非常好用的usb数据线驱动程序,轻松的解决usb出现异常和能连接的问题,欢迎有需要的朋友下载使用!官方介绍欧姆龙usb驱动是一款实现usb电缆连接效果的驱动程序,为用户带来了win7系统下载的...
  • USB不被电脑识别,如果是系统或系统自带的驱动的原因就可以安装usb flash disk驱动,也就是USB 3.0驱动需要此款驱动工具的朋友们欢迎前来下载使用。 随着Intel、VIA和SiS等芯片组厂商在其南桥芯片中增加对USB 3.0...
  • 本款rt73 usb无线网卡驱动程序是一款可以在Linux操作系统下使用的驱动工具,windows的rt73无线网卡驱动一找一大堆,而Linux可就那么好找了,有需要的赶快下载吧。
  • Windows 中包括的 USB 设备类驱动程序

    千次阅读 2017-11-07 21:37:50
    Windows 中包括的 USB ...如果你正在安装 USB 驱动程序: 你不需要下载 USB 设备类驱动程序。它们是自动安装的。Windows 中包含了这些驱动程序及其安装文件。可以在 \Windows\System32\DriverStore\FileRepository 文

    Windows 中包括的 USB 设备类驱动程序


    本主题列举了 Microsoft 为支持的 USB 设备类提供的驱动程序。

    如果你正在安装 USB 驱动程序:   你不需要下载 USB 设备类驱动程序。它们是自动安装的。Windows 中包含了这些驱动程序及其安装文件。可以在 \Windows\System32\DriverStore\FileRepository 文件夹中找到这些文件。驱动程序通过“Windows 更新”进行更新。

    如果你正在编写一个自定义驱动程序:  在为 USB 设备编写驱动程序之前,先确定 Microsoft 提供的驱动程序是否满足设备要求。如果 Microsoft 提供的驱动程序对于你的设备所属的 USB 设备类不可用,则考虑使用通用驱动程序 Winusb.sys 或 Usbccgp.sys。仅在必要时才编写驱动程序。选择用于开发 USB 客户端驱动程序的驱动程序模型提供了更多指导。

    USB 设备类

    USB 设备类是具有类似特征、执行通用功能的设备类别。在 USB-IF 中定义了这些类及其规范。每个设备类由 USB-IF 批准的类、子类和协议代码识别,所有这些都由 IHV 在固件的设备描述符中提供。Microsoft 为其中一些设备类提供自带的驱动程序,称为 USB 设备类驱动程序。 如果所连接的设备属于系统支持的设备类,Windows 将自动加载类驱动程序,无需其他驱动程序即可保证设备正常工作。 

    硬件供应商不应为支持的设备类编写驱动程序。Windows 类驱动程序可能并不支持类规范中描述的所有功能。如果类驱动程序未能实现设备的部分功能,则供应商应提供补充性驱动程序,以便与类驱动程序协同工作,支持设备提供的全部功能。

    有关 USB-IF 批准的设备类的一般信息,请参阅 USB 技术网站。

    有关 USB 类规范和类代码的最新列表,请参阅 USB DWG 网站

    设备安装程序类

    Windows 按“设备安装程序类”(表示设备的功能)对设备分类。

    Microsoft 为大多数设备定义安装程序类。IHV 和 OEM 可以定义新的设备安装程序类,但仅在现有类都不适用时。有关详细信息,请参阅系统定义的设备安装程序类

    用于 USB 设备的两个重要设备安装程序类为:

    • USBDevice {88BAE032-5A81-49f0-BC3D-A4FF138216D6}:IHV 必须将此类用于不属于另一个类的自定义设备。此类不用于 USB 主控制器和集线器。

    • USB {36fc9e60-c465-11cf-8056-444553540000}:IHV 不得将此类用于其自定义设备。它是为 USB 主控制器和 USB 集线器保留的。

    设备安装程序类不同于前面讨论的 USB 设备类。例如,音频设备在其描述符中具有 USB 设备类代码 01h。当连接到系统时,Windows 会加载 Microsoft 提供的类驱动程序 Usbaudio.sys。在设备管理器中,设备显示在声音、视频和滑稽戏控制器的下面,表示设备安装程序类是“媒体”。

    Microsoft 提供的 USB 设备类驱动程序

    USB-IF 类代码 设备安装程序类 Microsoft 提供的驱动程序和 INF Windows 支持 描述
    音频 (01h)

    媒体

    {4d36e96c-e325-11ce-bfc1-08002be10318}

    Usbaudio.sys

    Wdma_usb.inf

    Windows 8.1

    Windows 8

    Windows 7

    Windows Server 2008

    Windows Vista

    Windows Server 2003

    Windows XP

    Windows 2000

    Microsoft 通过 Usbaudio.sys 驱动程序为 USB 音频设备类提供支持。有关详细信息,请参阅内核模式 WDM 音频组件中的“USBAudio 类系统驱动程序”。有关 Windows 音频支持的详细信息,请参阅适用于 Windows 的音频设备技术网站。

    通信和 CDC 控件 (02h)

    调制解调器

    {4D36E96D-E325-11CE-BFC1-08002BE10318}

    注意  支持子类 02h (ACM)

    Usbser.sys

    Usbser.inf

    Windows 8.1

    Windows 8

    Windows 7

    Windows Server 2008

    Windows Vista

    从 Windows Vista 开始,用户即可通过设置注册表值来启用 CDC 和无线移动 CDC (WMCDC) 支持,如无线移动通信设备类支持中所述。

    启用 CDC 支持时,USB 公用类通用父驱动程序将枚举对应于 CDC 和 WMCDC 控制模型的接口集合,并为这些集合分配物理设备对象 (PDO)。

    Net

    {4d36e972-e325-11ce-bfc1-08002be10318}

    注意  支持子类 0Eh (MBIM) 

    wmbclass.sys

    Netwmbclass.inf

    Windows 8.1

    Windows 8

    从 Windows 8 开始,Microsoft 提供 wmbclass.sys 驱动程序用于移动宽带设备。请参阅 MB 接口模型
    HID(人体学接口设备) (03h)

    HIDClass

    {745a17a0-74d3-11d0-b6fe-00a0c90f57da}

    Hidclass.sys

    Hidusb.sys

    Input.inf

    Windows 8.1

    Windows 8

    Windows 7

    Windows Server 2008

    Windows Vista

    Windows Server 2003

    Windows XP

    Windows 2000

    Microsoft 提供了 HID 类驱动程序 (Hidclass.sys) 和微型类驱动程序 (Hidusb.sys),用以操作符合 USB HID 标准的设备。有关详细信息,请参阅 HID 体系结构微型驱动程序与 HID 类驱动程序。有关 Windows 中输入硬件支持的详细信息,请参阅输入和 HID - 体系结构与驱动程序支持网站。
    物理设备 (05h) - - - 建议的驱动程序:WinUSB (Winusb.sys)
    图像 (06h)

    图像

    {6bdd1fc6-810f-11d0-bec7-08002be2092f}

    Usbscan.sys

    Sti.inf

    Windows 8.1

    Windows 8

    Windows 7

    Windows Server 2008

    Windows Vista

    Windows Server 2003

    Windows XP

    Microsoft 提供了 Usbscan.sys 驱动程序,用于在 Windows XP 和更新版本的操作系统中管理 USB 数码相机和扫描仪。 这个驱动程序实现了 Windows 图像体系结构 (WIA) 的 USB 组件。有关 WIA 的详细信息,请参阅 Windows 图像采集驱动程序和 Windows 图像组件网站。有关 Usbscan.sys 在 WIA 中承担哪种角色的详细信息,请参阅 WIA 核心组件
    打印机 (07h)

    USB

    注意  Usbprint.sys 在设备安装程序类下枚举打印机设备:Printer{4d36e979-e325-11ce-bfc1-08002be10318}。

    Usbprint.sys

    Usbprint.inf

    Windows 8.1

    Windows 8

    Windows 7

    Windows Server 2008

    Windows Vista

    Windows Server 2003

    Windows XP

    Windows 2000

    Microsoft 提供了 Usbprint.sys 类驱动程序,用以管理 USB 打印机。有关 Windows 中打印机类实现的信息,请参阅打印 - 体系结构与驱动程序支持网站。
    大容量存储 (08h)

    USB

    Usbstor.sys

    Windows 8.1

    Windows 8

    Windows 7

    Windows Server 2008

    Windows Vista

    Windows Server 2003

    Windows XP

    Windows 2000

    Microsoft 提供了 Usbstor.sys 端口驱动程序,用以通过 Microsoft 本机存储类驱动程序管理 USB 大容量存储设备。有关此驱动程序管理的设备堆栈的示例,请参阅 USB 大容量存储设备的设备对象示例。有关 Windows 存储支持的信息,请参阅存储技术网站。

    SCSIAdapter

    {4d36e97b-e325-11ce-bfc1-08002be10318}

    子类 (06) 和协议 (62)

    Uaspstor.sys

    Uaspstor.inf

    Windows 8.1

    Windows 8

    Uaspstor.sys 是用于支持批量流终结点的 SuperSpeed USB 设备的类驱动程序。有关详细信息,请参阅:
    集线器 (09h)

    USB

    {36fc9e60-c465-11cf-8056-444553540000} 

    Usbhub.sys

    Usb.inf

    Windows 8.1

    Windows 8

    Windows 7

    Windows Server 2008

    Windows Vista

    Windows Server 2003

    Windows XP

    Windows 2000

    Microsoft 提供了 Usbhub.sys 驱动程序来管理 USB 集线器。有关集线器类驱动程序与 USB 堆栈间关系的详细信息,请参阅 USB 驱动程序堆栈体系结构

    Usbhub3.sys

    Usbhub3.inf

    Windows 8.1

    Windows 8

    Microsoft 提供了 Usbhub3.sys 驱动程序来管理 SuperSpeed (USB 3.0) USB 集线器。

    当 SuperSpeed 集线器连接到 xHCI 控制器时加载该驱动程序。请参阅 USB 驱动程序堆栈体系结构

    CDC 数据(0Ah) - - - 建议的驱动程序:WinUSB (Winusb.sys)
    智能卡 (0Bh)

    SmartCardReader

    {50dd5230-ba8a-11d1-bf5d-0000f805f530}

    Usbccid.sys(已过时)

    Windows 7

    Windows Server 2008

    Windows Vista

    Windows Server 2003

    Windows XP

    Microsoft 提供了 Usbccid.sys 微型类驱动程序,用于管理 USB 智能卡读卡器。 有关 Windows 中智能卡驱动程序的详细信息,请参阅智能卡设计指南

    请注意,对于 Windows Server 2003、Windows XP 和 Windows 2000,需要遵照特殊说明加载此驱动程序,因为此驱动程序的发布时间可能晚于这些操作系统的发布时间。

    注意  

    Usbccid.sys 驱动程序已替换为 UMDF 驱动程序 WUDFUsbccidDriver.dll。

    WUDFUsbccidDriver.dll

    WUDFUsbccidDriver.inf

    Windows 8.1

    Windows 8

    WUDFUsbccidDriver.dll 是用户模式的驱动程序,用于 USB CCID 智能卡读取器设备。
    内容安全性 (0Dh) - - - 建议的驱动程序:USB 通用父驱动程序 (Usbccgp.sys)。在 Usbccgp.sys 中实现了一些内容安全性功能。请参阅Usbccgp.sys 中的内容安全性功能
    视频 (0Eh)

    图像

    {6bdd1fc6-810f-11d0-bec7-08002be2092f}

    Usbvideo.sys

    Usbvideo.inf

    Windows Vista

    Windows XP

    Microsoft 通过 Usbvideo.sys 驱动程序提供了 USB 视频类支持。有关详细信息,请参阅 AVStream 微型驱动程序中的“USB 视频类驱动程序”。

    请注意,对于 Windows XP,需要遵照特殊说明加载此驱动程序,因为此驱动程序的发布时间可能晚于操作系统的发布时间。

    个人医疗(0Fh) - - - 建议的驱动程序:WinUSB (Winusb.sys)
    音频/视频设备(10h) - - -  
    诊断设备 (DCh) - - - 建议的驱动程序:WinUSB (Winusb.sys)
    无线控制器 (E0h)
    注意  支持子类 01h 和协议 01h

    蓝牙

    {e0cbf06c-cd8b-4647-bb8a-263b43f0f974}

    Bthusb.sys

    Bth.inf

    Windows 8.1

    Windows 8

    Windows 7

    Windows Vista

    Windows XP

    Microsoft 提供了 Bthusb.sys 微型端口驱动程序,用于管理 USB 蓝牙无线电。 有关详细信息,请参阅蓝牙设计指南
    其他 (EFh)

    Net

    {4d36e972-e325-11ce-bfc1-08002be10318}

    注意  支持子类 04h 和协议 01h

    Rndismp.sys

    Rndismp.inf

    Windows 8.1

    Windows 8

    Windows 7

    Windows Vista

    Windows XP

    在 Windows Vista 之前,CDC 支持仅限带有供应商特有协议 (bInterfaceProtocol) 值 0xFF 的特定于 RNDIS 的抽象控制模型 (ACM) 实现。RNDIS 设施在单独一个类驱动程序 Rndismp.sys 中集中了所有 802 式网卡的管理。有关远程 NDIS 的详细信息,请参阅远程 NDIS 概述。远程 NDIS 与 USB 的映射是在 Usb8023.sys 驱动程序中实现的。有关 Windows 中网络支持的详细信息,请参阅网络与无线技术网站。

    应用程序特定 (FEh) - - - 建议的驱动程序:WinUSB (Winusb.sys)
    供应商特定 (FFh) - - - 建议的驱动程序:WinUSB (Winusb.sys)

     




    from:http://blog.csdn.net/m_o_bz/article/details/44230103


    展开全文
  • 一加手机USB驱动程序是一款在一加手机连接电脑时必备的驱动程序,一加手机OnePlus One在用数据线连接电脑的时候,电脑上必须要安装一加手机驱动才可以,不然的话,电脑就识别了手机,就没办法往下进行操作了。...
  • USB 接口驱动程序开发

    2020-11-03 19:14:58
     随着微机技术水平的日益提高,传统的计算机接口已经能满足当前计算机高速发展的需求,计算机业迫切需要一种新的通用型、高速总线接口,通用外设接口标准USB 就应运而生。  USB,全称是Universal Serial Bus(通用...
  • 奥睿科WRE-150迷你USB网卡驱动是由小编文件大家提供的无线网卡驱动软件!一站式解决网卡能识别、运行的问题!完美支持的操作系统包括Windows和Linux系统。需要的用户快来本站拿走吧!奥睿科WRE-150驱动安装:以...
  • 万能usb2.0驱动程序是一款实用的usb驱动软件,可以轻松解决usb设备故障以及使用正常的问题,欢迎有需要的朋友下载体验!驱动介绍其实现在大部分的系统都是封装的XPSP2,SP3ghost系统,一般都带有USB2.0万能驱动,...
  • 英特尔于今年秋季全新发布了第11代处理器(Intel Tiger Lake),采用新的Intel Volume Management Device技术,可以优化储存...当您安装Windows 10零售版/企业版本操作系统时,都需要在安装过程中加载IRST 驱动程序...

    英特尔于今年秋季全新发布了第11代处理器(Intel Tiger Lake),采用新的Intel Volume Management Device技术,可以优化储存装置的数据处理效率与耗电量。但是近期有部分抢先尝鲜的小伙伴发现,搭载11代U的机器在安装win10时会遇到认不到硬盘的情况,这该如何解决呢?

    ab4b8afe1d3baedd1461ea241921dafb.png

    当您安装Windows 10零售版/企业版本操作系统时,都需要在安装过程中加载IRST 驱动程序才能正常安装

    如果您的计算机是英特尔第11代处理器(Intel Tiger Lake),且遇到安装Windows 10的过程中无法找到驱动器(硬盘),可以参考以下步骤加载IRST驱动来解决问题哦~

    1 下载Intel Rapid Storage Technology (IRST)驱动程序,并将其复制到安装U盘。

    请下载Intel Rapid Storage Technology (IRST)驱动程序。

    下载完成后,鼠标右键点击下载好的压缩文件并选择【全部解压缩】。

    d24287a1f1b319205da2cc27d7787c68.png
    4163eb3339658390555be692a36a38a6.png

    解压缩完成后,请将解压缩后的文件夹整个复制到您系统的安装U盘。

    c8ccb209455a4a0f609b8396790556c2.png

    2 安装Intel Rapid Storage Technology (IRST)驱动程序。

    将IRST驱动复制到安装U盘后,接下来我们继续安装系统。然后在卡住的想将Windows安装在哪里的画面找不到任何驱动器时,手动选择【加载驱动程序】。

    b2576be29e4fc6d1f29ea3015eddd339.png

    点击【确定】;

    e7eb75e0f482d38b5674f13d24de9447.png

    点击【确定】;

    45ae8d503eaa75dbe338883583a3c358.png

    点击【浏览】,找到刚刚的IRST文件夹,然后点击【确定】;

    b2e2ddfa366578fa0028090d20629569.png

    选择【Intel RST VMD Controller 9A08 (TGL)】 ,然后点击【下一步】就会开始安装驱动程序;

    feae9c8a03aae2a580adcd3c669c5ed9.png

    驱动程序安装完成后,驱动器即可正常显示。然后继续安装系统就大功告成啦!

    83a819756093cbe275464a3555adcdfe.png
    展开全文
  • 1. 前置作业● 在将USB装置连接至计算机以前,例如打印机、扫描仪等等,可能需要先安装制造商的USB装置软件或驱动程序。请确认您的计算机已经依照USB装置制造商提供的安装文件操作。● 如果您有另一台计算机,尝试在...

    1. 前置作业

    ● 在将USB装置连接至计算机以前,例如打印机、扫描仪等等,可能需要先安装制造商的USB装置软件或驱动程序。请确认您的计算机已经依照USB装置制造商提供的安装文件操作。

    ● 如果您有另一台计算机,尝试在另一台计算机插入此USB装置。如果在另一台已知良好的计算机上也侦测不到或是无法正常工作,则该USB装置可能有异常,建议您与装置制造商联系。

    2. 更新Windows Update

    更新Windows Update与驱动程序,检查Windows更新,了解更多如何执行Windows Update。

    如果装置仍然无法正常运作,请继续下一个步骤。

    返回目录

    3. 透过设备管理器重新安装USB根集线器驱动程序

    3-1. 移除计算机上的所有USB装置。

    3-2. 在Windows搜寻栏输入[设备管理器]①,然后点选[打开]②。

    d3429efe5143dacbdf294c831c89a72f.png

    3-3. 卸载USB根集线器的驱动程序。点击[通用串行总线控制器]装置类型旁边的三角形③。于[USB根集线器]点击鼠标右键④,并点选[卸载设备]⑤。

    e69369eea3e4dd695b14ce69076c5d85.png

    3-4. 点选[卸载]⑥。

    691d9ce8529d8f45cbd78a4998cba747.png

    3-5. 重复步骤3-3和3-4以卸载所有USB根集线器

    3-6. 重新启动计算机。将计算机重新启动后,系统将会自动安装驱动程序。如果装置仍然无法正常运作,请继续下一个步骤。

    4. 透过设备管理器重新安装USB主机控制器驱动程序

    4-1. 移除计算机上的所有USB装置。

    4-2. 在Windows搜寻栏输入[设备管理器]①,然后点选[打开]②。

    d3429efe5143dacbdf294c831c89a72f.png

    4-3. 卸载USB主机控制器的驱动程序。点击[通用串行总线控制器]装置类型旁边的三角形③。于[USB主机控制器]点击鼠标右键④,并点选[卸载设备]⑤。

    654beeef98458d1859d6d95ec05f318e.png

    4-4. 点选[卸载]⑥。

    bc0a591a5a678af158858c6177ec871b.png

    4-5. 重复步骤4-3和4-4以卸载所有USB主机控制器

    4-6. 重新启动计算机。将计算机重新启动后,系统将会自动安装驱动程序。如果装置仍然无法正常运作,请继续下一个步骤。

    5. 透过系统还原点还原系统

    如果您先前已有建立系统还原点、或是系统建立的自动还原点,尝试将系统还原至距离最近一次正常启动时的还原点。

    6. 系统还原

    如果所有的故障排除步骤已完成,但问题仍然存在,请在备份后,进行系统还原。

    展开全文
  • Netgear网件WNA1100 USB无线网卡驱动10.0.0.20beta版For Win8-32/Win8-64(2014年1月9日发布)USB无线网卡小巧方便,不过最困扰人的恐怕就是驱动的问题了,如果装上合适的驱动,可能就会遇到掉线、稳定等问题。...
  • 用户升级E路航电子狗后,再连接电脑时,经常找到电子狗的驱动程序。小编今天就帮大家找到了xp系统上的usb驱动! 功能介绍 E路航电子狗在连接电脑时需要安装的驱动,支持XP等系统,在升级电子狗时也需要安装这个...
  • 红米3手机USB驱动程序是一款可以有效解决红米3手机无法正常连接电脑问题的驱动程序,本站提供了红米3手机USB驱动程序下载地址,有需要的朋友们可以前来下载使用。 下面来说说咱们的红米3手机的驱动了,对于驱动咱们...
  • 而开发专用USB设备,需要开发专用的驱动程序。Windows2000/XP操作系统允许用户程序直接访问硬件设备。为了实现对硬件设备的访问和控制,必须通过操作系统所认可的驱动程序对硬件设备实现间接访问和控制。驱动程序...

    1引言
    目前对于诸如USB鼠标、键盘等这样的计算机标准外设,Windows系统已经提供了标准的驱动程序,用户无需再进行任何开发工作。而开发专用USB设备,需要开发专用的驱动程序。
    Windows2000/XP
    操作系统不允许用户程序直接访问硬件设备。为了实现对硬件设备的访问和控制,必须通过操作系统所认可的驱动程序对硬件设备实现间接访问和控制。驱动程序通常被认为是操作系统的组成部分,所以,开发驱动程序有严格的规范,被认为是计算机高手的工作。而利用DDK进行基于WDMWin32 Driver Model)驱动程序开发,使驱动程序的开发变成了一项比较简单的工作。
    2 Win32
    驱动程序模型
    USB
    设备驱动程序必须符合由MicrosoftWindows 98及其后版本所定义的Win32驱动程序模型(Win32 Driver ModelWDM)规格。这些驱动程序称为WDM驱动程序,扩展名为.sys
    WDM
    定义了一个基本模型,处理所有类型的数据。例如,USB类驱动程序为所有USB 设备提供了一个抽象的模型,并具有由所有客户驱动程序使用的定义好的接口。有了对所有设备类型共同的核心驱动程序模型,使驱动程序开发人员更容易从一种类型的设备移动到另外一种类型的设备上去。而且它也意味着驱动程序模型的内核实现尽可能是固定的。
    USB
    是使用标准Windows系统USB类驱动程序访问USBDIWindows USB驱动程序接口)的USB设备驱动程序。USBD.sys就是Windows系统中的USB类驱动程序,它使用UHCD.sys来访问通用的主控制器接口设备,或者使用OpenHCI.sys访问开放式主控制器接口设备。USBHUB.sys是根集线器和外部集线器的USB驱动程序。在PCI枚举器发现了USB主控制器之后,它会自动装入相关的驱动程序。
    3 Windows USB
    驱动程序接口
    大多数客户化的USB设备需要由用户来编写设备驱动程序,以响应内核态或用户应用程序的请求。在内核级,命令由客户驱动程序使用内部IOCTL发送给USB系统,例如IOCTL-INTERNAL-USB-SUBMIT-URB允许发出USB请求块(URB)给系统USB驱动程序。URB允许发出几个功能调用给USB系统。用户态USB实用程序也可以发出几个普通IOCTLUSB设备,目的仅仅是得到连接设备的信息。
    3.1
    函数驱动程序
    函数驱动程序(function driver)让应用程序与USB设备,通过API函数来沟通。这些API函数属于WindowsWin32子系统,Win32子系统同时也管理着执行应用程序。函数驱动程序与较低级的总线驱动程序沟通,总线驱动程序控制着硬件。
    1是应用程序与各个驱动程序,如何一起完成USB通信的结构图。当设备或子类别的要求超过类别驱动程序的能力时,会有辅助的过滤器驱动程序来类别驱动程序的能力。一个上层的过滤驱动程序位于类别驱动程序的上方。这样,从客户应用程序传来的要求,会先经过上层的过滤驱动程序,然后才传给类别函数驱动程序。一个下层的过滤驱动程序位于类别驱动程序和总线驱动程序之间,如图1。类别驱动程序会将要求传给下层的过滤驱动程序,然后再传给总线驱动程序。
     
    图1应用程序与驱动程序完成USB通信的结构
    通用串行总线驱动程序(USBD.SYS)是USB系统中负责管理通用串行总线的工作,位于主机上的一个软件。USBD负责控制所有的USB协议操作和高层的中断处理控制。在Windows98及以上版本中,Microsoft定义了一个新的设备驱动程序模型,称之为Windows设备驱动程序模型(WindowsDriver ModelWDM)。
    USB
    客户应用程序也是一种设备驱动程序,通过定义的一个称之为USB接口的层间接口来访问其下方的USB软件。应用程序正是通过这些USB客户软件来实现与USB设备之间的通信。
    针对USB客户应用程序的开发,相应版本的Windows操作系统的设备驱动程序开发包(Device Driver Developer’s Kit,DDK)给出了相应的USB接口函数。并提供了对于这些函数具体使用的参考文档。
    3.2
     USBDIIOCTL
    为了编写USB设备驱动程序,通常还要在源代码中包含DDK所提供的几个头文件。这些头文件在Windows98下存放在/98DDK/inc/win98目录中,在Windows 2000下存放在/NTDDK/inc/win2000目录中。这些头文件的用途可以总结如下:

    usb100.h 
    定义了在USB设备驱动程序设计中所要用到的各种常量和数据结构。
    Usbdi.h   USBDI
    例程,其中包括对USBDUSB设备驱动程序通用的数据结构,适用于内核和用户模式。
    Usbdlib.h  URB
    构造和各种例程,定义了USBD所输出的服务,适用于内核和用户模式。
    Usbioctl.h 
    给出了对IOCTL的定义,其中包括对USBDUSB设备驱动程序通用的数据结构,适用于内核和用户模式。
    USB
    类驱动程序主要通过USB驱动程序接口(USBDI)的内部IOCTL使用。因为它们都是内部IOCTL,所以只能用于内核的调用但却不能用于用户态的应用程序。DDK usbioctl.h头文件源代码说明了如何定义和使用这些IOCTL,这些内部IOCTL实际上是利用Windows系统提供的ICO-CODE宏而由驱动程序开发人员新定义的I/O控制代码。
    4
     USB设备驱动程序的实现
    4.1
    驱动程序的开发环境
    Microsoft
    公司提供的驱动程序开发包(DDK)提供了许多工具、函数及实例,还有详细的开发文档,使用起来比较方便,尤其在Win32驱动程序模型(WDM)出现以后,使用DDK开发驱动程序变得更加简化。本文就是在Windows 2000下使用DDK来进行相应驱动程序的开发。并且使用Visual C++作为编程工具。
    4.2
    驱动程序的组成及各部分主要功能
    一个WDM设备驱动程序通常可以完成下面这些工作:初始化;创建、删除设备;即插即用处理;访问硬件;处理电源管理;使用WMI处理Win32 I/O及控制请求等等。除WMI外,本文涉及到了以上的所有其它设备,并将这些功能划分为不同设备,借助Visual C++予以实现。表1列出了开发的驱动程序主要功能。其中,初始化设备“Init.cpp”是必不可少的。它包含有一个驱动程序的初始化入口点:具有标准函数原型的DriverEntry例程。当驱动程序被装入时,内核调用这个例程。DriverEntry例程的主要工作是在传递的驱动程序对象(DriverObject)中存储一系列回调例程的指针,以便于在分发例程中调用对应的例程来处理IRP。在即插即用管理设备“PnP.cpp” 中有一个AddDevice 例程,它是PnP管理器在用户插入新设备时调用来创建WDM设备对象的例程。

     

    4.3 驱动程序的设计
    一般来讲,软件下载可以通过用户层应用程序来进行,也可以由驱动程序来完成。对于没有采用外部ROM硬件设计,设备的固件需要由USB芯片中的内部RAM来存储,软件采用由驱动程序下载的方式。这样一来,驱动程序不但要提供主机与设备间的通信功能,而且要具有软件下载的功能。因此,每个设备需要两个驱动程序文件和一个INF文件。可将多个设备硬件描述信息放在一个INF文件中;多个设备使用同一个通用驱动程序;固件下载驱动程序随设备不同而异。
    固件下载驱动程序只具有下载固件的功能,设备与主机间的通信功能由通用驱动程序来完成。当设备插入主机时,由设备上EEPROM中存储的相关设备标识按照INF文件中的指令,首先安装固件下载驱动程序,将固件下载至EZ-USB芯片的内部RAM。然后通过重新枚举,由固件中包含的设备标识按照INF文件中的指令安装通用驱动程序。这样就完成了整个驱动程序的安装,主机即可对设备进行读写,实现与USB设备的通信。
    驱动程序文件应安装在操作系统指定指定文件夹。在Windows 2000操作系统下,固件下载驱动程序和通用驱动程序安装在/WINNT/system32/drivers文件夹,INF文件安装在/WINNT/inf文件夹;在Windows 98/me/XP操作系统下, 固件下载驱动程序和通用驱动程序安装在/Windows/system32/drivers文件夹,INF文件安装在/ Windows /inf文件夹。
    5
     USB驱动程序装载
    5.1
     INF文件
    INF
    文件是一个文本文件,它含有安装一个设备驱动程序需要的所有必需的信息,包括要复制的文件列表、要创建的注册表项等,用以告诉Windows使用哪一个驱动程序。即一旦Windows检测到一个新的USB设备时,设备管理器会将所有的系统 INF文件,与从设备读取的描述符信息相比较,然后决定加载哪一个驱动程序。在Windows 98Windows 2000上均有相应的快速检测机制,用于加速检测。
    INF
    文件由若干区段(section)组成,用于帮助Windows识别设备,寻找合适的驱动程序,以及将设备信息储存在系统的注册表内。下面列出几个区段及其功用:
     Version
    区段:是l INF文件的表头;
     ClassInstall
    区段:安装注册表内的Class区段的一个新类别;l
     Manufacture
    区段:用来识别设备,并为每一个设备定义一个安装区段;l
     DestinationDirs
    区段:定义CopyFileReadFileDelFile项目所使用的文件夹;l
     Strings
    区段:定义其他区段内所指定的字符串。l
    值得注意的是,EEPROM中包含的产品IDPID)和厂商IDVID)和固件代码程序中所包含的PIDVID分别对应INF文件中的两组ID,由一个INF文件根据这两组ID进行两次枚举,即完成驱动程序的安装。以UM-2002IOUSB通用数字IO设备的.inf为例,两组ID号如下定义:
    [Manufacturer]
    %Cypress%=Cypress
    [Cypress]
    %USB/VID_04B4&PID_0366.DeviceDesc%=EZUSBDIGIT.Dev,USB/VID_04B4&PID_0366
    %USB/VID_04B4&PID_0306.DeviceDesc%=EZUSBDI.Dev, USB/VID_04B4&PID_0306
    第一组为EEPROM中包含的ID号,第二组为固件代码程序中包含的ID号。
    5.2
     WDM驱动程序的安装过程
    驱动程序是根据INF文件中的指令来进行安装的。首先,Windows使用 Device Interface描述符中的值来选择装入哪个驱动程序。Windows一开始使用描述符的厂商和产品域(idVendoridProduct bcdDevice)形成硬件ID 。如果找不到与硬件ID型号匹配的安装INF文件,Windows 将从 Interface的类型域bInterfaceCIassbInterfaceSubCIass bInterfaceProtocoI形成兼容ID.。然后,Windows会搜索处理这些兼容ID中某一个的安装文件。如果没有找到安装文件,它会提示用户安装新的设备驱动程序。选择的安装文件会指定要装入的设备驱动程序。并在Windows内部的注册表中注册。
    插入USB设备后,如果操作系统找到了匹配设备硬件的INF文件,则会自动完成驱动程序的装载。如果没有找到匹配的INF文件,则在系统的提示下通过手工选择安装文件同样可以完成驱动程序的加载,而且,使用后的INF文件会自动复制到Windows下的INF子目录,这样,在下次插入USB设备时,系统无需提示会自动完成安装过程。
    6
     驱动程序的开发过程
    基于EZ-USB系列芯片的设备驱动程序开发分为如下主要工作。
     
    完成设备固件程序编写;l
     
    建立下载固件驱动程序;l
     
    建立通用设备驱动程序;l
     
    编写INF文件l
     
    制作打包分发程序。l
    下面以Windows 2000操作系统为例,详细介绍采用NTDDKVisual C++ 6.0工具,建立USB设备驱动程序的方法:
    6.1
    固件代码的设计
    6.2
    下载固件驱动程序的建立
    建立下载固件驱动程序可分以下7步进行:
    CYPRESS开发包内的EZLORADER目录下的文件拷贝到自己建立的目录下(如:D:/USBDR/RELDDR)。
    C:/CYPRESS/USB/BIN中的HEX2C.EXEC:/NTDDK/BIN中的BUILD.EXE文件拷贝到D:/USBDR/RELDDR目录下。
    将自己开发的固件程序的十六位制文件(如PORTC.C)拷贝到D:/USBDR/RELDDR目录下。
    D:/USBDR/RELDDR目录的SOURCES文件中的TARGETNAME=EZUSB行改为自己的文件名如:TARGETNAME=“driveroffirm”
    Dos操作符下,用HEX2C.EXE将编译好的固件十六位制文件形式,转换为C文件。即:HEX2C PORTC.HEX PORTC.CPORTC.C中的INTEL_HEX_RECODE结构数组代替FIRMWARE.C中的INTEL_HEX_RECODE结构数组。
    f
    BUILD.EXE编译,即在命令行方式下键入BUILD –c。正常情况下,应在D:/USBDR/RELDDR/lib/j386目录中生成RELDDR.SYS文件。(若不能生成RELDDR.SYS文件,进入C:/NTDDK/BIN目录,在命令行方式下键入SETENV C:/NTDDK回车,此时显示设置环境完成,在返回运行BUILD –c。注:系统必须装VC++5.0以上的版本)
    g
    将生成的驱动程序文件放到  //SYSTEM32/DRIVER目录中。
    6.3
    通用驱动程序的建立
    建立驱动程序也可象建立下载固件驱动程序一样分为若干步,但是如果没有特殊要求,Cypress公司提供的通用驱动程序可满足大多数应用需要,可以采用改写通用驱动程序名字的方法,将通用驱动程序重命名为自己的固件文件名,或者直接用通用驱动程序。并将该驱动程序文件放到  //SYSTEM32/DRIVER目录中。
    6.4
    建立INF文件
    上面详细介绍了INF文件结构,建立INF文件最好的方法是用实例INF文件改写,即拷贝一个INF实例文件的复本,将这个复本改写为符合自己要求的INF文件。具体操作如下步骤所列。
     
    将实例INF文件另存为自己的INF文件,如yunio.infl
     
    在自己的INF文件中,规划好两组PIDVID号,前一组为EEPROM中的ID号,后一组ID要与固件程序中的ID一致;l
     
    用自己建立的两个驱动程序文件名替代实例INF文件中使用的驱动程序文件名;l
     
    [...File.Inf]区段实例INF文件名更换为自己的INF文件名。l
     
    在最后的[String]l 区段可以添加开发者的信息和该设备的名称。
    7
    驱动程序的打包
    建立生成了上述驱动程序文件之后,需要将其打包制作安装盘,以便于分发使用。但驱动程序的打包应该包含以下内容:
    下载固件驱动程序;
    通用驱动程序;
    INF
    文件。
    8
    结束语
    应用上述的专用USB设备驱动程序的开发方法及步骤,开发了USB通用数据采集器及USB任意波形发生器等设备,通过实践表明应用DDK进行基于WDMWin32 Driver Model)的专用USB设备的驱动程序开发,使驱动程序的开发变成了一项比较简单易行的工作。可以大大提高开发效率、缩短开发周期。使开发者可将主要精力集中于实现设备功能上,而不需要重复一些底层的工作。为USB技术在系统检测、诊断领域提供了一个很好的借鉴。

    展开全文
  • 鼠标键盘是电脑的外接设备,在使用它们的时候需要用到对应的驱动程序,不然会无法响应运行。有用户反应新买的鼠标键盘,插入电脑后,驱动程序一直检测到,这是怎么回事呢?通常是因为接口损坏或者驱动兼容导致,...
  • LDD:USB驱动程序

    2021-01-23 20:17:35
    2. USB主控制器负责询问每一个USB设备是否有数据需要发送,一个USB设备在没有主控制器要求的情况下是能发送数据的。 3. USB设备具有要求一个固定的数据传输带宽的能力,以可靠地支持视频和音频IO。另一个重要的...
  • 一个usb网卡驱动程序

    2011-11-22 16:27:47
    一个usb网卡在linux下的驱动源代码。需要将mii.c和usbnet.c编译到内核中。但是目前为止还有__bad_udelay找到的问题存在。
  • 提示选驱动时 点取消。 再点右上角 关闭窗口。 然后回到安装的第一个画面。...就没有这个找到cd 驱动的错误了。   这个Microsoft Installer的bug. 在安装中没有记住usb的连接信息。所以需要拔下,在插。
  • 不需要root访问权限,ADK或特殊的内核驱动程序; 所有驱动程序均以Java实现。 您将获得带有read() , write()和的原始串行端口,以与您自己的协议一起使用。 快速开始 1.将库添加到您的项目: 将jitpack.io存储库...
  • 随着计算机应用技术的发展,虚拟仪器、自动测试系统、自动控制等领域,均越来越多的应用计算机来...但专用的USB设备能像鼠标、键盘等HID类设备一样使用Windows系统提供的标准驱动程序,而是需要开发专用的驱动程序
  • 联想A3900手机USB驱动程序是一款可以有效解决联想A3900手机在使用过程中出现的一些问题的驱动工具,本站提供了联想A3900手机USB驱动下载地址,有需要的朋友们可以前来下载使用。 不管我们的联想A3900在连接电脑同步...
  • USB驱动程序打包

    千次阅读 热门讨论 2008-07-26 07:34:00
    最近公司需要软件的安装包。先前没有做个开发包,以为会挺难的。看了IS12的教程后,简单测试了一个应用程序打包,一路NEXT,就完成打包了,TEST下,还成功了,这不得归功于... 废话扯了,来看驱动程序
  • 安装原始设备制造商 USB 驱动程序

    千次阅读 2016-09-10 16:45:26
    安装原始设备制造商 (OEM) USB 驱动程序 Android 开发者 -> Android Studio -> 用户指南...如果您在 Mac OS X 或 Linux 上开发,则不需要 USB.
  • 软件介绍: USB-X下载线连接电脑USB接口前,需要先安装这个驱动,才能够识别得到,安装将无法识别新硬件。
  • 对于在诸如Samsung Galaxy S2的真实设备上进行Android开发,您需要安装Samsung OEM驱动程序USB驱动程序 。 该Android OEM驱动程序文档将指导您在何处下载……但是该指南并容易遵循。 实际上,“ 三星USB驱动...
  • 贝尔金无线局域网卡驱动,这个驱动我曾经找遍各大网站论坛都没有,连贝尔金官方网站都提供,幸好后来自己找到了光盘。给有需要的朋友。
  • 解决小米手机刷了V4或者V5系统后连接电脑可以显示硬件图标但是显示不出内存卡盘符以及连接手机...安装完驱动后需要重新打开USB调试,然后选择驱动解压后的路径即可,或者到设备管理器中右键Android然后安装驱动程序
  • 内核使用2.6  拓扑结构上, 一个 USB 子系统并不是...USB主控制器负责询问每个USB设备是否有数据需要发送。 由于这个拓扑结构,一个 USB 设备在没有主控制器要求的情况下能发送数据. 也就是说:USB是单主方式的

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 793
精华内容 317
关键字:

usb不需要驱动程序