首页 cypress-FX2-USB驱动理解

cypress-FX2-USB驱动理解

举报
开通vip

cypress-FX2-USB驱动理解cypress-FX2-USB驱动理解 -------------------------------------------------------------------------------- ---------- 如果要开发在Windows的环境下设备的驱动程序, 需要2个文件: 1、.sys文件(2进制文件)-驱动程序设计文件 2、.inf文件(文本文件) -驱动程序安装文件(脚本文件) ----------------------------------------------------...

cypress-FX2-USB驱动理解
cypress-FX2-USB驱动理解 -------------------------------------------------------------------------------- ---------- 如果要开发在Windows的环境下设备的驱动程序, 需要2个文件: 1、.sys文件(2进制文件)-驱动程序 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 文件 2、.inf文件(文本文件) -驱动程序安装文件(脚本文件) -------------------------------------------------------------------------------- ---------- 驱动程序设计文件 - .sys文件 -------------------------------------------------------------------------------- ---------- .sys文件可以由免费的"驱动程序开发工具"Windows DDK生成。 .sys文件编写说明: 首先,在sys文件设计中,入口函数为DriverEntry(),相当于C语言中的Main()。 在驱动程序中,如果需要使用资源,例如系统中断, 可以通过Windows提供的接口访问注册 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf , 从注册表中获得空闲的硬件资源,然后进行使用。 另外,Windows是调用 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 接口,例如ReadFile()来从驱动程序中读取数据, 具体实现则要求开发人员根据设备的寄存器定义完成。 例如, A设备,读取数据时,数据保存在地址为0xA0的寄存器中, B设备,读取数据时,数据保存在地址为0xB0的寄存器中, 而当这2种设备安装在电脑上时, Windows并不管这些, 他只要调用驱动程序的ReadFile()函数, 而A设备和B设备各自的驱动程序必须完成不同的映射。 -------------------------------------------------------------------------------- ---------- 驱动程序安装文件 - .inf文件 -------------------------------------------------------------------------------- ---------- .inf文件适用于安装工作不是很复杂的情况。 含有安装一个WDM设备驱动程序需要的所有必需的信息,例如创建的注册表项。 -------------------------------------------------------------------------------- ---------- .inf文件详解 -------------------------------------------------------------------------------- ---------- 文件由节(Section)组成, 每个节又由很多的条目(Key=Value)组成。 .inf是一种线性的执行,不存在分支语句。 它按照节[]为单位来执行的,从某一个[Install]节开始执行, 从上到下执行该节中的条目, 如果该条目是一个节,那么就一条条执行子节中的条目,如此递归执行。 分号";"后的文字都会被视为注释。 例如: ; Installation INF for the Cypress Generic USB Driver for Windows 2000/XP -------------------------------------------------------------------------------- ---------- [Version] ;版本描述信息,主要用于版本控制。 Signature="$CHICAGO$" ;表明这个.INF文件可以用于windows 95以后的所有平台上, Class=USB ;表明了设备的类型, ;常见类型有:Display(显卡)、Modem(调制解调器)、Printer(打印设备) ClassGUID={36FC9E60-C465-11CF-8056-444553540000} ;所有的USB设备都有相同的ClassGuid,WDM靠128位的GUID来识别驱动程序 ;但是例如com1,com2则是驱动的链接名,也叫obj name,可以自己定义 provider=%CYPRESS% ;变量CYPRESS,在[Strings]节中定义了这个变量 CYPRESS="Cypress" -------------------------------------------------------------------------------- ---------- [SourceDisksNames] ;列出指明安装文件所在盘的盘符序列码、描述符、卷标号和序列号。 1=%CYUSB_INSTALL%,,, ;[SourceDisksNames]节内语句的语法为: ;disk-ordinal = disk-description, disk-label, disk-serial-number ;disk-ordinal(符序列码)-必选项,可设置为从1开始递增的整数 ;disk-description(盘描述符)-必选项,用双引号括起的“字符串”或%字符串宏%描述盘的内容或目的。 ;disk-label(盘卷标识) ;disk-serial-number未使用。 ;本例中, ;disk-description(盘描述符)采用了%字符串宏% ;变量CYUSB_INSTALL,在[Strings]节中定义了这个变量 ;CYUSB_INSTALL="Cypress Generic USB Driver Installation Disk" -------------------------------------------------------------------------------- ---------- [SourceDisksFiles] ;指定安装时使用的源文件和盘符序列码、盘描述符 CyUsb.sys = 1 CyUsb.spt = 1 ;[SourceDisksFiles]节内语句的语法为: ;file-name=disk-number[,subdir] [,file-size] ;file-name为必选项,是源盘上文件的名称。 ;disk-number是包含file-name指定文件所在源盘的"盘符序列码" ;该盘符序列码需在[SourceDisksNames]节中列出。 ;例如,从[SourceDisksNames]节中可知,盘符序列码=1, ;Subdir为可选项,指定文件所在源盘的子目录,如省略则源盘为缺省安装路径。 ;file-size为可选项,表明文件的大小,以字节为单位。 -------------------------------------------------------------------------------- ---------- [Manufacturer] %MfgName%=Cypress -------------------------------------------------------------------------------- ---------- [DestinationDirs] ;定义系统路径信息。 CyUsb.Files.Ext = 10,System32\Drivers ;INF文件会指示安装程序在安装的过程中, ;将一些文件复制到硬盘上,或者将硬盘上的一些文件删除、重命名等。 ;该节即指定了为实现上述目的的文件所在的目的路径。 ;[DestinationDirs]节内语句的语法为: ;file-list-section=LDID,[Subdir] ;LDID列表如下 ;... ;10表示windows directory ;... ;10,System32\Drivers表示安装到windows\System32\Drivers目录下 ------------------------------------------------------------------------------------------ [CyUsb.NT] ;后缀.NT表示适用于NT技术的所有Windows平台 ; CopyFiles=CyUsb.Files.Ext AddReg=CyUsb.AddReg ;指明要要复制的文件子节,用于安装,Copyfiles命令可以替换系 统正在访问的文件 ;语法:CopyFiles=cfile ;指明添加注册表的子节,等号后面的为自定义节名, ------------------------------------------------------------------------------------------ [CyUsb.NT.HW] ;Windows 2000要求的.Services以及可能.HW AddReg=CyUsb.AddReg.Guid ------------------------------------------------------------------------------------------ [CyUsb.NT.Services] Addservice = CyUsb, 0x00000002, CyUsb.AddService ------------------------------------------------------------------------------------------ [CyUsb.AddService] DisplayName = %CyUsb.SvcDesc% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 3 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %10%\System32\Drivers\CyUsb.sys LoadOrderGroup = Base ------------------------------------------------------------------------------------------ [CyUsb.AddReg] ;自定义添加注册表项的节 HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,CyUsb.sys ;语法: ;reg-root-string, [subkey], [value-name], [flags], [value] ; ;reg-root-string表示注册表的根名,有HKCR,HKR等等 ;HKR表示采用节中指定的值 ------------------------------------------------------------------------------------------ [CyUsb.Files.Ext] CyUsb.sys ------------------------------------------------------------------------------------------ [CyUsb.AddReg.Guid] HKR,,DriverGUID,,%CyUsb.GUID% ------------------------------------------------------------------------------------------ [Strings] ;这一节中定义了字符串变量, ;当某些字符串频繁地出现在INF文件中, ;为简化输入,可以在该节中定义一个字符串变量,代表该字符串出现在INF 文件中。 CYPRESS="Cypress" MfgName="Cypress" CYUSB_INSTALL="Cypress Generic USB Driver Installation Disk" VID_VVVV&PID_PPPP.DeviceDesc="Cypress Generic USB Device" CyUsb.SvcDesc="Cypress Generic USB Driver" ------------------------------------------------------------------------------------------ [Manufacturer] %MfgName%=Cypress ------------------------------------------------------------------------------------------ [Strings] CYPRESS="Cypress" MfgName="Cypress" CYUSB_INSTALL="Cypress Generic USB Driver Installation Disk" VID_VVVV&PID_PPPP.DeviceDesc="Cypress Generic USB Device" ------------------------------------------------------------------------------------------
本文档为【cypress-FX2-USB驱动理解】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_983143
暂无简介~
格式:doc
大小:25KB
软件:Word
页数:9
分类:互联网
上传时间:2017-09-28
浏览量:47