搜档网
当前位置:搜档网 › USB INF文件详解(USB)

USB INF文件详解(USB)

USB INF文件详解(USB)
USB INF文件详解(USB)

INF文件详解

INF文件格式要求

一个INF文件是以段组织的简单的文本文件。一些段油系统定义(System-Defined)的名称,而另一些段由INF文件的编写者命名。每个段包含特定的条目和命名,这些命名用于引用INF文件其它地方定义的附加段。

INF文件的语法规则:

1、要求的内容:在特定的INF文件中所要求的必选段和可选段、条目及命令依赖于所要安装的设备组件。端点顺序可以是任意的,大多数的INF文件安装惯用的次序来安排各个段。

2、段名:INF文件的每个段从一个括在方括号[]中的段名开始。段名可以由系统定义或INF编写者定义

在Windows 2000中,段名的最大长度为255个字符。在Windows 98中,段名不应该超过28个字符。如果INF设计要在两个平台上运行,必须遵守最小的限制。段名、条目和命令不分大小写。在一个INF文件中如果有两个以上的段有相同的名字,系统将把其条目和命令合并成一个段。每个段以另一个新段的开始或文件的结束为结束。

3、使用串标记:在INF文件中的许多值,包括INF编写者定义的段名都可以标示成%strkey%形式的标记。每个这样的strkey必须在INF文件的Strings 段中定义为一系列显示可见字符组成的值。

4、行格式、续行及注释:段中的每个条目或命令以回车或换行符结束。在条目或命令中,“\”可以没用做一个显示的续行符;分好“;”标示后面的内容是注释;可以用都好“,”分隔条目和命令中提供的多个值。

INF文件举例

下面是一个完整的.inf文件,它是Windows 2000 DDK提供的USB批量阐述驱动程序范例中所附的.inf文件。

; Installation inf for the Intel 82930 USB Bulk IO Test Board

;

; (c) Copyright 1999 Microsoft

;

[Version]

Signature="$CHICAGO$"

Class=USB

ClassGUID={36FC9E60-C465-11CF-8056-444553540000}

provider=%MSFT%

DriverVer=08/05/1999

[SourceDisksNames]

1="BulkUsb Installation Disk",,,

[SourceDisksFiles]

BULKUSB.sys = 1

BULKUSB.inf = 1

[Manufacturer]

%MfgName%=Microsoft

[Microsoft]

%USB\VID_045E&PID_930A.DeviceDesc%=BULKUSB.Dev,

USB\VID_045E&PID_930A

;[PreCopySection]

;HKR,,NoSetupUI,,1

[DestinationDirs]

BULKUSB.Files.Ext = 10,System32\Drivers

BULKUSB.Files.Inf = 10,INF

[BULKUSB.Dev]

CopyFiles=BULKUSB.Files.Ext, BULKUSB.Files.Inf

AddReg=BULKUSB.AddReg

[BULKUSB.Dev.NT]

CopyFiles=BULKUSB.Files.Ext, BULKUSB.Files.Inf

AddReg=BULKUSB.AddReg

[BULKUSB.Dev.NT.Services]

Addservice = BULKUSB, 0x00000002, BULKUSB.AddService

[BULKUSB.AddService]

DisplayName = %BULKUSB.SvcDesc%

ServiceType = 1 ; SERVICE_KERNEL_DRIVER

StartType = 3 ; SERVICE_DEMAND_START

ErrorControl = 1 ; SERVICE_ERROR_NORMAL

ServiceBinary = %10%\System32\Drivers\BULKUSB.sys

LoadOrderGroup = Base

[BULKUSB.AddReg]

HKR,,DevLoader,,*ntkern

HKR,,NTMPDriver,,BULKUSB.sys

HKLM,"System\Currentcontrolset\Services\BulkUsb\Parameters","Maxi mumTransferSize",0x10001,4096

HKLM,"System\Currentcontrolset\Services\BulkUsb\Parameters","Debu gLevel",0x10001,2

[BULKUSB.Files.Ext]

BULKUSB.sys

[BULKUSB.Files.Inf]

BulkUsb.Inf

;---------------------------------------------------------------;

[Strings]

MSFT="Microsoft"

MfgName="Intel"

USB\VID_045E&PID_930A.DeviceDesc="BulkUsb.Sys Intel 82930 USB Bulk IO Test Board"

BULKUSB.SvcDesc="BulkUsb.Sys i82930 Bulk IO test driver"

INF文件详解

从上面完整的例子来看,可以对INF文件有的一个总体的印象,包括INF

文件中包括的段,以及各段的书写格式。下面详细介绍组成INF文件的各个段。

1、[Version]段

习惯上,每个INF文件都开始于一个Version段,这段确定文件中描述的设备类型,上述范例中的Verson段有如下几条语句:

Signature=”$CHICAGO$”

Class=USB

ClassGUID={36FC9E60-C465-11CF-8056-444553540000}

provider=%MSFT%

DriverVer=08/05/1999

Signature指定使用此INF文件的操作系统,可以是$Chicage$、$Windows NT$(含有一个空格)、$Windows 95$(含有一个空格)之一,定界符$必不可少,且这些串是不分大小写的。如果Signature的值不是这些有效的串之一,该INF

文件就被人为无效。如果一个INF文件用来向Windows 2000和Windows 98两个平台上安装设备驱动程序,它必须通过DDInstall段来增加系统定义的扩展指定任意操作系统特有的安装信息,而不管Signature是何值。

Class指定设备的类名,此范例中指定的是USB类。ClassGuid指定设备注册表的GUID,GUID是一个128位的标识符,DDK头文件DEVGUID.h定义了标准设备类的GUID。

Provide标志该INF文件的提供者。%MSFT%的具体内容将在Strings段中定义,范例中的定义是MSFT=”Microsoft”,表明该INF文件的提供者是Microsoft。

DriverVer条目提供整个INF文件的版本信息,在每个Install段中加上DriverVer条目,为驱动程序提供版本信息。Install段的驱动程序版本条目更具有专用性,并且比Version段的全局DriverVer条目日期具有更高的优先级。当操作系统搜索驱动程序时,他会选择一个具有更近的DriverVer日期的驱动程序代替一个较早的驱动程序。如果一个INF没有DriverVer条目,操作系统将会用缺省的日期00/00/0000。

2、[SourceDiskNames]段

该段制定并且命名一个或多个包含源文件的磁盘,这些源文件用于文件拷贝或者重命名操作。该段可以有任意条目,每个条目对应一个源盘。条目格式如下:disk=%strkey%|”disk-description”,[tagfile],[unused],[path]

diskid是标志一个源盘的非负整数。这个值可以是十六进制或者十进制的形式标示,但他不能占用多余4个字节的存储单元。等式右边规定一个%strkey%标记或者一个引号引起来的串,描述由diskid所标示盘符的内容或目的。在安装过程中安装程序可以给终端用户显示这个串值。TagFile是一个可选的值,规定一个所带磁盘上提供的特征文件名,不规定任何目录和子目录。安装程序使用特征文件核对用户插入正确的安装盘。特征文件只能用于可移动的介质。

