365bet官网伴您365天开心!
当前位置: 主页 > 365bet >

USB装备依次编程接口(USBDI).PDF 6页

时间:2020-03-29 06:11来源:原创 作者:admin 点击:

  华北电力大年夜学硕士学位论文

  4.2.3USB装备依次编程接口 (USBDI)

  USB装备驱动依次在和其硬件装备停止通信时,通俗需求应用USB总线驱动

  依次接口(USBDI)oUSBDI是Window:操作系统供给的,它完成了USB数据传

  输的底层协定。USB装备驱动依次可以直接应用该接口与物理装备停止通信,而不

  思考诸如总线若何列举、数据若何传输等细节后果[261

  USBDI是WDM分层结构的一局部,它经过应用IRP(U0恳求包)办理USB

  装备驱动依次栈之间的通信。这些 IRP具有相 同的主要功用代码

  IRPeeMJINTERNAL一DEVICE_CONTROL,且其下一个I/0栈单位的IoControlCode

  代码必须被设置成为USBDI的外部IOCTL,以指明该IRP的功用。见图4-5所示

  USBDI在WDM的分层结构[271

  USB装备驱动依次

  I USBHUB.SYS ‘一

  USB主机驱动依次栈

  图4一5

  4.2.4US日2.0数据收集系统驱动依次具体完成

  基于EZ-USBFX2的二次列举的特点,我们在编制驱动依次时需编制两个:一

  个驱动依次loader.sys将在主机上编写好的固件依次在主机系统启动时下载至FX2

  的RAM中;另外一个驱动依次USBBULK.SYS为实践装置的驱动依次。其余,为实

  现在系统启动时,主动装置两次驱动依次,还需编写特别的 INF文件完成。

  CYPRESS公司供给的对EZ-USBFX2的开辟包中,包罗有驱动依次例程,从而简

  化了编写驱动的过程,我们可以在其供给例程的基础上依照需求停止修改。

  I、loader.sys

  起首我们需求将用KeilC编写好的固件依次编译连接成为Intel十六进制文件

  43

  华北电力大年夜学硕士学位论文

  经过CYPRESS公司供给的对象软件HEX2C转化成C言语格局文件,在与CYPRESS

  公司供给的完成下载固件的ezloader,。一同编译,便可掉掉落所需的下载固件的驱动

  依次loader.syso

  2,usbbulk.sys

  usbbulk.sys是实践应用的驱动依次,其功用主如果完成高速USB的块传输功

  能。在头文件usbdriver.h中,我们添加了块传输的结构和工OCTL代码的定义,其

  中,BULKTRANSFERCONTROL用于控制块传输,IOCTLEZUSBBULKREAD

  用于主机读取USB装备收回的块数据。其结构定义以下:

  typedefstruct一ULK一TRANSFER-CONTROL

  {

  ULONGpipcNum;

  }BULK-TRANSFER-CONTROL,*PBULK-TRANSFE凡CONTROL;

  //以上为控制块传输结构定义

  #defineIOCTL EZUSB BULK READ

  CTL_CODE(FILE~DEVICE_UNKNOWN,\

------分隔线----------------------------