数字技术· 基于单片机的USB转并口设备的驱动程序设计钟志彬刘志国(安徽农业大学计算机应用技术专业安徽合肥 23OO36) 【摘要】本文研究并设计了基于单片机的USB转并口设备(关键词]USB ECP DriverStudio 设备驱动程序【中图分类号]TP 【文献标识码]A 1引言由于现在大多数计算机没有并行口而具有多个USB接口,因此很多并行口设备无法和计算机直接连接使用。利用基于单片机STCI1F32XE的USB转 ECP模式并行口可以连接其他ECP模式并口设备, 以达到让具有ECP接口的设备可以和没有并口的PC进行数据通信的目的。并口采用的是IEEEI284-A接口,USB接口驱动芯片采用PhiliPS 半导体公司的 PDIUSBDl2,该芯片的数据端口D0一D7接单片机的P0口,引脚WR—N、RD—N、及 、、。整个硬件电路图如图1所示。当USB 设备硬件设计完成之后,接着就必须根据硬件特点和需要完成的功能,设计出合乎产品的USB驱动程序,否则,设备将无法被PC机识别,不能正常使用。 2WDM型的USB驱动程序结构 USB设备的驱动程序是一种典型的 WDM驱动程序。WDM驱动程序是分层的。对于USB设备驱动程序来说,其驱动程序包括两个层次:设备(功能)驱动程序层和总线(底层)驱动程序层。USB底层驱动程序由操作系统提供,不要开发者自己编写,它位于USB功能驱动程序的下面,负责与实际的USB硬件打交道,实现复杂而繁琐的底层通信;USB功能驱动程序必须要由开发者编写,它不与实际的 USB硬件打交道,是把包含URB(USBRe- questBlock,USB请求块)的IRP发送到USB 底层驱动程序,来实现对USB设备信息的发送和接收。(图2)给出了USB驱动程序的结构模型。 3USB驱动开发编程环境的建立并利用该模块研究了USB 设备驱动程序的设计方法。【文章编号】1007-9416(2010)02-0029-02 开发一个WMD驱动程序,必须要搭建合适的开发环境以此来减小开发难度。对于wDM 驱动的开发,一般必须使用的软件是VC++(DriverDevel- opmentKit,驱动程序开发工具包)。但为了进一步降低开发难度,选择使用了第三方驱动开发工具一一DriverStudio。它以类的方式对DDK 进行封装,可以十分容易地利用它提供的向导来产生一个必需的驱动程序框架。般首先安装VC++,接着安装 DDK,如果需要的话,还呵以安装Windows SDK来辅助开发,最后安装DriverStu- 。因为DriverStudio的类库要使用DDK库函数,所以在安装好Driver Studio之后J必须首先要编译出一个库文件,否则会提示找不到库文件vdw—wdm. 1ib等错误。编译该库文件的步骤如下:启动VC++,找到并打开DriverStudio3. , 然后选择DriverStudio一>DDK Build Settings,在弹出的对话框中设置DDK的安装路径和运行的操作系统。然后选择莱单 Build-l>BatchBuild,要根据驱动运行的平台来选择对应的工程文件,这里选择了 X86对应的工程,正确选择之后,
基于单片机的USB转并口设备的驱动程序设计 来自淘豆网www.taodocs.com转载请标明出处.