Unused值不用在Windows 2000中,只用在Windows 9x中。Path也是个可选项,用于标识磁盘上包含源文件的目录路径。范例中SourceDisksNames段的内容如下:

[SourceDiskNames]

1=”BulkUsb Installation Disk”…

范例规定源盘为磁盘1,在安装期间,安装程序可以给终端用户显示字符串“BulkUsbInstallation Disk”。

3、[SourceDisksFiles]段

该段命名安装过程中所用的源文件,标志包含这些源文件的磁盘(或者

CD-ROM),并提供在所带磁盘上包含的每个文件的目录路径。一个SourcesDisksFiles段可以有任意多条目,磁盘上每个文件都有一个条目。它所包含的条目格式为

filename=disked[,[subdir][,size]]。

Filename规定磁盘上源文件的名称;diskid对顶一个整数来标志包含源文件的磁盘,即在

SourceDisksNames段中规定的diskid;subdir是个可选值,它规定了源磁盘上的文件所在的子目录,如果该条目省略,指定的源文件或者在给定磁盘的根目录中,或者在由SourceDisksNames段中的path条目所指定的目录;size也是个可选值,规定了给定文件的非压缩长度,其以字节标示。范例中SourceDisksFiles段的内容如下:

[SourceDisksFiles]

BULKUSB.sys=1

BULKUSB.inf=1

范例中为两个文件建立的条目,这两个文件都在磁盘1中,并且在根目录下。

4、[Manufacturer]段

该段标志一个或者多个用INF文件安装的设备的制造商,它也为制造商的设备即驱动程序的安装定义Models段名。每个INF文件都必须有Manufacturer 段。

上述范例的Manufacturer段有一个条目:

[Manufacturer]

%MfgName%=Microsoft

在Strings段中可以找到%MfgName%定义的字符串,本范例中定义的是MfgName=”Intel”,表明设备制造商是Intel。而右边Microsoft也是制造商的Models段的段名。在INF中,为每个制造商的Models段规定了一个INF编写者定义的名字,这个名称要在Manufacturer段中加以应用。范例中的制造商Models段如下:

[Microsoft]

%USB\VID_045E&PID_930A.DeviceDesc%=BULKUSB.Dev,

USB\VID_045E&PID_930A

该段属于制造商的Models段,段名是由INF编写者自行定义的,不属于系统段名。每个制造商的Models段至少标识一个设备,并规定设备的厂商ID(VID)和产品ID(PID)同时引用这个设备INF文件的Install段。该段也可以规定一个或者多个附加设备ID,因为有多个与初始硬件ID所识别的设备兼容,同时由相同的驱动程序驱动。当设备管理器发现从检测设备所得到的ID,符号此段定义的ID时,设备管理器就知道找到了正确的INF文件。

范例中规定了一个设备,设备的VID是0x045E,而PID是0x930A。VID是由USB管理委员会给每个USB芯片厂商统一分配的,例如Philips公司的VID

是0x0471,Cypres公司的VID是0x0547等,范例中的VID是Intel公司的。产品ID(PID)是由各个厂商自己定义的,这里VID0x930A是Intel的一个USB批量传输的实验板。

范例中该条目等式右边的BULKUSBDev给设备标识了一个INF文件编写者定

义的Install段。

5、[DestinationDirs]段

该段为所有的硬件拷贝、删除和改名操作规定目标目录。范例中的DestinationDirs段如下:

[DestinatinDirs]

BULKUSB.Files.Ext=10,System32\Drivers

BULKUSB.Files.Inf=10.INF

DestinationDirs段中条目等式的左边规定INF文件编写者定义的段名,这些段中的文件将会被存入等式右边指定的目录中,并且这些文件可以被INF文件中其他地方的CopyFiles、RenFiles和DelFiles命令引用。例如,范例中这两个段的定义如下:

[BULKUSB.Files.Ext]

BULKUSB.sys

[BULKUSB.Files.Inf]

BULKUSB.Inf

DestinationDirs段中条目等号右边的10是一个逻辑磁盘标志符号(Logical Disk Identifier, LDID),它规定了对文件操作的目标目录标识符,后面跟随的是子目录,作为文件操作的目标地址。范例中第一个文件BULKUSB.sys的目标地址是WinNT\System32\Drivers;第二个文件BULKUSB.Inf 的目标地址是WinNT\INF。

DestinationDirs段也可以包含一个缺省目标目录DefaultDestDird的条目,为所有对文件的拷贝、删除和更名操作规定省略的目标路径,这些文件没有明确的列在其它条目所引用的文件列表中。Windows DDK的Device Information File Reference文件有其他的LDID熟知的定义,如下表。

常用LDID定义

LDID数值

目标目录

00

NULL LDID,此LDID可以用来创建新的LDID

01

源磁盘驱动器:\路径

02

临时安装文件夹,只在安装期间有效

03

解除安装目录

10

Windows目录

11

系统目录

12

IO子系统目录

13

Command目录

14

控制面板目录

15

打印机目录

16

工作类别目录

17

INF目录

18

Help目录

19

登记

20

字体

21

Viewers

22

VMM32

23

Color目录

24

应用程序目录

25

共享目录

26

WinBoot

28

主机Winboot

30

引导驱动器的根目录

31

虚拟引导驱动器的主机驱动器的根目录

5、Install段

Install段包含指导安装程序安装所需软件的实际指示。该段必须在一个设备或者型号(Model)的条目中引用。每个Models的每个Install段包括一个可选的DriverVer条目和一个或多个引用INFormation中附加命令段的命令,这些命令索引用的段包含安装驱动程序文件及向注册表写入设备专用的和驱动程序专用信息命令。这里,首先列出这个断的常用格式

[install-section-name]

[install-section-name.nt]

[install-section-name.ntx86]

[DriverVer=mm/dd/yyyy]

[CopyFiles=@filename|file-list-section]

Addreg=add-registry-section

[include=filename.inf]

……

……

首先,看到有3个可选的段名,在Windows 9x平台中,提供了一个无修饰的Install段名[install-section-name],其中规定设备的安装条目。在Windows 2000平台中,提供相应的

[install-section-name.nt]段名,如果还要限定在x86为基础的Windows 2000平台上,则提供[install-section-name.ntx86]段名。设备安装程序将搜索最合适后缀的install段,例如,假设有3个install段,第一个无后缀,后两个分别带有.NT和.NTx86后缀。如果安装到x86平台上的Windows 2000中,安装程序会使用.NTx86段;如果安装到非Intel平台上运行的Windows 2000中,安装程序将使用.NT段;如果安装到Windows 98中,安装程序使用无后缀段。DriverStudioVer条目就是前面叙述的版本信息。

☆[CopyFiles=@filename|file-list-section]:或者指定一个要从源媒体拷贝到目标设备的文件名,或者引用一个或多个INFormation编写者定义的段,其中列出了源媒体上要拷贝到目标设备的相关文件。这个命令是可选的,但是大多数的段都包括这个命令。

☆Addreg=add-registry-section:这个命令引用一个或多个INFormation

编写者定义的段,其中规定了要写入注册表的新的子键,这些新关键字可能有初始条目,在这些段中也可以修改已有关键字的值。范例中索引用的段如下: [BULKUSB.AddReg]

HKR,,DevLoader,,*ntkern

HKR,,NTMPDriver,,BULKUSB.sys

HKLM,"System\Currentcontrolset\Services\BulkUsb\Parameters","Maxi mumTransferSize",0x10001,4096

HKLM,"System\Currentcontrolset\Services\BulkUsb\Parameters","Debu gLevel",0x10001,2

HKLM是注册表的根键,它是HKEY_LOCAL_MACHINE的缩写。而HKR与注册表关键字相关,最适合于AddReg命令出现的地方。比如,注册表中每个设备的“硬件”子键:..\Enum\枚举器ID\设备ID,与此相对的注册表中每个驱动程序指定的“软件”子键:..CLASS\类GUID\设备ID等。除此之外还有HKCR、HKCU、HKLM 和HKU。

前面所举范例的Install段如下:

[BULKUSB.Dev]

CopyFiles=BULKUSB.Files.Ext, BULKUSB.Files.Inf

AddReg=BULKUSB.AddReg

[BULKUSB.Dev.NT]

CopyFiles=BULKUSB.Files.Ext, BULKUSB.Files.Inf

AddReg=BULKUSB.AddReg

所需拷贝的两个文件在INF编写者定义的BULKUSB.Files.Ext和BULKUSB.Files.Inf段中,而要添加到注册表的项目则在BULKUSB.AddReg段中。

6、Install.Service段

该段包含一个或者多个AddService命令,用以控制一个特定驱动程序的服务装在的时间按和方式,控制本服务对其他服务和下一级驱动程序的依赖等,房里中的定义如下:

BULKUSB.Dev.NT.Services]

Addservice = BULKUSB, 0x00000002, BULKUSB.AddService

其中,BULKUSB是指定的所需安装服务的名称。对于一个设备,这个值通常是该设备驱动程序的属性。0x00000002是一个系统指定的标记(Flag),不同的标记有不同的服务功能。最后一项BULKUSB.AddService是INF文件编写者定义的特定段,其中包括了所需添加的服务项目,其范例的定义如下:[BULKUSB.AddService]

DisplayName = %BULKUSB.SvcDesc%

ServiceType = 1 ; SERVICE_KERNEL_DRIVER

StartType = 3 ; SERVICE_DEMAND_START

ErrorControl = 1 ; SERVICE_ERROR_NORMAL

ServiceBinary = %10%\System32\Drivers\BULKUSB.sys

LoadOrderGroup = Base

8、[Strings]段

[Strings]段就是字符串段。该段定义了其他段内所指定的字符串,段内的每一个项目都符合一个在其他段内使用百分比符号(%)包括起来的字符串。范例中的定义如下:

[Strings]

MSFT="Microsoft"

MfgName="Intel"

USB\VID_045E&PID_930A.DeviceDesc="BulkUsb.Sys Intel 82930 USB Bulk IO Test Board"

BULKUSB.SvcDesc="BulkUsb.Sys i82930 Bulk IO test driver"

GenInf软件生成Inf文件

Windows 2000DDK提供了一个实用程序GenInf,他可以生成INF文件。GenInf 是一个INF文件生成向导工具,可以帮助用户产生一个自定义的Windows 2000驱动程序的INF文件。用户只需要按照向导的提示填写必要的信息,他就可以自动生成一个INF文件。但是,GenInf只能生成但结构的INF文件,而并不支持多结构的INF文件。另外,GenInf并不一定总是能够生成一个完成的或者功能完备的INF文件。因此,用户号必须做一些必要的修改。

用GenInf生成INF文件之后,还可以使用Windows 2000 DDK提供的ChkInf 实用程序来检查所生成的INF文件的结构和语法是否正确。ChkInf程序是一个Perl Scrip,因此,需要由Perl解释器才能运行它。检测的结果以HTML的格式保存,包括所有的错误和警告的列表。

(完整版)USB接口定义及封装

USB接口定义及封装 USB全称Universal Serial Bus(通用串行总线),在USB1.1中,所有设备只能共享1.5MB/s的带宽,USB2.0的最大传输带宽为480Mbps(即60MB/s),而USB3.0的最大传输带宽高达5.0Gbps(500MB/s)。目前USB 2.0接口分为四种类型A型、B型、Mini型还有后来补充的Micro型接口,每种接口都分插头和插座两个部分,Micro还有比较特殊的AB 兼容型,本文简要介绍这四类插头和插座的实物及结构尺寸图,如果是做设计用途,还需要参考官方最新补充或修正说明,尽管USB 3.0性能非常卓越,但由于USB 3.0规范变化较大,真正应用起来还需假以时日,不管怎样,都已经把火线逼到末路,苹果公司极其郁闷但也爱莫能助。 注意: 1、本文封装尺寸来源,USB 2.0 Specification Engineering Change Notice (Date:10/20/2000) 2、本文图片来源USB官方协议文档,由于USB 3.0在接口和线缆规范上变化较大,后面专门介绍。 3、本文未带插头封装尺寸,插头尺寸请参加官方文档ecn1-usb20-miniB-revd.pdf,下个版本USB 3.0在接口和封装上都有很大变化,本文属于USB 2.0协议内容,如果是USB 3.0设备,似乎只有A型头才能插到2.0插座中Receptacle。 1、A型USB插头(plug)和A型USB插座(receptacle)

引脚顺序(左侧为Plug,右侧为Receptacle): 引脚定义: 编号定义颜色识别 1 VBUS Red(红色) 2 D- White(白色) 3 D+ Green(绿色) 4 GND Black(黑色)封装尺寸(单PIN Receptacle):

HID 报告描述符终极解析

USB HID Report终极解析 HID的报告描述符巨难懂,关键是数据格式与每一位代表的意思。经过三天的研究,终于将HID Report的每一个数据位的含义弄清楚了,现将数据解析如下,最后附上了一个HID 通信的Report例子。以一个键盘的HID Report为例: 键盘的HID报告描述符: code char KeyBoardReportDescriptor[63] = { 0x05, 0x01, // USAGE_PAGE (Generic Desktop) 0x09, 0x06, // USAGE (Keyboard) 0xa1, 0x01, // COLLECTION (Application) 0x05, 0x07, // USAGE_PAGE (Keyboard) 0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl) 0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI) 0x15, 0x00, // LOGICAL_MINIMUM (0) 0x25, 0x01, // LOGICAL_MAXIMUM (1) 0x75, 0x01, // REPORT_SIZE (1) 0x95, 0x08, // REPORT_COUNT (8) 0x81, 0x02, // INPUT (Data,V ar,Abs) 0x95, 0x01, // REPORT_COUNT (1) 0x75, 0x08, // REPORT_SIZE (8) 0x81, 0x03, // INPUT (Cnst,V ar,Abs) 0x95, 0x05, // REPORT_COUNT (5) 0x75, 0x01, // REPORT_SIZE (1) 0x05, 0x08, // USAGE_PAGE (LEDs) 0x19, 0x01, // USAGE_MINIMUM (Num Lock) 0x29, 0x05, // USAGE_MAXIMUM (Kana) 0x91, 0x02, // OUTPUT (Data,V ar,Abs) 0x95, 0x01, // REPORT_COUNT (1) 0x75, 0x03, // REPORT_SIZE (3) 0x91, 0x03, // OUTPUT (Cnst,V ar,Abs) 0x95, 0x06, // REPORT_COUNT (6) 0x75, 0x08, // REPORT_SIZE (8) 0x15, 0x00, // LOGICAL_MINIMUM (0) 0x25, 0xFF, // LOGICAL_MAXIMUM (255) 0x05, 0x07, // USAGE_PAGE (Keyboard) 0x19, 0x00, // USAGE_MINIMUM (Reserved (no event indicated)) 0x29, 0x65, // USAGE_MAXIMUM (Keyboard Application) 0x81, 0x00, // INPUT (Data,Ary,Abs)

MDL(内存描述符表) 详解

MDL(内存描述符表)详解 分类:初学驱动2013-01-25 18:07 308人阅读评论(0) 收藏举报mdl 以下的虚拟内存可以理解成逻辑内存,因为我觉得只有这样才能讲通下面所有的东西。以下的“未分页”指没有为页进行编码。 以下为MDL结构体(我很郁闷,我在MSDN上没有找到这个结构体) typedef struct _MDL { struct _MDL *Next; //下一个MDL CSHORT Size; //大小 CSHORT MdlFlags; //标志,保护属性等 struct _EPROCESS *Process;// PVOID MappedSystemVa; PVOID StartVa; ULONG ByteCount; ULONG ByteOffset; } MDL, *PMDL; 如何使用MDL: 一个连续的虚拟内存地址范围可能是由多个分布(spread over)在不相邻的物理页所组成的。系统使用MDL(内存描述符表)结构体来表明虚拟内存缓冲区的物理页面布局。我们应该避免直接访问MDL。我们可以使用MS-Windows提供的宏,他们提供了对这个结构体基本的访问。 ·MmGetMdlVirtualAddress 获取缓冲区的虚拟内存地址 ·MmGetMdlByteCount 获取缓冲区的大小(字节数) ·MmGetMdlByteOffset 获取缓冲区开端的物理页的大小(字节数)·MmGetMdlPfnArray 获取记录物理页码的一个数组指针。 我们可以用IoAllocateMdl函数来分配一个MDL。如果要取消分配,可是使用IoFreeMdl 函数。或者,可以使用MmInitializeMdl来把一个之前定义的缓冲区定制成一个MDL。但是以上两种方式都不能初始化物理页码数组。 对于在未分页池中分配的缓冲区,可以用MmBuidlMdlForNonpagedPool函数来初始化页码数组。对于可分页的内存,虚拟内存和物理内存之间的联系是暂时的,所以MDL的页码数组只在特定的环境和时间段有效,因为很可能其他的程序对它们进行重新分配,为了使其

DDK中INF文件详解

安装一个驱动程序 一个后缀是INF的文本文件控制设备驱动程序自动的安装。INF格式类似于WIN 3.x下的老式的.INI文件,但是复杂些。一个INF文件允许自动的或者在对话框的帮助下安装驱动程序文件。 驱动程序安装结束后对系统产生两个持久的影响: 1. 描述驱动程序的系统注册表入口,它的加载顺序和任何适当的配置数据。 2. 驱动程序文件被拷贝到适当的系统路径。 INF文件是影响这些改变的标准的机制,它可以提供定制安装。 使用INF文件自动安装 INF文件随着硬件和驱动程序一起提供,INF文件的结构和内容是驱动程序作者的责任。INF文件结构 INF文件是被分(section)成几个部分的文本文件,每个部分被指定一个标识符号﹐它被中括号([])括起来﹒一些部分的命名是必须的﹐而其它部分是驱动程序特定的﹒每个部分是一 些安装动作﹐或者连接或者列举其它部分﹒ 文件中各个部分的顺序是不重要的﹐因为每个部分都是被命名和连接的﹒一个部分继续直到另一个部分或者遇到文件结束﹒每个部分的标识符号是独一无二的名字﹐为了保持与WIN98的兼容﹐它的长度被限制在28个字符之内﹐可以包含下划线和圆点字符﹐在引用整个名字的前提下﹐可以包含空格字符﹒ 文件内容的一般格式如下: entry = value [, value...] entry是指令﹐关键词或者文件名﹐value是entry被应用的属性﹒ entry或者value名字可以指定为一个使用百分号(%)的代替一些具体数据的字符串﹐分割INF文件的[Strings]提供一个特殊语言ID的值。 Version 部分 一个有效的INF文件从一个命名为[Version]的部分开始,它像一个INF文件的头和标识。 表15.1. [Version]部分的条目 Manufacturers部分

USB口接口定义

USB口接口定义 USB1.1 和 USB2.0 USB1.1是目前较为普遍的USB规范,其高速方式的传输速率为12Mbps,低速方式的传输速率为1.5Mbps(b是Bit的意思),1MB/s (兆字节/秒)=8MBPS(兆位/秒),12Mbps=1.5MB/s。目前,大部分MP3为此类接口类型。 USB2.0规范是由USB1.1规范演变而来的。它的传输速率达到了480Mbps,折算为MB为60MB/s,足以满足大多数外设的速率要求。USB 2.0中的“增强主机控制器接口”(EHCI)定义了一个与USB 1.1相兼容的架构。它可以用USB 2.0的驱动程序驱动USB 1.1设备。也就是说,所有支持USB 1.1的设备都可以直接在USB 2.0的接口上使用而不必担心兼容性问题,而且像USB 线、插头等等附件也都可以直接使用。 使用USB为打印机应用带来的变化则是速度的大幅度提升,USB接口提供了12Mbps的连接速度,相比并口速度提高达到10倍以上,在这个速度之下 打印文件传输时间大大缩减。USB 2.0标准进一步将接口速度提高到480Mbps,是普通USB速度的20倍,更大幅度降低了打印文件的传输时间。 USB是一种常用的pc接口,他只有4根线,两根电源两根信号,故信号是串行传输的,usb接口也称为串行口,usb2.0的速度可以达到 480Mbps。可以满足各种工业和民用需要. USB接口的输出电压和电流是: +5V 500mA 实际上有误差,最大不能超过+/-0.2V 也就是4.8-5.2V 。 USB接口的4根线一般是下面这样分配的:黑线:gnd 红线:vcc 绿线:data+ 白线:data- 需要注意的是千万不要把正负极弄反了,否则会烧掉usb设备或者电脑的南桥芯片 --------------------------------------------------------

USB HID设备报告描述符详解

USB HID设备报告描述符详解 概述: 报告在这里意思是数据传输(data transfer),而报告描述符是对这些传输的数据作用途(usage)上的说明。 USB通讯协议的规范是以1ms产生一个USB帧(frame),USB设备可以每一个帧中发送和接收一个交换(transaction)。交换是由几个封包(packet)组成,而传输是由一个或几个交换来完成传送一口中有效的数据。在这里,传输和报告的意思相类似。传输方式有四种,初始学一般只要了解控制型传输(control transfer)和中断型传输(interrupt transfer)即可。控制型传输是当需要时才执行传输要求,是最一般的传输方式,组态、命令和状态的通讯都可以使用控制型传输;控制型传输主要用于消息型数据(message-type data)。中断型传输目的在做重复的数据更新(recurring data)传输,精确一点而言,即是在每个有限有周期内(bounded period)作至少一次的小量数据发送或接收;所以适用于流动型数据(stream-type data),注意这里所谓的周期时间就是在端点描述符中的轮询间隔时间。报告有三种:input,output,和Feature.后面将作进一步介绍。中断型输入管线(interrupt in pipe)仅可以传送input报告;中断型输出管线(interrupt out pipe)仅可以传送output报告;但是控制型管线(control pipe)可以传送input,out put和feature报告。端点描述符有声明所使用的端点为何种管线。 数据本身没有任何意义,要赋于用途才能明确其为控制什么(control);例如设备上的按钮指示灯和X与Y轴的位移等都通称控制,数据则为按钮和指示灯的开关状态或X与Y轴的位移量。为了这个目的应运而生报告描述符,其将数据的操控与它的用途作一对一的对应,所以解读报告后就可以知道每个数据作何种操作。所以“传输的数据”和“操作”只是一事件的两种描述方式。用途是以一个32位卷标(称作usage tag)来表示,高16位称作usage page(用途类页),低16位称为usage DI(用途识别名): Usage = (usage page:usage ID) 举例说明:二个字节分别为x和y轴的位移数据,因此第一个字节的usage =(generic desktop:X),而第二个字节的usage = (generic desktop:Y),其中gen

USB INF文件详解(USB)

INF文件详解 INF文件格式要求 一个INF文件是以段组织的简单的文本文件。一些段油系统定义(System-Defined)的名称,而另一些段由INF文件的编写者命名。每个段包含特定的条目和命名,这些命名用于引用INF文件其它地方定义的附加段。 INF文件的语法规则: 1、要求的内容:在特定的INF文件中所要求的必选段和可选段、条目及命令依赖于所要安装的设备组件。端点顺序可以是任意的,大多数的INF文件安装惯用的次序来安排各个段。 2、段名:INF文件的每个段从一个括在方括号[]中的段名开始。段名可以由系统定义或INF编写者定义 在Windows 2000中,段名的最大长度为255个字符。在Windows 98中,段名不应该超过28个字符。如果INF设计要在两个平台上运行,必须遵守最小的限制。段名、条目和命令不分大小写。在一个INF文件中如果有两个以上的段有相同的名字,系统将把其条目和命令合并成一个段。每个段以另一个新段的开始或文件的结束为结束。 3、使用串标记:在INF文件中的许多值,包括INF编写者定义的段名都可以标示成%strkey%形式的标记。每个这样的strkey必须在INF文件的Strings 段中定义为一系列显示可见字符组成的值。 4、行格式、续行及注释:段中的每个条目或命令以回车或换行符结束。在条目或命令中,“\”可以没用做一个显示的续行符;分好“;”标示后面的内容是注释;可以用都好“,”分隔条目和命令中提供的多个值。 INF文件举例 下面是一个完整的.inf文件,它是Windows 2000 DDK提供的USB批量阐述驱动程序范例中所附的.inf文件。 ; Installation inf for the Intel 82930 USB Bulk IO Test Board ; ; (c) Copyright 1999 Microsoft ; [Version] Signature="$CHICAGO$" Class=USB ClassGUID={36FC9E60-C465-11CF-8056-444553540000} provider=%MSFT% DriverVer=08/05/1999 [SourceDisksNames] 1="BulkUsb Installation Disk",,, [SourceDisksFiles] BULKUSB.sys = 1 BULKUSB.inf = 1

USB HID报告描述符详解

USB 之人性化接口装置的报告描述元(1) 作者: 林锡宽 e-mail: sklin@https://www.sodocs.net/doc/1f3395902.html,.tw (原文刊于e 科技杂志vol. 30,2003 年6 月号) 关于USB 的标准描述元已经在 e 科技杂志的第24 和25 期中作了完整的介绍。有些读者来函希望能早日刊出报告描述元的介绍。人性化接口装置HID 的类别 特定描述元有三种,其中HID 描述元因为需要连接在接口描述元(标准描述元 之一)之后,所以也已经在前文介绍了。其他二个HID 类别特定描述元为报告 描述元和实体描述元。实体描述元几乎很少使用到,所以不拟介绍,虽然它不会 很复杂。本文仅专注介绍报告描述元。相对来说,报告描述元最复杂,也不容易 理解,可是却最重要,因为HID 装置与主机间的经常性数据传输都由报告描述 元来规范。因为报告描述元的复杂和难理解,使得此文的编撰花了不少时间,因 此无法在上次刊完USB 标准描述元后,接着刊出。 由于内容篇幅颇长,所以仅能分为三篇陆续刊出。本期的第一篇中仅介绍到区域 性项目,下期的第二篇再继续介绍全局性项目和主项目。这三类项目构成一个报 告描述元。最后仍需要以一个实际的范例来解说使用方法,所以第三篇文章将提 供一个实际的范例:整合鼠标的键盘装置。此外,也会将该范例的韧体程序代码提 供给有兴趣的读者。这个韧体程序代码不只是该范例的报告描述元,也含括了它的 标准描述元。 概述 报告(report)在这里意指数据传输(data transfer),而报告描述元则是对这些传输的 数据作用途(usage)的说明。 USB 通讯协议的规范是以1 毫秒产生一个USB 讯框(frame),USB 装置可以在每 一个讯框中传送和接收一个交易(transaction)。交易是由数个封包(packet)组成, 而传输是由一或数个交易来完成传递一串有意义的数据。在这里,传输和报告的 意义大同小异。传输方式有四种,初学者只要了解控制型传输(control transfer) 和中断型传输(interrupt transfer)即可。控制型传输是当需要时才执行传输要求, 是最一般的传输,组态、命令和状态的通讯都可以使用,主要用于讯息型数据(message-type data)。中断型传输目的在做重复的数据更新(recurring data)传输, 精确一点而言,即是在每个有限的周期内(bounded period)作至少一次的小量数据 传送或接收﹔所以适用于流动型数据(stream-type data),注意这里所谓的周期时

autorun-ini详解

备注: 应用程序的默认图标将在windows explorer核心的驱动显示窗口中替代设备的默认图标来显示。 图标路径名的默认目录是设备根目录。 2、Icon 含义:指定设备显示图标。 格式: Icon=图标路径名[,序号] 参数: 图标文件名:应用程序的默认图标路径名,格式可以为.ico、.bmp、.exe、.dll。当文件格式为.exe和.dll时,有时需要使用序号来指定图标。 序号:当文件格式为.exe和.dll时,文件可能包括多余一个图标,此时需要使用序号来指定图标,需要注意的是,序号是从0开始的。 备注: 设备显示图标将在windows explorer核心的驱动显示窗口中替代设备的默认图标来显示。 图标路径名的默认目录是设备根目录。 当存在应用程序默认图标(DefaultIcon)时,本命令无效。 3、Label 含义:指定设备描述 格式: Label=描述 参数: 描述:任意文字,可以包括空格。 备注: 设备描述将在windows explorer核心的驱动显示窗口中替代设备的默认描述卷标来显示。 在非windows explorer核心的驱动显示窗口中(例如右击设备选择属性)显示的仍然是设备的卷标。 4、Open 含义:指定设备启用时运行之命令行。 格式: Open=命令行 (命令行:程序路径名 [参数]) 参数: 命令行:自动运行的命令行,必须是.exe、.com、.bat文件,其他格式文件可以使用start.exe打开或使用ShellExecute命令。 备注:

命令行的起始目录是设备根目录和系统的$Path环境变量。 5、ShellExecute 含义: 指定设备启用时执行文件。(操作系统支持未知) 格式: ShellExecute=执行文件路径名 [参数] 参数: 执行文件路径名:设备启用时执行文件路径名。可以是任意格式文件。系统会调用设置的程序执行此文件。 参数:参数,根据执行文件作调整 备注: 命令行的起始目录是设备根目录和系统的$Path环境变量。 6、Shell\关键字\Command 含义: 定义设备右键菜单执行命令行。 格式: Shell\关键字\Command=命令行 (命令行:程序路径名 [参数]) 参数: 命令行:自动运行的命令行,必须是.exe、.com、.bat文件,其他格式文件可以使用start.exe打开。 备注: 命令行的起始目录是设备根目录和系统的$Path环境变量。 7、Shell\关键字 含义:定义设备右键菜单文本。 格式: Shell\关键字=文本 参数: 关键字:用以标记菜单,可以使用任何字符表示,包括空格。 文本:在右键菜单中显示的文本。可以使用任何字符,不能存在空格。 备注: 在同一Autorun.inf文件中,不同右键菜单关键字不同,相同右键菜单关键字相同。 右键菜单文本中可以使用&设定加速键,&&输出一个&。 Shell关键字Command命令Shell关键字两者缺一不可,顺序无所谓。 当不存在Open、ShellExecute与Shell命令时,设备启用时运行第一个设备右键菜单指定命令。 8、Shell

USB的描述符详解总结

USB的描述符与命令请求详解 一、描述符 1.什么是描述符 所谓描述符,就是用于描述设备特性的具有特定格式排列的一种数据组织结构。 2.描述符的作用 描述符的作用在于设备向主机汇报自己的信息、特征,主机根据这些信息从而加载相应的驱动程序。 3.描述符的分类 描述符分为三大类:标准描述符、设备类描述符、厂商描述符。 除字符串描述符可选外,任何设备都必须包含剩下的几种标准描述符。 在USB1.0中规定了5种标准的描述符: 设备描述符 配置描述符 接口描述符 端点描述符 字符串描述符 规定的设备类描述符有:集线器类描述符、人机接口类描述符。 下表是三种描述符的类型值: 4.使用的几种类 设备类DeviceClass 下表是设备类值的含义。

接口类InterfaceClass 下表是接口类值的含义。 类的交叉与独享 在描述符中,只有设备描述符和接口描述符中会有类别之分,即只有设备和接口会分 类使用,不过有些类别的使用只需经过设备或接口的区分就可彻底清楚明白,这说明在设备类别和接口类别的定义上会有共同的类别名称。而有些类别则是设备或接口独享的,下表是与使用设备相关的类别划分交叉或共享情况:

(此表也适用于标准命令Get_Descriptor中wValue域高字节的取值含义) 【说明:】在设备或接口分类上均可彻底分清使用的(Usage = Both),即在任一处描述符中定义即可的分清楚使用的类(Usage = Both)的基本类有: 02h ------------- 通信及CDC控制类; DCh ------------ 诊断设备类; EFh ------------- 混杂设备类; FFh ------------- 厂商定义的设备类。 5.标准描述符 设备描述符

USB2.0A型、B型、Mini和Micro接口定义及封装

USB2.0A型、B型、Mini和Micro接口定义及封装 USB全称Universal Serial Bus(通用串行总线),目前USB 2.0接口分为四种类型A型、B型、Mini型还有后来补充的Micro型接口,每种接口都分插头和插座两个部分,Micro还有比较特殊的AB兼容型,本文简要介绍这四类插头和插座的实物及结构尺寸图,如果是做设计用途,还需要参考官方最新补充或修正说明,尽管USB 3.0性能非常卓越,但由于USB 3.0规范变化较大,真正应用起来还需假以时日,不管怎样,都已经把火线逼到末路,苹果公司极其郁闷但也爱莫能助。 注意: 1、本文封装尺寸来源,USB 2.0 Specification Engineering Change Notice (Date:10/20/2000) 2、本文图片来源USB官方协议文档,由于USB 3.0在接口和线缆规范上变化较大,后面专门介绍。 3、本文未带插头封装尺寸,插头尺寸请参加官方文档ecn1-usb20-miniB-revd.pdf,下个版本USB 3.0在接口和封装上都有很大变化,本文属于USB 2.0协议内容,如果是USB 3.0设备,似乎只有A型头才能插到2.0插座中Receptacle。 1、A型USB插头(plug)和A型USB插座(receptacle) 引脚顺序(左侧为Plug,右侧为Receptacle):

引脚定义:

引脚顺序(左侧为Plug,右侧为Receptacle,注意箭头所指斜口向上,USB端口朝向自己): 引脚定义、封装尺寸均与A型USB引脚说明相同。 封装尺寸(单PIN Receptacle):

USB_HID设备报告描述符详解

概述 报告在这里意思是数据传输(data transfer),而报告描述符是对这些传输的数据作用途(usage)上的说明。USB通讯协议的规范是以1ms产生一个USB 帧(frame),USB设备可以每一个帧中发送和接收一个交换(transaction)。交换是由几个封包(packet)组成,而传输是由一个或几个交换来完成传送一口中有效的数据。在这里,传输和报告的意思相类似。传输方式有四种,初始学一般只要了解控制型传输(control transfer)和中断型传输(interrupt transfer)即可。控制型传输是当需要时才执行传输要求,是最一般的传输方式,组态、命令和状态的通讯都可以使用控制型传输;控制型传输主要用于消息型数据(message-type data)。中断型传输目的在做重复的数据更新(recurring data)传输,精确一点而言,即是在每个有限有周期内(bounded period)作至少一次的小量数据发送或接收;所以适用于流动型数据(stream-type data),注意这里所谓的周期时间就是在端点描述符中的轮询间隔时间。报告有三种: input,output,和Feature.后面将作进一步介绍。中断型输入管线(interrupt in pipe)仅可以传送input报告;中断型输出管线(interrupt out pipe)仅可以传送output报告;但是控制型管线(control pipe)可以传送input,output和feature报告。端点描述符有声明所使用的端点为何种管线。 数据本身没有任何意义,要赋于用途才能明确其为控制什么(control);例如设备上的按钮指示灯和X与Y轴的位移等都通称控制,数据则为按钮和指示灯的开关状态或X与Y轴的位移量。为了这个目的应运而生报告描述符,其将数据的操控与它的用途作一对一的对应,所以解读报告后就可以知道每个数据作何种操作。所以“传输的数据”和“操作”只是一事件的两种描述方式。用途是以一个32位卷标(称作usage tag)来表示,高16位称作usage page(用途类页),低16位称为usage DI(用途识别名): Usage=(usage page:usage ID) 主项目全域项目区域项目 标签代码标签代码标签代码Input0X8?Usage Page0x0?Usage0x0? 0x1? Output0x9?Logical Minimum0x1?Usage Minimum 0x2? Feature0xb?Logical Maximum0x2?Usage Maximum Physical Minimum0x3?Designator0x3?

Resin配置步骤及中文配置文件说明

为java web应用部署resin服务器简略步骤: 1 点击Run图标下面的Run configuration 或者debug图标下面的debug configuration 2 新建new launch configuration 填写Name Project MainClass 注意左侧选择未java application 参考配置: Name:test1(自己根据情况填写) Project:你的项目名字 MainClass:com.cauche.server.resin.Resin Program Argument:-conf "E:\resin-4.04\conf\resin-test1.xml" //配置文件的目录 VM argument:-Dresin.home = E:\resin-4.04 -Djava.util.logging.manager = com.cauche.log.LogManagerImpl Resin配置文件 2s

各种USB接口及其封装的定义(含电脑接口)

USB接口定义及封装及定义 内含电脑接口定义 第一代:USB 1.0/1.1的最大传输速率为12Mbps。1996年推出。 第二代:USB 2.0的最大传输速率高达480Mbps。USB 1.0/1.1与USB 2.0的接口是相互兼容的。 第三代:USB 3.0 最大传输速率5Gbps, 向下兼容USB 1.0/1.1/2.0 画PCB板的时候要知道USB的引脚排列,现整理如下,方便使用。 注:以下均为插座或插头的前视图,即将插座或插头面向自己。 USB-A型插座是用在主机上的 USB-B型插座是用在外设上的 USB A型插座和插头 USB A型插座引脚分布 USB A型插头引脚排列分布

USB B型插座和插头 USB B型插座引脚分布 USB B型插头引脚分布 USB A-B型引脚功能 引脚序号功能名典型电线颜色 1 VBUS 红 2 D- 白 3 D+ 绿 4 GND 黑 Shell Shield USB mini-B 插座和插头

USB mini-B型插座引脚分布 USB mini-B型插头引脚分布 USB mini-B型引脚功能 引脚序号功能名典型电线颜色 1 VBUS 红 2 D- 白 3 D+ 绿 4 ID 不用 5 GND 黑 Shell Shield 关于插座插头的机械尺寸请参考USB标准上的典型机械尺寸,更可靠的是以连接器生产厂的尺寸为准。 USB典型的机械尺寸可以参考下面网站。 https://www.sodocs.net/doc/1f3395902.html,/products/usb.html#usb1 这个网站给出了大部分USB插座的封装尺寸,不过设计PCB的时候最好还是先到市场上先购买合适的USB插座,再用千分尺测量这个插座引脚的间距大小,再画封装。避免封装画得不合适,因为在中国,插座可能不一定是按标准的,即使是按标准的来,也要考虑到购买的难易程度以及价格。 USB A型插座DIP直插

socket原理详解

socket原理详解 1、什么是socket 我们知道进程通信的方法有管道、命名管道、信号、消息队列、共享内存、信号量,这些方法都要求通信的两个进程位于同一个主机。但是如果通信双方不在同一个主机又该如何进行通信呢?在计算机网络中我们就学过了tcp/ip协议族,其实使用tcp/ip协议族就能达到我们想要的效果,如下图(图片来源于《tcp/ip协议详解卷一》第一章1.3) 、 图一各协议所处层次 当然,这样做固然是可以的,但是,当我们使用不同的协议进行通信时就得使用不同的接口,还得处理不同协议的各种细节,这就增加了开发的难度,软件也不易于扩展。于是UNIX BSD就发明了socket这种东西,socket屏蔽了各个协议的通信细节,使得程序员无需关注协议本身,直接使用socket提供的接口来进行互联的不同主机间的进程的通信。这就好比操作系统给我们提供了使用底层硬件功能的系统调用,通过系统调用我们可以方便的使用磁盘(文件操作),使用内存,而无需自己去进行磁盘读写,内存管理。socket其实也是一样的东西,就是提供了tcp/ip

协议的抽象,对外提供了一套接口,同过这个接口就可以统一、方便的使用tcp/ip协议的功能了。百说不如一图,看下面这个图就能明白了。 图二 socket所处层次 那么,在BSD UNIX又是如何实现这层抽象的呢?我们知道unix中万物皆文件,没错,bsd在实现上把socket设计成一种文件,然后通过虚拟文件系统的操作接口就可以访问socket,而访问socket时会调用相应的驱动程序,从而也就是使用底层协议进行通信。(vsf也就是unix提供给我们的面向对象编程,如果底层设备是磁盘,就对磁盘读写,如果底层设备是socket就使用底层协议在网中进行通信,而对外的接口都是一致的)。下面再看一下socket的结构是怎样的(图片来源于《tcp/ip协议详解卷二》章节一,1.8描述符),注意:这里的socket是一个实例化之后的socket,也就是说是一个具体的通信过程中的socket,不是指抽象的socket结构,下文还会进行解释。

USB标准接口定义

USB B型接口/引脚管脚定义图 USB公口(B型插头)外形图

到网络上有很多USB,Mini-USB接口的文章,里面很多的贴图要么不清楚(不是照片,而是手画的),要么就是错误的(按照它的标法插头都插不到插座里),考虑到USB连线和接口的广泛使用,特重新整理编辑,希望对大家有所帮助。 下面介绍的是标准USB接口定义 USB是一种常用的PC接口,只有4根线,两根电源两根信号,需要注意的是千万不要把正负极弄反了,否则会烧掉USB 设备或者电脑的南桥芯片! 其中ID脚在OTG功能中才使用。由于Mini-USB接口分Mini-A、B和AB接口。 如果你的系统仅仅是用做Slave,那么就使用B接口。 系统控制器会判断ID脚的电平判断是什么样的设备插入,如果是高电平,则是B接头插入,此时系统就做主模式(master mode) 如果ID为低,则是A接口插入,然后系统就会使用HNP对话协议来决定哪个做Master,哪个做Slave。

这些说明为技术人员总结的,仅供参考。 我们手机上一般用的都是B型Mini-USB口 下面贴一张常见的USB接口图片 从左往右依次为:miniUSB公口(A型插头)、miniUSB公口(B型插头)、USB公口(B型)、USB母口(A型插座)、USB公口(A型插头)

什么是USB 2.0接口 常用USB接口的识别及USB接口标准和作用 一、什么是USB? USB是英文Universal Serial Bus的缩写,中文含义是“通用串行总线”。它是一种应用在PC领域的新型接口技术。早在1995年,就已经有PC机带有USB接口了,但由于缺乏软件及硬件设备的支持,这些PC机的USB接口都闲置未用。1998年后,随着微软在Windows 98中内置了对USB接口的支持模块,加上USB设备的日渐增多,USB接口才逐步走进了实用阶段。 这几年,随着大量支持USB的个人电脑的普及,USB逐步成为PC机的标准接口已经是大势所趋。在主机(host)端,最新推出的PC机几乎100%支持USB;而在外设(device)端,使用USB接口的设备也与日俱增,例如数码相机、扫描仪、游戏杆、磁带和软驱、图像设备、打印机、键盘、鼠标等等。 USB设备之所以会被大量应用,主要具有以下优点: 1、可以热插拔。这就让用户在使用外接设备时,不需要重复“关机à将并口或串口电缆接上à再开机”这样的动作,而是直接在PC开机时,就可以将USB电缆插上使用。 2、携带方便。USB设备大多以“小、轻、薄”见长,对用户来说,同样20G的硬盘,USB硬盘比IDE 硬盘要轻一半的重量,在想要随身携带大量数据时,当然USB硬盘会是首要之选了。 3、标准统一。大家常见的是IDE接口的硬盘,串口的鼠标键盘,并口的打印机扫描仪,可是有了USB之后,这些应用外设统统可以用同样的标准与PC连接,这时就有了USB硬盘、USB鼠标、USB打印机,等等。 4、可以连接多个设备。USB在PC上往往具有多个接口,可以同时连接几个设备,如果接上一个有4个端口的USB HUB时,就可以再连上4个USB设备,以此类推,尽可以连下去,将你家的设备都同时连在一台PC上而不会有任何问题(注:最高可连接至127个设备)。但是,为什么又出现了USB2.0呢?它与USB1.1又有何区别?请别急,下面就会谈到了。 二、什么是USB 2.0 目前USB设备虽已被广泛应用,但比较普遍的却是USB1.1接口,它的传输速度仅为12Mbps。举个例子说,当你用USB1.1的扫描仪扫一张大小为40M的图片,需要4分钟之久。这样的速度,让用户觉得非常不方便,如果有好几张图片要扫的话,就得要有很好的耐心来等待了。 用户的需求,是促进科技发展的动力,厂商也同样认识到了这个瓶颈。这时, COMPAQ、Hewlett Packard、Intel、Lucent、Microsoft、NEC和PHILIPS这7家厂商联合制定了USB 2.0接口标准。USB 2.0将设备之间的数据传输速度增加到了480Mbps,比USB 1.1标准快40倍左右,速度的提高对于用户的最大好处就是意味着用户可以使用到更高效的外部设备,而且具有多种速度的周边设备都可以被连接到USB 2.0的线路上,而且无需担心数据传输时发生瓶颈效应。 所以,如果你用USB 2.0的扫描仪,就完全不同了,扫一张40M的图片只需半分钟左右的时间,一眨眼就过去了,效率大大提高。

更多生物Mod 说明

原帖地址:https://www.sodocs.net/doc/1f3395902.html,/thread-67619-1-1.html 本帖仅对原帖进行翻译,未对内核进行汉化,并且不提供下载地址。 由于本小组已解散,本帖日后内容将有本人不定时更新,如有信息错漏请 私信本人。 转载请注明出处!! 2013/01/23 经过一个多星期由组员空余时间工作,Mo'Creatures Mod的原帖翻译文档终于宣告完工。由于本文档经过不同翻译员共同合作,在不同时间段工作完成,难免会有错漏,希望大家谅解并提出,以便及时更正。感谢大家对HAYO汉化组的支持!

MOD中文名:更多生物MOD 版本号:4.5.1(for1.4.7) MOD英文名:DrZhark's Mo'Creatures Mod MOD原帖地址:https://www.sodocs.net/doc/1f3395902.html,/topic/81771-147-mo-creatures-v451-with-elephants-mammoths-k omodo-dragons-more-ostriches-better-jellyfish-more-fairy-horses/ MOD下载(afsddsg提供):https://www.sodocs.net/doc/1f3395902.html,/thread-71062-1-1.html MOD汉化版下载(703202511提供):https://www.sodocs.net/doc/1f3395902.html,/thread-73487-1-1.html 其他需要的文件: 1. Forge 客户端 2. GUI Api 3. CustomMobSpawner 为Minecraft升级Mod是一件非常庞大的工作。我虽然发布了本MOD但是仍然有一些Bug尚未得到修复。目前我正在解决这些问题: 已知漏洞(for1.4.7): -鱼缸BUG -一些粒子会变黑 安装方法: 1.安装Forge(解压并放进minecraft.jar内) 2.安装GUI API(解压并放进minecraft.jar内) 3.删除minecraft.jar内的META-INF文件夹 4.将MoCreatures.zip和CustomSpawner.zip放进.minecraft/mods内 声明: 这一MOD是我耗费无数时间和精力后心血的结晶。您可以无偿地进行下载,但是如果此MOD对您的游戏存档造成任何损坏我将不负任何责任。本MOD在本文之外不允许以任何方式进行散布。您不允许以“懒人包”、安装器或插件的方式进行传播本MOD。多人游戏插

USB接口定义

USB接口定义详解(图) 2010-06-23 14:14:31| 分类:默认分类| 标签:usb接口定义详解(图) |举报|字号大中小订阅 2009-03-13 14:41 USB是一种常用的pc接口,他只有4根线,两根电源两根信号,如下图.故信号是串行传输的,usb 接口也称为串行口,usb2.0的速度可以达到480Mbps。可以满足各种工业和民用需要.USB接口的输出电压和电流是:+5V 500mA 实际上有误差,最大不能超过+/-0.2V 也就是4.8-5.2V 。usb接口的4根线一般是下面这样分配的,需要注意的是千万不要把正负极弄反了,否则会烧掉usb设备或者电脑的南桥芯片:黑线:gnd 红线:vcc 绿线:data+ 白线:data-

-------------------------------------------------------- USB接口定义颜色 一般的排列方式是:红白绿黑从左到右 定义: 红色-USB电源:标有-VCC、Power、5V、5VSB字样 绿色-USB数据线:(正)-DATA+、USBD+、PD+、USBDT+ 白色-USB数据线:(负)-DATA-、USBD-、PD-、USBDT+ 黑色-地线:GND、Ground --------------------------------------------------------- 关于MINIUSB 一般MINIUSB是5芯的: 1——VCC 2——D- 3——D+ 4——ID 5——GND

mini usb的接口定义如下: 1:VCC 2:D- 3:D+ 4:id 5:GND 其中id脚在otg功能中才使用。由于mini usb接口分mini-A、B和AB接口。如果你的系统仅仅是用做slave,那么就使用B接口,在A接口中,ID脚悬空.如果是B接口,这个时候就需要使用ID脚了,系统控制器会判断ID脚的电平判断是什么样的设备插入,如果是高电平,则是B接头插入,此时系统就做主模式(master mode).如果ID为低,则是A接口插入,然后系统就会使用HNP对话协议来决定哪个做Master,哪个做slave。 OTG是On-The-Go的缩写,即OTG技术就是实现在没有Host的情况下,实现从设备间的数据传送。主要应用于各种不同的设备或移动设备间的联接,进行数据交换。 例如数码相机直接连接到打印机上,通过OTG技术,连接两台设备见的USB口,将拍出的相片立即打印出来;也可以将数码照相机中的数据,通过OTG发送到USB接口的移动硬盘上,野外操作就没有必要携带价格昂贵的存储卡,或者背一个便携电脑。 这些说明为技术人员总结的,仅供参考。 mini usb a/B接口外形图 USB接口定义:

相关主题